.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.petals{z-index:0;pointer-events:none;contain:strict;position:fixed;inset:0;overflow:hidden}html[data-petals=off] .petals{display:none}.petal{top:0;left:var(--x);width:var(--size);height:var(--size);opacity:var(--alpha);animation:petal-fall var(--dur) linear var(--delay) infinite;will-change:transform;position:absolute}.petal i{width:100%;height:100%;animation:petal-sway var(--sway-dur) ease-in-out infinite alternate;background:linear-gradient(135deg,#ffe1ec,#ff9ec7);border-radius:85% 0;display:block}html[data-theme=dark] .petal i{clip-path:polygon(50% 0%,62% 36%,100% 38%,70% 60%,80% 96%,50% 75%,20% 96%,30% 60%,0% 38%,38% 36%);background:linear-gradient(135deg,#fff,#ffe189);border-radius:0}@media (width<=40rem){.petal:nth-child(2n){display:none}}@keyframes petal-fall{0%{transform:translateY(-6vh)}to{transform:translate3d(var(--drift), 106vh, 0)}}@keyframes petal-sway{0%{transform:translateX(calc(var(--sway) * -1)) rotate(0deg)}to{transform:translateX(var(--sway)) rotate(calc(var(--spin) * 220deg))}}.mascot-art{display:block;overflow:visible}.mascot-char-cyber{display:none}.mascot-eyes{transform-origin:100px 116px;animation:5.2s ease-in-out infinite mascot-blink}.mascot-arm{transform-origin:128px 148px}.mascot-wave .mascot-arm{animation:.7s ease-in-out infinite alternate mascot-wave}@keyframes mascot-blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.08)}}@keyframes mascot-wave{0%{transform:rotate(-7deg)}to{transform:rotate(9deg)}}@media (prefers-reduced-motion:reduce){.mascot-eyes,.mascot-wave .mascot-arm{animation:none}}.deco-cyber{display:none}.mascot{inset-inline-end:.5rem;z-index:30;pointer-events:none;position:fixed;bottom:0}.mascot-widget{width:5.25rem;transition:transform .45s cubic-bezier(.34,1.56,.64,1),opacity .3s;position:relative}@media (width>=48rem){.mascot{inset-inline-end:1.25rem}.mascot-widget{width:7.5rem}}.mascot-body{pointer-events:auto;width:100%;filter:drop-shadow(0 6px 10px var(--shadow-soft));transition:transform .3s cubic-bezier(.34,1.56,.64,1);display:block;transform:translateY(9%)}.mascot-body:hover,.mascot-talking .mascot-body{transform:translateY(2%)}.mascot-body:active{transform:translateY(6%)scale(.97)}.mascot-bubble{bottom:calc(100% + .35rem);border:2px solid var(--border);background:var(--surface);width:max-content;max-width:min(15rem,70vw);color:var(--foreground);box-shadow:0 4px 0 0 var(--shadow);opacity:0;transform-origin:100% 100%;pointer-events:none;border-radius:1.1rem 1.1rem .3rem;padding:.5rem .9rem;font-size:.875rem;line-height:1.55;transition:opacity .25s,transform .3s cubic-bezier(.34,1.56,.64,1);position:absolute;inset-inline-end:12%;transform:translateY(.4rem)scale(.92)}.mascot-talking .mascot-bubble{opacity:1;transform:none}.mascot-close{top:0;z-index:1;border:2px solid var(--border);background:var(--surface);width:1.5rem;height:1.5rem;color:var(--muted-foreground);opacity:0;pointer-events:auto;border-radius:999px;place-items:center;font-size:.875rem;line-height:1;transition:opacity .2s;display:grid;position:absolute;inset-inline-start:-.4rem}.mascot-widget:hover .mascot-close,.mascot-talking .mascot-close,.mascot-close:focus-visible{opacity:1}.mascot-summon{bottom:.75rem;border:2px solid var(--border);background:var(--surface);width:2.25rem;height:2.25rem;color:var(--accent);box-shadow:0 3px 0 0 var(--shadow);pointer-events:auto;opacity:.75;border-radius:999px;place-items:center;transition:opacity .2s,transform .2s;display:none;position:absolute;inset-inline-end:0}.mascot-summon:hover{opacity:1;transform:translateY(-2px)rotate(-10deg)}.mascot[data-state=off] .mascot-widget{opacity:0;visibility:hidden;transform:translateY(110%)}.mascot[data-state=off] .mascot-summon{display:grid}@media print{.mascot{display:none}}@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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--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-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:var(--font-google-sans-code), ui-monospace, "PingFang SC", "Microsoft YaHei", monospace;--color-red-500:oklch(63.7% .237 25.331);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-slate-400:oklch(70.4% .04 256.788);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-xl:36rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-8xl:6rem;--text-8xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-bold:700;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-google-sans-code), ui-monospace, "PingFang SC", "Microsoft YaHei", monospace;--font-app:var(--font-google-sans-code), "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif}}@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,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}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{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}.app-prose{color:var(--tw-prose-body);max-width:65ch}.app-prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.app-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}.app-prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.app-prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.app-prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.app-prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.app-prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.app-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}.app-prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.app-prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.app-prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.app-prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.app-prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.app-prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.app-prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.app-prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.app-prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.app-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}.app-prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.app-prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.app-prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.app-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}.app-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}.app-prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.app-prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.app-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}.app-prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.app-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}.app-prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.app-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}.app-prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.app-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}.app-prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.app-prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.app-prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.app-prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.app-prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);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}.app-prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.app-prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.app-prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.app-prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.app-prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.app-prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.app-prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.app-prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.app-prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.app-prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.app-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}.app-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}.app-prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.app-prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.app-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}.app-prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.app-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}.app-prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.app-prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.app-prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.app-prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.app-prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.app-prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.app-prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.app-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}.app-prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.app-prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.app-prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.app-prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.app-prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.app-prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.app-prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.app-prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.app-prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.app-prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.app-prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.app-prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.app-prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.app-prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.app-prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.app-prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.app-prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.app-prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.app-prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.app-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}.app-prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.app-prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.app-prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.app-prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.app-prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.app-prose{max-width:none;font-size:1.0625rem;line-height:1.9}.app-prose h1,.app-prose h2,.app-prose h3,.app-prose h4,.app-prose th{color:var(--foreground)}.app-prose h1,.app-prose h2,.app-prose h3,.app-prose h4{font-family:var(--font-display);letter-spacing:.02em;font-weight:700}.app-prose h2{margin-top:calc(var(--spacing) * 10);margin-bottom:calc(var(--spacing) * 4);padding-bottom:calc(var(--spacing) * 2);font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height));border-bottom:2px dashed var(--border);padding-inline-start:1.1rem;position:relative}.app-prose h2:before{content:"";background:linear-gradient(var(--sakura), var(--sky));inset-inline-start:0;border-radius:999px;width:.5rem;height:1.1em;position:absolute;top:.3em}.app-prose h3{margin-top:calc(var(--spacing) * 8);margin-bottom:calc(var(--spacing) * 3);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.app-prose h3:before{content:"";background:var(--sky);vertical-align:.12em;border-radius:999px;width:.5em;height:.5em;margin-inline-end:.45em;display:inline-block}.app-prose h4{margin-top:calc(var(--spacing) * 6);margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.app-prose p,.app-prose ol,.app-prose ul,.app-prose figcaption,.app-prose table,.app-prose code{color:var(--foreground)}.app-prose strong{color:var(--foreground);background-image:linear-gradient(transparent 62%, var(--lemon) 62%);font-weight:700}@supports (color:color-mix(in lab, red, red)){.app-prose strong{background-image:linear-gradient(transparent 62%, color-mix(in oklab, var(--lemon) 65%, transparent) 62%)}}.app-prose strong{padding-inline:.1em}.app-prose a{overflow-wrap:break-word;color:var(--accent)}.app-prose a:focus-visible{text-decoration-line:none}.app-prose a{text-decoration-line:underline;text-decoration-thickness:2px;-webkit-text-decoration-color:var(--sakura);-webkit-text-decoration-color:var(--sakura);text-decoration-color:var(--sakura);font-weight:600}@supports (color:color-mix(in lab, red, red)){.app-prose a{-webkit-text-decoration-color:color-mix(in oklab, var(--sakura) 70%, transparent);-webkit-text-decoration-color:color-mix(in oklab, var(--sakura) 70%, transparent);text-decoration-color:color-mix(in oklab, var(--sakura) 70%, transparent)}}.app-prose a{text-underline-offset:4px;border-radius:.3em;transition:background-color .2s}.app-prose a:hover{background:var(--muted)}.app-prose .heading-link{color:var(--muted-foreground);font-family:var(--font-app);background:0 0;text-decoration-line:none}.app-prose ul{overflow-x:clip}.app-prose li ::marker,.app-prose li::marker{color:var(--accent)}.app-prose li ::-webkit-details-marker{color:var(--accent)}.app-prose li::-webkit-details-marker{color:var(--accent)}.app-prose hr{margin-block:calc(var(--spacing) * 10);text-align:center;border:0}.app-prose hr:after{content:"✿  ✿  ✿";color:var(--sakura);letter-spacing:.4em;font-size:1rem}.app-prose img{border-radius:var(--radius-2xl);border-style:var(--tw-border-style);border-width:2px;border-color:var(--border);margin-inline:auto}.app-prose img[role=button]{cursor:zoom-in}.app-prose img[role=button]:focus-visible{outline-style:var(--tw-outline-style);outline-offset:2px;--tw-outline-style:dashed;outline-width:2px;outline-style:dashed}.app-prose figcaption{text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted-foreground)}.app-prose table th,.app-prose table td{border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);padding:calc(var(--spacing) * 2)}.app-prose table th{background-color:var(--muted);padding-block:calc(var(--spacing) * 1.5)}.app-prose code{border-radius:var(--radius-md);background-color:var(--muted);padding-inline:calc(var(--spacing) * 1.5);padding-block:calc(var(--spacing) * .5);overflow-wrap:break-word;color:var(--accent)}.app-prose code:before,.app-prose code:after{content:var(--tw-content);--tw-content:none;content:none}.app-prose code{font-family:var(--font-mono);font-size:.875em;font-weight:500}.app-prose .astro-code code{background-color:inherit;color:inherit;flex:1 0 100%;padding:0;font-size:.875rem}.app-prose blockquote:not(.callout){overflow-wrap:break-word;color:var(--foreground);border:2px dashed var(--sky);margin-block:1.5rem;padding:.25rem 1.25rem}@supports (color:color-mix(in lab, red, red)){.app-prose blockquote:not(.callout){border:2px dashed color-mix(in oklab, var(--sky) 70%, transparent)}}.app-prose blockquote:not(.callout){background:var(--sky);border-radius:1.25rem}@supports (color:color-mix(in lab, red, red)){.app-prose blockquote:not(.callout){background:color-mix(in oklab, var(--sky) 12%, var(--surface))}}.app-prose blockquote:not(.callout){quotes:none;font-style:normal;font-weight:400}.app-prose blockquote:not(.callout) p:before,.app-prose blockquote:not(.callout) p:after{content:none}.app-prose .callout{border-radius:1.25rem;overflow:hidden}.app-prose details:not(.callout){cursor:pointer;color:var(--foreground);user-select:none;border:2px solid var(--border);background:var(--muted);border-radius:1.25rem;width:fit-content;max-width:100%;padding:.6rem 1.1rem;display:block}.app-prose details:not(.callout) ul{margin-block:var(--spacing)!important}.app-prose details:not(.callout) p{display:none}.app-prose details:not(.callout) a{font-weight:500}.app-prose summary:focus-visible{outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--accent);--tw-outline-style:dashed;outline-style:dashed;text-decoration-line:none}.app-prose summary{font-family:var(--font-display);font-weight:700}.app-prose pre{border-radius:var(--radius-2xl)}.app-prose pre:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px;outline-color:var(--accent);--tw-outline-style:dashed;outline-style:dashed}.app-prose pre{padding:1.1rem 1.25rem}.astro-code{border-style:var(--tw-border-style);border-width:2px;border-color:var(--border);background-color:var(--shiki-light-bg);color:var(--shiki-light);display:flex}.astro-code span{color:var(--shiki-light)}html[data-theme=dark] .astro-code,html[data-theme=cyber] .astro-code{background-color:var(--shiki-dark-bg);color:var(--shiki-dark)}:is(html[data-theme=dark] .astro-code,html[data-theme=cyber] .astro-code) span{color:var(--shiki-dark)}.astro-code .line.diff.add{background-color:#05df7233;width:100%;display:inline-block;position:relative}@supports (color:color-mix(in lab, red, red)){.astro-code .line.diff.add{background-color:color-mix(in oklab, var(--color-green-400) 20%, transparent)}}.astro-code .line.diff.add:before{content:var(--tw-content);content:var(--tw-content);left:calc(var(--spacing) * -3);content:var(--tw-content);color:var(--color-green-500);--tw-content:"+";content:var(--tw-content);position:absolute}.astro-code .line.diff.remove{background-color:#fb2c3633;width:100%;display:inline-block;position:relative}@supports (color:color-mix(in lab, red, red)){.astro-code .line.diff.remove{background-color:color-mix(in oklab, var(--color-red-500) 20%, transparent)}}.astro-code .line.diff.remove:before{content:var(--tw-content);content:var(--tw-content);left:calc(var(--spacing) * -3);content:var(--tw-content);color:var(--color-red-500);--tw-content:"-";content:var(--tw-content);position:absolute}.astro-code .line.highlighted{background-color:#90a1b933;width:100%;display:inline-block}@supports (color:color-mix(in lab, red, red)){.astro-code .line.highlighted{background-color:color-mix(in oklab, var(--color-slate-400) 20%, transparent)}}.astro-code .highlighted-word{border-radius:var(--radius-sm);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);padding-inline:calc(var(--spacing) * .5);padding-block:1px}*{border-color:var(--border);outline-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--accent) 75%, transparent)}}*{scrollbar-width:auto;scrollbar-color:var(--sakura) transparent}html{scroll-padding-top:6rem}body{line-height:1.75}a,button{outline-offset:2px;outline-color:var(--accent)}:is(a,button):focus-visible{outline-style:var(--tw-outline-style);--tw-outline-style:dashed;outline-width:2px;outline-style:dashed;text-decoration-line:none}button:not(:disabled),[role=button]:not(:disabled){cursor:pointer}::selection{background:var(--sakura)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in oklab, var(--sakura) 55%, transparent)}}::selection{color:var(--foreground)}}@layer components{.sticker{z-index:1;background:var(--surface);border:2px solid var(--border);box-shadow:0 5px 0 0 var(--shadow), 0 20px 30px -20px var(--shadow-soft);border-radius:1.5rem;position:relative}.sticker-hover{transition:transform .28s cubic-bezier(.34,1.56,.64,1),box-shadow .28s,border-color .28s}.sticker-hover:hover,.sticker-hover:focus-within{border-color:var(--tone);box-shadow:0 9px 0 0 var(--shadow), 0 26px 34px -20px var(--shadow-soft);transform:translateY(-4px)rotate(-.4deg)}.chip{border:1.5px solid var(--tone);border-radius:999px;align-items:center;gap:.3em;padding:.1em .75em;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.chip{border:1.5px solid color-mix(in oklab, var(--tone) 60%, transparent)}}.chip{background:var(--tone-soft);color:var(--tone-ink);white-space:nowrap;font-size:.8125rem;font-weight:700;line-height:1.7}a.chip,button.chip{transition:transform .2s cubic-bezier(.34,1.56,.64,1),background-color .2s}a.chip:hover,button.chip:hover{background:var(--tone);transform:translateY(-2px)rotate(-2deg)}@supports (color:color-mix(in lab, red, red)){a.chip:hover,button.chip:hover{background:color-mix(in oklab, var(--tone) 35%, var(--surface))}}.chip[aria-pressed=true],.chip[aria-current=page]{background:var(--tone);border-color:var(--tone);color:#4b3a57}.btn{border:2px solid var(--tone);border-radius:999px;justify-content:center;align-items:center;gap:.4em;padding:.5em 1.3em;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.btn{border:2px solid color-mix(in oklab, var(--tone) 70%, #4b3a57)}}.btn{background:var(--tone);color:#4b3a57;font-family:var(--font-display);box-shadow:0 4px 0 0 var(--tone);font-size:1.0625rem;font-weight:700;line-height:1.5}@supports (color:color-mix(in lab, red, red)){.btn{box-shadow:0 4px 0 0 color-mix(in oklab, var(--tone) 70%, #4b3a57)}}.btn{transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s}.btn:hover{box-shadow:0 6px 0 0 var(--tone);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.btn:hover{box-shadow:0 6px 0 0 color-mix(in oklab, var(--tone) 70%, #4b3a57)}}.btn:active{box-shadow:0 1px 0 0 var(--tone);transform:translateY(3px)}@supports (color:color-mix(in lab, red, red)){.btn:active{box-shadow:0 1px 0 0 color-mix(in oklab, var(--tone) 70%, #4b3a57)}}.btn-ghost{background:var(--surface);color:var(--foreground);border-color:var(--border);box-shadow:0 4px 0 0 var(--shadow)}.btn-ghost:hover{box-shadow:0 6px 0 0 var(--shadow)}.btn-ghost:active{box-shadow:0 1px 0 0 var(--shadow)}.btn[aria-disabled=true]{opacity:.45;pointer-events:none}.icon-btn{width:2.5rem;height:2.5rem;color:var(--foreground);border-radius:999px;flex:none;place-items:center;transition:background-color .2s,color .2s,transform .2s cubic-bezier(.34,1.56,.64,1);display:grid;position:relative}.icon-btn:hover{background:var(--tone-soft);color:var(--tone-ink);transform:rotate(-8deg)scale(1.08)}.icon-btn[aria-current=page],.icon-btn[aria-pressed=true]{background:var(--tone-soft);color:var(--tone-ink)}.marker{background-image:linear-gradient(transparent 62%, var(--tone) 62%)}@supports (color:color-mix(in lab, red, red)){.marker{background-image:linear-gradient(transparent 62%, color-mix(in oklab, var(--tone) 55%, transparent) 62%)}}.marker{background-repeat:no-repeat;border-radius:.2em;padding-inline:.15em}.dash-divider{border:0;border-top:2px dashed var(--border)}}@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.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}.sticky{position:sticky}.-inset-0\.5{inset:calc(var(--spacing) * -.5)}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-s-4{inset-inline-start:calc(var(--spacing) * 4)}.inset-s-16{inset-inline-start:calc(var(--spacing) * 16)}.end-4{inset-inline-end:calc(var(--spacing) * 4)}.-top-3{top:calc(var(--spacing) * -3)}.-top-6{top:calc(var(--spacing) * -6)}.-top-full{top:-100%}.top-\(--file-name-offset\){top:var(--file-name-offset)}.top-0{top:0}.top-3{top:calc(var(--spacing) * 3)}.top-4{top:calc(var(--spacing) * 4)}.bottom-6{bottom:calc(var(--spacing) * 6)}.left-0{left:0}.left-2{left:calc(var(--spacing) * 2)}.-z-10{z-index:calc(10 * -1)}.z-10{z-index:10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.app-layout{width:100%;max-width:52rem;padding-inline:calc(var(--spacing) * 4);margin-inline:auto}.wide-layout{width:100%;max-width:var(--container-6xl);padding-inline:calc(var(--spacing) * 4);margin-inline:auto}.my-5{margin-block:calc(var(--spacing) * 5)}.my-8{margin-block:calc(var(--spacing) * 8)}.ms-1{margin-inline-start:var(--spacing)}.ms-1\.5{margin-inline-start:calc(var(--spacing) * 1.5)}.ms-2{margin-inline-start:calc(var(--spacing) * 2)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-auto{margin-top:auto}.-mb-6{margin-bottom:calc(var(--spacing) * -6)}.mb-1{margin-bottom:var(--spacing)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-7{margin-bottom:calc(var(--spacing) * 7)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-5\.5{width:calc(var(--spacing) * 5.5);height:calc(var(--spacing) * 5.5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-9\!{width:calc(var(--spacing) * 9)!important;height:calc(var(--spacing) * 9)!important}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-full{height:100%}.max-h-\[90dvh\]{max-height:90dvh}.min-h-svh{min-height:100svh}.w-0{width:0}.w-40{width:calc(var(--spacing) * 40)}.w-full{width:100%}.max-w-\[90dvw\]{max-width:90dvw}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:0}.flex-1{flex:1}.flex-none{flex:none}.translate-y-0{--tw-translate-y:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-14{--tw-translate-y:calc(var(--spacing) * 14);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.pop-in{opacity:0;animation:.6s cubic-bezier(.34,1.4,.64,1) forwards pop-in}.floaty{animation:4.5s ease-in-out infinite floaty}.spin-slow{animation:14s linear infinite spin-slow}.twinkle{animation:2.8s ease-in-out infinite twinkle}.cursor-default{cursor:default}.cursor-zoom-out{cursor:zoom-out}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.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}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.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-5{gap:calc(var(--spacing) * 5)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-1\.5{column-gap:calc(var(--spacing) * 1.5)}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-1{row-gap:var(--spacing)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-scroll{overflow-y:scroll}.scroll-smooth{scroll-behavior:smooth}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-e-full{border-start-end-radius:3.40282e38px;border-end-end-radius:3.40282e38px}.rounded-t-md{border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.rounded-tl-none{border-top-left-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-border{border-color:var(--border)}.bg-background{background-color:var(--background)}.bg-black{background-color:var(--color-black)}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab, red, red)){.bg-black\/70{background-color:color-mix(in oklab, var(--color-black) 70%, transparent)}}.bg-muted,.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-surface,.bg-surface\/70{background-color:var(--surface)}@supports (color:color-mix(in lab, red, red)){.bg-surface\/70{background-color:color-mix(in oklab, var(--surface) 70%, transparent)}}.bg-tone-soft{background-color:var(--tone-soft)}.bg-transparent{background-color:#0000}.bg-linear-to-r{--tw-gradient-position:to right}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-r{--tw-gradient-position:to right in oklab}}.bg-linear-to-r{background-image:linear-gradient(var(--tw-gradient-stops))}.from-sakura{--tw-gradient-from:var(--sakura);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-lavender{--tw-gradient-via:var(--lavender);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-sky{--tw-gradient-to:var(--sky);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.fill-transparent{fill:#0000}.stroke-current{stroke:currentColor}.stroke-2{stroke-width:2px}.object-contain{object-fit:contain}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-4\!{padding-inline:calc(var(--spacing) * 4)!important}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-0\.5\!{padding-block:calc(var(--spacing) * .5)!important}.py-1{padding-block:var(--spacing)}.py-1\!{padding-block:var(--spacing)!important}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-10{padding-block:calc(var(--spacing) * 10)}.ps-1\.5\!{padding-inline-start:calc(var(--spacing) * 1.5)!important}.pt-8{padding-top:calc(var(--spacing) * 8)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-end{text-align:end}.font-display{font-family:var(--font-display);font-weight:700}.font-app{font-family:var(--font-google-sans-code), "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-8xl{font-size:var(--text-8xl);line-height:var(--tw-leading,var(--text-8xl--line-height))}.text-base\!{font-size:var(--text-base)!important;line-height:var(--tw-leading,var(--text-base--line-height))!important}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-sm\!{font-size:var(--text-sm)!important;line-height:var(--tw-leading,var(--text-sm--line-height))!important}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.9375rem\]{font-size:.9375rem}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.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)}.break-all{word-break:break-all}.text-accent{color:var(--accent)}.text-foreground{color:var(--foreground)}.text-lemon{color:var(--lemon)}.text-muted-foreground{color:var(--muted-foreground)}.text-sakura{color:var(--sakura)}.text-sky{color:var(--sky)}.text-tone{color:var(--tone)}.text-tone-ink{color:var(--tone-ink)}.text-white{color:var(--color-white)}.italic{font-style:italic}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-100{opacity:1}.shadow-\[0_4px_0_0_var\(--shadow\)\]{--tw-shadow:0 4px 0 0 var(--tw-shadow-color,var(--shadow));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));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{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,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.select-none{user-select:none}@media (hover:hover){.group-hover\:rotate-\[72deg\]:is(:where(.group):hover *){rotate:72deg}.group-hover\:text-accent:is(:where(.group):hover *){color:var(--accent)}}.selection\:bg-accent\/75 ::selection{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.selection\:bg-accent\/75 ::selection{background-color:color-mix(in oklab, var(--accent) 75%, transparent)}}.selection\:bg-accent\/75::selection{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.selection\:bg-accent\/75::selection{background-color:color-mix(in oklab, var(--accent) 75%, transparent)}}.selection\:text-accent-foreground ::selection,.selection\:text-accent-foreground::selection{color:var(--accent-foreground)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:top-\[45\%\]:before{content:var(--tw-content);top:45%}.before\:left-2:before{content:var(--tw-content);left:calc(var(--spacing) * 2)}.before\:inline-block:before{content:var(--tw-content);display:inline-block}.before\:size-1:before{content:var(--tw-content);width:var(--spacing);height:var(--spacing)}.before\:rounded-full:before{content:var(--tw-content);border-radius:3.40282e38px}.before\:bg-green-500:before{content:var(--tw-content);background-color:var(--color-green-500)}@media (hover:hover){.hover\:text-accent:hover{color:var(--accent)}}.focus\:top-4:focus{top:calc(var(--spacing) * 4)}.focus-visible\:no-underline:focus-visible{text-decoration-line:none}@media (prefers-reduced-motion:reduce){.motion-reduce\:transition-none{transition-property:none}}@media (width>=40rem){.sm\:col-start-2{grid-column-start:2}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-between{justify-content:space-between}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:px-11{padding-inline:calc(var(--spacing) * 11)}.sm\:py-9{padding-block:calc(var(--spacing) * 9)}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}}@media (width>=48rem){.md\:not-sr-only{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.md\:static{position:static}.md\:inset-s-auto{inset-inline-start:auto}.md\:hidden{display:none}.md\:h-9{height:calc(var(--spacing) * 9)}.md\:w-fit{width:fit-content}.md\:translate-y-0\!{--tw-translate-y:0!important;translate:var(--tw-translate-x) var(--tw-translate-y)!important}.md\:px-4{padding-inline:calc(var(--spacing) * 4)}.md\:opacity-0{opacity:0}.md\:opacity-100\!{opacity:1!important}.md\:shadow-\[0_3px_0_0_var\(--shadow\)\]{--tw-shadow:0 3px 0 0 var(--tw-shadow-color,var(--shadow));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (hover:hover){.md\:group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.md\:focus\:opacity-100:focus{opacity:1}}@media (width>=64rem){.lg\:grid-cols-\[minmax\(0\,1fr\)_19rem\]{grid-template-columns:minmax(0,1fr) 19rem}}.rtl\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *){rotate:180deg}.\[\&_table\]\:my-0 table{margin-block:0}.\[\&_table\]\:min-w-xl table{min-width:var(--container-xl)}.\[\&_tbody_tr\]\:odd\:bg-muted\/25 tbody tr:nth-child(odd){background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.\[\&_tbody_tr\]\:odd\:bg-muted\/25 tbody tr:nth-child(odd){background-color:color-mix(in oklab, var(--muted) 25%, transparent)}}.\[\&_td\]\:border-0 td,.\[\&_th\]\:border-0 th{border-style:var(--tw-border-style);border-width:0}}:root{--font-display:var(--font-app)}:root,[data-theme=light]{--background:#fff5f9;--surface:#fff;--foreground:#4b3a57;--accent:#c8286f;--accent-foreground:#fff;--muted:#ffeaf3;--muted-foreground:#735d7c;--border:#ffd0e2;--sakura:#ff9ec7;--sky:#7ccbf9;--lemon:#ffd45e;--mint:#86e0c3;--lavender:#b9a3ff;--shadow:#ffc3db;--shadow-soft:#ff8fba59;--outline:#6b4a6e;--tone:var(--sakura);--tone-soft:#ffeaf3;--tone-ink:#c8286f;color-scheme:light}[data-theme=dark]{--background:#19152d;--surface:#241e40;--foreground:#f3ecff;--accent:#ff9fcb;--accent-foreground:#2a1230;--muted:#2e2750;--muted-foreground:#b5a9d9;--border:#453b73;--sakura:#ff9fcb;--sky:#8ad4ff;--lemon:#ffe189;--mint:#92ecd0;--lavender:#c2b0ff;--shadow:#110d22;--shadow-soft:#08051899;--outline:#4a3560;--tone:var(--sakura);--tone-soft:#3a2850;--tone-ink:#ffb3d6;color-scheme:dark}[data-theme=cyber]{--background:#07060f;--surface:#0f0d1f;--foreground:#e6e9ff;--accent:#00f0ff;--accent-foreground:#05040c;--muted:#171430;--muted-foreground:#9aa0c8;--border:#2b2a5a;--sakura:#ff2bd6;--sky:#00f0ff;--lemon:#fcee0a;--mint:#39ff9c;--lavender:#9d7bff;--shadow:#03020a;--shadow-soft:#00f0ff38;--outline:#0a0818;--tone:var(--sky);--tone-soft:#0b2a3a;--tone-ink:#5ff6ff;color-scheme:dark}.tone-pink{--tone:var(--sakura);--tone-soft:#ffeaf3;--tone-ink:#c8286f}.tone-sky{--tone:var(--sky);--tone-soft:#e3f4ff;--tone-ink:#156a9f}.tone-lemon{--tone:var(--lemon);--tone-soft:#fff4cf;--tone-ink:#7d5a00}.tone-mint{--tone:var(--mint);--tone-soft:#e0f8f0;--tone-ink:#0e6e5b}.tone-lavender{--tone:var(--lavender);--tone-soft:#efeaff;--tone-ink:#6347c7}[data-theme=dark] .tone-pink,[data-theme=dark].tone-pink{--tone-soft:#3a2850;--tone-ink:#ffb3d6}[data-theme=dark] .tone-sky{--tone-soft:#23365a;--tone-ink:#9ddcff}[data-theme=dark] .tone-lemon{--tone-soft:#3d3540;--tone-ink:#ffe189}[data-theme=dark] .tone-mint{--tone-soft:#233d4c;--tone-ink:#9aeed4}[data-theme=dark] .tone-lavender{--tone-soft:#322c5e;--tone-ink:#cdbdff}[data-theme=cyber] .tone-pink,[data-theme=cyber].tone-pink{--tone-soft:#33103f;--tone-ink:#ff7ce6}[data-theme=cyber] .tone-sky{--tone-soft:#0b2a3a;--tone-ink:#5ff6ff}[data-theme=cyber] .tone-lemon{--tone-soft:#2e2b0c;--tone-ink:#fcee0a}[data-theme=cyber] .tone-mint{--tone-soft:#0c2f26;--tone-ink:#6dffb8}[data-theme=cyber] .tone-lavender{--tone-soft:#221a4d;--tone-ink:#bca6ff}html[data-theme=cyber] body:before{background-image:radial-gradient(46rem 30rem at 0 0,#ff2bd629,#0000 68%),radial-gradient(42rem 30rem at 100% 4%,#00f0ff24,#0000 66%),radial-gradient(50rem 32rem at 50% 110%,#9d7bff33,#0000 66%)}html[data-theme=cyber] body:after{opacity:1;background-image:linear-gradient(#00f0ff0e 1px,#0000 1px),linear-gradient(90deg,#00f0ff0e 1px,#0000 1px);background-size:3rem 3rem;mask-image:linear-gradient(#000,#0000 85%)}html[data-theme=cyber] [class*=rounded]:not([class*=rounded-full]){border-radius:2px}html[data-theme=cyber] .sticker{border:1px solid var(--tone)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .sticker{border:1px solid color-mix(in oklab, var(--tone) 28%, var(--border))}}html[data-theme=cyber] .sticker{background:linear-gradient(var(--tone), var(--tone)) top left / 1.1rem 2px no-repeat, linear-gradient(var(--tone), var(--tone)) top left / 2px 1.1rem no-repeat, linear-gradient(var(--tone), var(--tone)) bottom right / 1.1rem 2px no-repeat, linear-gradient(var(--tone), var(--tone)) bottom right / 2px 1.1rem no-repeat, linear-gradient(160deg, var(--tone), var(--surface) 55%);border-radius:2px}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .sticker{background:linear-gradient(var(--tone), var(--tone)) top left / 1.1rem 2px no-repeat, linear-gradient(var(--tone), var(--tone)) top left / 2px 1.1rem no-repeat, linear-gradient(var(--tone), var(--tone)) bottom right / 1.1rem 2px no-repeat, linear-gradient(var(--tone), var(--tone)) bottom right / 2px 1.1rem no-repeat, linear-gradient(160deg, color-mix(in oklab, var(--tone) 7%, var(--surface)), var(--surface) 55%)}}html[data-theme=cyber] .sticker{box-shadow:0 0 0 1px #0006, 0 18px 40px -24px var(--shadow-soft)}html[data-theme=cyber] .sticker-hover{transition:transform .2s,box-shadow .2s,border-color .2s}html[data-theme=cyber] .sticker-hover:hover,html[data-theme=cyber] .sticker-hover:focus-within{border-color:var(--tone);box-shadow:0 0 0 1px var(--tone), 0 0 28px -6px var(--tone);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .sticker-hover:hover,html[data-theme=cyber] .sticker-hover:focus-within{box-shadow:0 0 0 1px color-mix(in oklab, var(--tone) 40%, transparent), 0 0 28px -6px color-mix(in oklab, var(--tone) 70%, transparent)}}html[data-theme=cyber] .chip{border:1px solid var(--tone)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .chip{border:1px solid color-mix(in oklab, var(--tone) 55%, transparent)}}html[data-theme=cyber] .chip{letter-spacing:.04em;clip-path:polygon(0 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%);border-radius:0;font-weight:600}html[data-theme=cyber] a.chip:hover,html[data-theme=cyber] button.chip:hover{background:var(--tone);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] a.chip:hover,html[data-theme=cyber] button.chip:hover{background:color-mix(in oklab, var(--tone) 28%, var(--surface))}}html[data-theme=cyber] a.chip:hover,html[data-theme=cyber] button.chip:hover{text-shadow:0 0 10px var(--tone)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] a.chip:hover,html[data-theme=cyber] button.chip:hover{text-shadow:0 0 10px color-mix(in oklab, var(--tone) 80%, transparent)}}html[data-theme=cyber] .chip[aria-pressed=true],html[data-theme=cyber] .chip[aria-current=page]{background:var(--tone);border-color:var(--tone);color:#05040c;text-shadow:none}html[data-theme=cyber] .btn{background:var(--tone);color:#05040c;letter-spacing:.06em;box-shadow:none;clip-path:polygon(.7rem 0,100% 0,100% calc(100% - .7rem),calc(100% - .7rem) 100%,0 100%,0 .7rem);border:0;border-radius:0;padding:.55em 1.5em;transition:transform .15s,filter .15s,background-color .15s}html[data-theme=cyber] .btn:hover{filter:brightness(1.18)saturate(1.1);box-shadow:none;transform:translateY(-2px)}html[data-theme=cyber] .btn:active{box-shadow:none;transform:translateY(1px)}html[data-theme=cyber] .btn-ghost{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .btn-ghost{background:color-mix(in oklab, var(--accent) 12%, transparent)}}html[data-theme=cyber] .btn-ghost{color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}html[data-theme=cyber] .btn-ghost:hover,html[data-theme=cyber] .btn-ghost:active{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .btn-ghost:hover,html[data-theme=cyber] .btn-ghost:active{background:color-mix(in oklab, var(--accent) 24%, transparent)}}html[data-theme=cyber] .btn-ghost:hover,html[data-theme=cyber] .btn-ghost:active{box-shadow:inset 0 0 0 1px var(--accent)}html[data-theme=cyber] .icon-btn{border-radius:2px}html[data-theme=cyber] .icon-btn:hover{box-shadow:inset 0 0 0 1px var(--tone);transform:none}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .icon-btn:hover{box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--tone) 55%, transparent)}}html[data-theme=cyber] .marker{background-image:linear-gradient(transparent 90%, var(--tone) 90%);text-shadow:0 0 14px var(--tone);border-radius:0}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .marker{text-shadow:0 0 14px color-mix(in oklab, var(--tone) 55%, transparent)}}html[data-theme=cyber] .dash-divider{border-top-width:1px}html[data-theme=cyber] .nav-shell{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .nav-shell{border:1px solid color-mix(in oklab, var(--accent) 30%, var(--border))}}html[data-theme=cyber] .nav-shell{background:linear-gradient(90deg, var(--sky), var(--sakura)) bottom / 100% 2px no-repeat, var(--background);border-radius:2px}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .nav-shell{background:linear-gradient(90deg, var(--sky), var(--sakura)) bottom / 100% 2px no-repeat, color-mix(in oklab, var(--background) 80%, transparent)}}html[data-theme=cyber] .nav-shell{box-shadow:0 12px 30px -18px #00f0ff8c}html[data-theme=cyber] .nav-logo{letter-spacing:.04em;text-shadow:0 0 14px #00f0ff8c}html[data-theme=cyber] .nav-logo:hover{text-shadow:-2px 0 0 var(--sakura), 2px 0 0 var(--sky)}html[data-theme=cyber] .nav-links,html[data-theme=cyber] .theme-menu{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .nav-links,html[data-theme=cyber] .theme-menu{border:1px solid color-mix(in oklab, var(--accent) 35%, var(--border))}}html[data-theme=cyber] .nav-links,html[data-theme=cyber] .theme-menu{border-radius:2px;box-shadow:0 0 0 1px #0006,0 18px 40px -18px #00f0ff73}html[data-theme=cyber] .nav-link,html[data-theme=cyber] .theme-option,html[data-theme=cyber] .theme-swatch{border-radius:2px}html[data-theme=cyber] .nav-link:hover{transform:none}html[data-theme=cyber] .nav-link[aria-current=page]{box-shadow:inset 0 -2px 0 0 var(--tone);text-shadow:0 0 12px var(--tone);background:0 0}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .nav-link[aria-current=page]{text-shadow:0 0 12px color-mix(in oklab, var(--tone) 70%, transparent)}}@media (width>=52rem){html[data-theme=cyber] .nav-links,html[data-theme=cyber] .nav-links.open{box-shadow:none;border:0}}html[data-theme=cyber] .hero{border:1px solid var(--sakura)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .hero{border:1px solid color-mix(in oklab, var(--sakura) 45%, var(--border))}}html[data-theme=cyber] .hero{background:radial-gradient(30rem 20rem at 82% 78%,#ff2bd661,#0000 70%),linear-gradient(#0d0a26 0%,#1b0d3f 42%,#47105f 78%,#7a1466 100%);border-radius:2px;box-shadow:0 0 0 1px #00000080,0 0 60px -20px #ff2bd68c}html[data-theme=cyber] .hero-deco{display:none}html[data-theme=cyber] .hero-cyber{pointer-events:none;display:block;position:absolute;inset:0;overflow:hidden}html[data-theme=cyber] .hero-sun{aspect-ratio:1;opacity:.9;background:linear-gradient(#fcee0a 0%,#ff8a3c 36%,#ff2bd6 76%);border-radius:50%;width:17rem;position:absolute;bottom:-3.5rem;right:50%;transform:translate(50%);mask-image:linear-gradient(#000 0 46%,#0000 46% 48%,#000 48% 55%,#0000 55% 58%,#000 58% 64%,#0000 64% 68%,#000 68% 73%,#0000 73% 78%,#000 78% 82%,#0000 82% 88%,#000 88% 91%,#0000 91%)}html[data-theme=cyber] .hero-skyline{inset-inline:0;width:100%;height:58%;position:absolute;bottom:0}html[data-theme=cyber] .hero-city-far{fill:#1c1145}html[data-theme=cyber] .hero-city-near{fill:#0a0820}html[data-theme=cyber] .hero-cyber:after{content:"";background:linear-gradient(#080614b8 0 50%,#0000 78%);position:absolute;inset:0}html[data-theme=cyber] .hero-scan{z-index:1;background:repeating-linear-gradient(#0000 0 3px,#0003 3px 4px);position:absolute;inset:0}html[data-theme=cyber] .hero-scan:after{content:"";inset-inline:0;background:linear-gradient(#0000,#00f0ff12,#0000);height:22%;animation:7s linear infinite cyber-scan;position:absolute;top:0}html[data-theme=cyber] .hero-hud{z-index:1;letter-spacing:.14em;color:var(--sky);opacity:.75;text-shadow:0 0 8px #00f0ffb3;font-size:.6875rem;font-weight:600;position:absolute}html[data-theme=cyber] .hero-hud-a{top:.8rem;right:1rem}html[data-theme=cyber] .hero-hud-b{color:var(--lemon);text-shadow:0 0 8px #fcee0a99;display:none;bottom:.7rem;left:1.2rem}@media (width>=48rem){html[data-theme=cyber] .hero-sun{width:23rem;bottom:-5rem;right:.75rem;transform:none}html[data-theme=cyber] .hero-skyline{height:64%}html[data-theme=cyber] .hero-cyber:after{background:linear-gradient(90deg,#080614d1 0%,#08061480 42%,#0000 68%)}html[data-theme=cyber] .hero-hud-b{display:block}}html[data-theme=cyber] .hero-title{text-shadow:0 0 18px #00f0ff4d}html[data-theme=cyber] .hero-name{color:var(--accent);text-shadow:0 0 18px #00f0ffb3,2px 2px #ff2bd6b3;background-image:none;padding-inline:0;display:inline-block;position:relative}html[data-theme=cyber] .hero-name:before,html[data-theme=cyber] .hero-name:after{content:attr(data-text);opacity:0;text-shadow:none;pointer-events:none;position:absolute;inset:0}html[data-theme=cyber] .hero-name:before{color:var(--sakura);animation:4.2s step-end infinite cyber-glitch-a}html[data-theme=cyber] .hero-name:after{color:var(--lemon);animation:4.2s step-end infinite cyber-glitch-b}html[data-theme=cyber] .hero-desc{opacity:.9}html[data-theme=cyber] .hero-mascot{filter:drop-shadow(0 0 18px #00f0ff73)}@keyframes cyber-scan{0%{transform:translateY(-100%)}to{transform:translateY(460%)}}@keyframes cyber-glitch-a{0%,90%,to{opacity:0}91%{opacity:.9;clip-path:inset(8% 0 62%);transform:translate(-3px,-1px)}93%{opacity:.9;clip-path:inset(56% 0 10%);transform:translate(3px,1px)}95%{opacity:.9;clip-path:inset(30% 0 38%);transform:translate(-2px)}97%{opacity:0}}@keyframes cyber-glitch-b{0%,91%,to{opacity:0}92%{opacity:.8;clip-path:inset(44% 0 30%);transform:translate(3px,1px)}94%{opacity:.8;clip-path:inset(12% 0 70%);transform:translate(-3px,-1px)}96%{opacity:0}}html[data-theme=cyber] .deco-moe{display:none}html[data-theme=cyber] .deco-cyber{display:inline}html[data-theme=cyber] .crumb-sep:before{content:"//";letter-spacing:-.08em;font-weight:700}html[data-theme=cyber] .mascot-char-moe{display:none}html[data-theme=cyber] .mascot-char-cyber{display:inline}html[data-theme=cyber] .mascot-body{filter:drop-shadow(0 0 12px #00f0ff66)}html[data-theme=cyber] .mascot-bubble{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .mascot-bubble{border:1px solid color-mix(in oklab, var(--accent) 60%, var(--border))}}html[data-theme=cyber] .mascot-bubble{border-radius:2px;box-shadow:0 0 0 1px #0006,0 0 22px -6px #00f0ff99}html[data-theme=cyber] .mascot-close,html[data-theme=cyber] .mascot-summon{box-shadow:none;border-width:1px;border-radius:2px}html[data-theme=cyber] .mascot-summon:hover{transform:translateY(-2px);box-shadow:0 0 14px -2px #00f0ffb3}html[data-theme=cyber] .petal{opacity:calc(var(--alpha) * .55);animation-name:cyber-rain;animation-duration:calc(var(--dur) * .42)}html[data-theme=cyber] .petal i{width:2px;height:calc(var(--size) * 5);background:linear-gradient(to bottom, transparent, var(--sky));clip-path:none;border-radius:0;animation:none}html[data-theme=cyber] .petal:nth-child(3n) i{background:linear-gradient(to bottom, transparent, var(--sakura))}@keyframes cyber-rain{0%{transform:translateY(-12vh)}to{transform:translateY(106vh)}}html[data-theme=cyber] .post-thumb{border:1px solid var(--tone)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .post-thumb{border:1px solid color-mix(in oklab, var(--tone) 60%, transparent)}}html[data-theme=cyber] .post-thumb{background:repeating-linear-gradient(135deg, transparent 0 6px, var(--tone) 6px 7px), var(--tone-soft);border-radius:0}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .post-thumb{background:repeating-linear-gradient(135deg, transparent 0 6px, color-mix(in oklab, var(--tone) 14%, transparent) 6px 7px), var(--tone-soft)}}html[data-theme=cyber] .post-thumb{clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px))}html[data-theme=cyber] .post-thumb .post-thumb-icon{filter:drop-shadow(0 0 6px)}html[data-theme=cyber] .post-thumb .post-thumb-spark{display:none}html[data-theme=cyber] .post-card.post-card:hover .post-thumb{transform:none}html[data-theme=cyber] .site-footer:before{background:linear-gradient(90deg, transparent, var(--sky) 20%, var(--sakura) 80%, transparent);height:1px;box-shadow:0 0 14px #00f0ff99}html[data-theme=cyber] .profile-banner{background:repeating-linear-gradient(90deg,#0000 0 22px,#00000047 22px 23px),linear-gradient(120deg,#ff2bd6,#7a3cff 50%,#00f0ff)}html[data-theme=cyber] .profile-avatar{border:2px solid var(--sky);background:#1b1540;box-shadow:0 0 20px -2px #00f0ffa6}html[data-theme=cyber] .profile-avatar:hover{transform:scale(1.05)}html[data-theme=cyber] .profile-stat{border:1px solid var(--tone)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .profile-stat{border:1px solid color-mix(in oklab, var(--tone) 40%, transparent)}}html[data-theme=cyber] .profile-stat{border-radius:2px}html[data-theme=cyber] .bangumi-cover,html[data-theme=cyber] .friend-avatar{background:repeating-linear-gradient(135deg, transparent 0 6px, var(--tone) 6px 7px), var(--tone-soft);border-width:1px;border-radius:2px}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .bangumi-cover,html[data-theme=cyber] .friend-avatar{background:repeating-linear-gradient(135deg, transparent 0 6px, color-mix(in oklab, var(--tone) 14%, transparent) 6px 7px), var(--tone-soft)}}html[data-theme=cyber] .friend-card.friend-card:hover .friend-avatar{box-shadow:0 0 16px -2px var(--tone);transform:none}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .friend-card.friend-card:hover .friend-avatar{box-shadow:0 0 16px -2px color-mix(in oklab, var(--tone) 70%, transparent)}}html[data-theme=cyber] .timeline-month:before{background:var(--sky);border:0;border-radius:0;transform:rotate(45deg)scale(.8);box-shadow:0 0 10px 1px #00f0ffcc}html[data-theme=cyber] .timeline-month{border-inline-start-width:1px}html[data-theme=cyber] #pagefind-search{--pagefind-ui-border-radius:2px;--pagefind-ui-border-width:1px;--pagefind-ui-image-border-radius:2px}html[data-theme=cyber] #pagefind-search input{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] #pagefind-search input{border:1px solid color-mix(in oklab, var(--accent) 45%, var(--border))}}html[data-theme=cyber] #pagefind-search input{border-radius:2px;box-shadow:0 0 22px -10px #00f0ffb3}html[data-theme=cyber] #pagefind-search .pagefind-ui__result{border:1px solid var(--border);box-shadow:none;border-radius:2px}html[data-theme=cyber] #pagefind-search mark{background:var(--lemon);border-radius:0}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] #pagefind-search mark{background:color-mix(in oklab, var(--lemon) 30%, transparent)}}html[data-theme=cyber] #pagefind-search mark{color:var(--lemon)}html[data-theme=cyber] #pagefind-search .pagefind-ui__search-clear,html[data-theme=cyber] #pagefind-search .pagefind-ui__button{border-radius:2px}html[data-theme=cyber] .app-prose h2{border-bottom:1px solid var(--border)}html[data-theme=cyber] .app-prose h2:before{border-radius:0;transform:skew(-14deg);box-shadow:0 0 10px #00f0ff99}html[data-theme=cyber] .app-prose h3:before{border-radius:0;transform:rotate(45deg)scale(.85);box-shadow:0 0 8px #00f0ffb3}html[data-theme=cyber] .app-prose strong{color:var(--lemon);background-image:none}html[data-theme=cyber] .app-prose a{border-radius:0}html[data-theme=cyber] .app-prose hr:after{content:"//  //  //";color:var(--sky);text-shadow:0 0 10px #00f0ffb3}html[data-theme=cyber] .app-prose img{border-width:1px;border-radius:2px}html[data-theme=cyber] .app-prose :not(pre)>code{color:#ff7ce6;border-radius:2px}html[data-theme=cyber] .app-prose blockquote:not(.callout){border:1px solid var(--sky)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .app-prose blockquote:not(.callout){border:1px solid color-mix(in oklab, var(--sky) 35%, transparent)}}html[data-theme=cyber] .app-prose blockquote:not(.callout){border-inline-start:3px solid var(--sky);background:var(--sky);border-radius:0}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .app-prose blockquote:not(.callout){background:color-mix(in oklab, var(--sky) 8%, var(--surface))}}html[data-theme=cyber] .app-prose .callout,html[data-theme=cyber] .app-prose pre{border-radius:2px}html[data-theme=cyber] .app-prose details:not(.callout){border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .app-prose details:not(.callout){border:1px solid color-mix(in oklab, var(--accent) 35%, var(--border))}}html[data-theme=cyber] .app-prose details:not(.callout){border-radius:2px}html[data-theme=cyber] .astro-code{border-width:1px;border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){html[data-theme=cyber] .astro-code{border-color:color-mix(in oklab, var(--accent) 25%, var(--border))}}@media (prefers-reduced-motion:reduce){html[data-theme=cyber] .hero-scan:after,html[data-theme=cyber] .hero-name:before,html[data-theme=cyber] .hero-name:after{animation:none}}[data-callout=note]{--rc-color-light:var(--callout-note-color-light,#086ddd);--rc-color-dark:var(--callout-note-color-dark,#027aff)}[data-callout=abstract]{--rc-color-light:var(--callout-abstract-color-light,#00bfbc);--rc-color-dark:var(--callout-abstract-color-dark,#53dfdd)}[data-callout=summary]{--rc-color-light:var(--callout-summary-color-light,#00bfbc);--rc-color-dark:var(--callout-summary-color-dark,#53dfdd)}[data-callout=tldr]{--rc-color-light:var(--callout-tldr-color-light,#00bfbc);--rc-color-dark:var(--callout-tldr-color-dark,#53dfdd)}[data-callout=info]{--rc-color-light:var(--callout-info-color-light,#086ddd);--rc-color-dark:var(--callout-info-color-dark,#027aff)}[data-callout=todo]{--rc-color-light:var(--callout-todo-color-light,#086ddd);--rc-color-dark:var(--callout-todo-color-dark,#027aff)}[data-callout=tip]{--rc-color-light:var(--callout-tip-color-light,#00bfbc);--rc-color-dark:var(--callout-tip-color-dark,#53dfdd)}[data-callout=hint]{--rc-color-light:var(--callout-hint-color-light,#00bfbc);--rc-color-dark:var(--callout-hint-color-dark,#53dfdd)}[data-callout=important]{--rc-color-light:var(--callout-important-color-light,#00bfbc);--rc-color-dark:var(--callout-important-color-dark,#53dfdd)}[data-callout=success]{--rc-color-light:var(--callout-success-color-light,#08b94e);--rc-color-dark:var(--callout-success-color-dark,#44cf6e)}[data-callout=check]{--rc-color-light:var(--callout-check-color-light,#08b94e);--rc-color-dark:var(--callout-check-color-dark,#44cf6e)}[data-callout=done]{--rc-color-light:var(--callout-done-color-light,#08b94e);--rc-color-dark:var(--callout-done-color-dark,#44cf6e)}[data-callout=question]{--rc-color-light:var(--callout-question-color-light,#ec7500);--rc-color-dark:var(--callout-question-color-dark,#e9973f)}[data-callout=help]{--rc-color-light:var(--callout-help-color-light,#ec7500);--rc-color-dark:var(--callout-help-color-dark,#e9973f)}[data-callout=faq]{--rc-color-light:var(--callout-faq-color-light,#ec7500);--rc-color-dark:var(--callout-faq-color-dark,#e9973f)}[data-callout=warning]{--rc-color-light:var(--callout-warning-color-light,#ec7500);--rc-color-dark:var(--callout-warning-color-dark,#e9973f)}[data-callout=attention]{--rc-color-light:var(--callout-attention-color-light,#ec7500);--rc-color-dark:var(--callout-attention-color-dark,#e9973f)}[data-callout=caution]{--rc-color-light:var(--callout-caution-color-light,#ec7500);--rc-color-dark:var(--callout-caution-color-dark,#e9973f)}[data-callout=failure]{--rc-color-light:var(--callout-failure-color-light,#e93147);--rc-color-dark:var(--callout-failure-color-dark,#fb464c)}[data-callout=missing]{--rc-color-light:var(--callout-missing-color-light,#e93147);--rc-color-dark:var(--callout-missing-color-dark,#fb464c)}[data-callout=fail]{--rc-color-light:var(--callout-fail-color-light,#e93147);--rc-color-dark:var(--callout-fail-color-dark,#fb464c)}[data-callout=danger]{--rc-color-light:var(--callout-danger-color-light,#e93147);--rc-color-dark:var(--callout-danger-color-dark,#fb464c)}[data-callout=error]{--rc-color-light:var(--callout-error-color-light,#e93147);--rc-color-dark:var(--callout-error-color-dark,#fb464c)}[data-callout=bug]{--rc-color-light:var(--callout-bug-color-light,#e93147);--rc-color-dark:var(--callout-bug-color-dark,#fb464c)}[data-callout=example]{--rc-color-light:var(--callout-example-color-light,#7852ee);--rc-color-dark:var(--callout-example-color-dark,#a882ff)}[data-callout=quote]{--rc-color-light:var(--callout-quote-color-light,#9e9e9e);--rc-color-dark:var(--callout-quote-color-dark,#9e9e9e)}[data-callout=cite]{--rc-color-light:var(--callout-cite-color-light,#9e9e9e);--rc-color-dark:var(--callout-cite-color-dark,#9e9e9e)}.callout{--rc-color-default:#888;mix-blend-mode:darken;background-color:rgb(from var(--rc-color-light,var(--rc-color-default)) r g b / .1);border-radius:4px;width:100%;margin:1em 0;padding:12px 12px 12px 24px;line-height:1.3;overflow:hidden}.dark .callout{mix-blend-mode:lighten;background-color:rgb(from var(--rc-color-dark,var(--rc-color-default)) r g b / .1)}.callout-title{color:var(--rc-color-light,var(--rc-color-default));font-size:inherit;align-items:flex-start;gap:4px;display:flex}.dark .callout-title{color:var(--rc-color-dark,var(--rc-color-default))}.callout-title::-webkit-details-marker{display:none}.callout-title-icon{flex:none;align-items:center;display:flex}.callout-title-text{color:inherit;font-weight:600}.callout-content{background-color:#0000;padding:0;overflow-x:auto}.callout[data-collapsible=true] .callout-title{cursor:pointer}.callout[data-collapsible=true] .callout-fold-icon{align-items:center;padding-inline-end:8px;display:flex}.callout[data-collapsible=true]>.callout-title .callout-fold-icon svg{transition:transform .1s ease-in-out;transform:rotate(-90deg)}.callout[data-collapsible=true][open]>.callout-title .callout-fold-icon svg{transform:none}.callout-title-icon:after,.callout-fold-icon:after{content:"​"}.callout-title-icon svg,.callout-fold-icon svg{width:18px;height:18px}:target{scroll-margin-block:6rem}body{background-color:var(--background);position:relative}body:before,body:after{content:"";z-index:-1;pointer-events:none;position:fixed;inset:0}body:before{background-image:radial-gradient(44rem 32rem at 0% 0%, var(--sakura), transparent 68%), radial-gradient(40rem 30rem at 100% 6%, var(--sky), transparent 66%), radial-gradient(46rem 30rem at 50% 108%, var(--lavender), transparent 66%)}@supports (color:color-mix(in lab, red, red)){body:before{background-image:radial-gradient(44rem 32rem at 0% 0%, color-mix(in oklab, var(--sakura) 34%, transparent), transparent 68%), radial-gradient(40rem 30rem at 100% 6%, color-mix(in oklab, var(--sky) 30%, transparent), transparent 66%), radial-gradient(46rem 30rem at 50% 108%, color-mix(in oklab, var(--lavender) 30%, transparent), transparent 66%)}}body:after{background-image:radial-gradient(circle at center, var(--sakura) 2px, transparent 2.6px)}@supports (color:color-mix(in lab, red, red)){body:after{background-image:radial-gradient(circle at center, color-mix(in oklab, var(--sakura) 30%, transparent) 2px, transparent 2.6px)}}body:after{background-size:1.75rem 1.75rem;mask-image:linear-gradient(#000,#0000 75%)}html[data-theme=dark] body:after{opacity:.55;background-image:radial-gradient(1.6px 1.6px at 24px 34px,#fff 50%,#0000 52%),radial-gradient(1.2px 1.2px at 96px 128px,#ffe189 50%,#0000 52%),radial-gradient(1.8px 1.8px at 172px 58px,#c2b0ff 50%,#0000 52%),radial-gradient(1.2px 1.2px at 236px 190px,#fff 50%,#0000 52%),radial-gradient(2px 2px at 300px 96px,#8ad4ff 50%,#0000 52%),radial-gradient(1.2px 1.2px at 340px 220px,#ffb3d6 50%,#0000 52%);background-size:380px 260px;mask-image:none}@keyframes pop-in{0%{opacity:0;transform:translateY(1rem)scale(.97)}to{opacity:1;transform:none}}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-.5rem)}}@keyframes twinkle{0%,to{opacity:1;transform:scale(1)rotate(0)}50%{opacity:.45;transform:scale(.75)rotate(18deg)}}@keyframes spin-slow{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.pop-in,.floaty,.twinkle,.spin-slow{opacity:1!important;animation:none!important}.sticker-hover,.btn,.chip,.icon-btn{transition:none!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-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-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}.nav-shell[data-astro-cid-nen7h5rs]{border:2px solid var(--border);background:color-mix(in oklab, var(--surface) 84%, transparent);backdrop-filter:blur(14px)saturate(1.4);box-shadow:0 4px 0 0 var(--shadow), 0 16px 26px -18px var(--shadow-soft);border-radius:999px;justify-content:space-between;align-items:center;gap:.5rem;padding:.35rem .5rem .35rem 1rem;display:flex;position:relative}.nav-logo[data-astro-cid-nen7h5rs]{font-family:var(--font-display);color:var(--foreground);white-space:nowrap;flex:none;align-items:center;gap:.4rem;font-size:1.4rem;font-weight:700;line-height:1;display:inline-flex}.nav-links[data-astro-cid-nen7h5rs]{top:calc(100% + .6rem);border:2px solid var(--border);background:var(--surface);box-shadow:0 5px 0 0 var(--shadow), 0 20px 30px -20px var(--shadow-soft);border-radius:1.5rem;grid-template-columns:repeat(3,1fr);gap:.4rem;padding:.75rem;display:none;position:absolute;inset-inline:0}.nav-links[data-astro-cid-nen7h5rs].open{display:grid}.nav-link[data-astro-cid-nen7h5rs]{font-family:var(--font-display);text-align:center;white-space:nowrap;color:var(--foreground);border-radius:999px;padding:.35rem .8rem;font-size:1.0625rem;font-weight:700;transition:background-color .2s,color .2s,transform .2s cubic-bezier(.34,1.56,.64,1);display:block}.nav-link[data-astro-cid-nen7h5rs]:hover{background:var(--tone-soft);color:var(--tone-ink);transform:translateY(-2px)}.nav-link[data-astro-cid-nen7h5rs][aria-current=page]{background:var(--tone-soft);color:var(--tone-ink);box-shadow:inset 0 0 0 1.5px color-mix(in oklab, var(--tone) 60%, transparent)}.petals-btn[data-astro-cid-nen7h5rs][aria-pressed=false]{color:var(--muted-foreground);opacity:.55}.petals-btn[data-astro-cid-nen7h5rs][aria-pressed=true]{color:var(--sakura);background:0 0}.theme-picker[data-astro-cid-nen7h5rs]{display:flex;position:relative}.theme-menu[data-astro-cid-nen7h5rs]{top:calc(100% + .7rem);border:2px solid var(--border);background:var(--surface);width:max-content;box-shadow:0 5px 0 0 var(--shadow), 0 20px 30px -20px var(--shadow-soft);border-radius:1.1rem;gap:.2rem;padding:.4rem;display:grid;position:absolute;inset-inline-end:0}.theme-menu[data-astro-cid-nen7h5rs][hidden]{display:none}.theme-option[data-astro-cid-nen7h5rs]{color:var(--foreground);white-space:nowrap;border-radius:.8rem;align-items:center;gap:.6rem;padding:.4rem .9rem .4rem .5rem;font-size:.9375rem;font-weight:700;transition:background-color .2s;display:flex}.theme-option[data-astro-cid-nen7h5rs]:hover{background:var(--muted)}.theme-option[data-astro-cid-nen7h5rs][aria-pressed=true]{background:var(--tone-soft);color:var(--tone-ink)}.theme-swatch[data-astro-cid-nen7h5rs]{border:2px solid var(--border);border-radius:999px;flex:none;width:1.25rem;height:1.25rem}@media (width>=52rem){.nav-links[data-astro-cid-nen7h5rs],.nav-links[data-astro-cid-nen7h5rs].open{box-shadow:none;background:0 0;border:0;gap:.15rem;padding:0;display:flex;position:static}#menu-btn[data-astro-cid-nen7h5rs]{display:none}}.site-footer[data-astro-cid-jo6i4kqk]{--footer-bg:color-mix(in oklab, var(--surface) 72%, transparent);z-index:1;padding-top:4rem;position:relative}.site-footer[data-astro-cid-jo6i4kqk]:before{content:"";background:radial-gradient(circle at 1.1rem 1.1rem, var(--footer-bg) 1.05rem, transparent 1.1rem) center top / 2.2rem 1.1rem repeat-x;height:1.1rem;display:block}.footer-inner[data-astro-cid-jo6i4kqk]{background:var(--footer-bg);backdrop-filter:blur(8px)}@media (width>=40rem) and (width<=92rem){.footer-row[data-astro-cid-jo6i4kqk]{padding-inline-end:9rem}}
