*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.pointer-events-none{pointer-events:none}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.-bottom-px{bottom:-1px}.left-2{left:.5rem}.left-3{left:.75rem}.right-2{right:.5rem}.right-3{right:.75rem}.top-0{top:0}.top-16{top:4rem}.top-2{top:.5rem}.z-20{z-index:20}.z-30{z-index:30}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.mr-1\.5{margin-right:.375rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-32{margin-top:8rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-\[10vh\]{margin-top:10vh}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.h-1\.5{height:.375rem}.h-3\.5{height:.875rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[480px\]{height:480px}.h-full{height:100%}.h-px{height:1px}.max-h-\[60vh\]{max-height:60vh}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-max{min-width:-moz-max-content;min-width:max-content}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[85\%\]{max-width:85%}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.scroll-mt-20{scroll-margin-top:5rem}.scroll-mt-32{scroll-margin-top:8rem}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-32>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(8rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(8rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.bg-transparent{background-color:transparent}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-10{padding-bottom:2.5rem}.pb-12{padding-bottom:3rem}.pb-24{padding-bottom:6rem}.pb-4{padding-bottom:1rem}.pl-3{padding-left:.75rem}.pl-8{padding-left:2rem}.pt-0\.5{padding-top:.125rem}.pt-16{padding-top:4rem}.pt-2{padding-top:.5rem}.pt-20{padding-top:5rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:SF Mono,JetBrains Mono,Monaco,monospace}.font-serif{font-family:Noto Serif SC,Source Han Serif SC,Georgia,serif}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[17px\]{font-size:17px}.text-\[18px\]{font-size:18px}.text-\[20px\]{font-size:20px}.text-\[22px\]{font-size:22px}.text-\[24px\]{font-size:24px}.text-\[28px\]{font-size:28px}.text-\[40px\]{font-size:40px}.text-base{font-size:1rem;line-height:1.5rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-\[1\.85\]{line-height:1.85}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-wider{letter-spacing:.05em}.decoration-\[var\(--border-strong\)\]{text-decoration-color:var(--border-strong)}.underline-offset-4{text-underline-offset:4px}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.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-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-700{transition-duration:.7s}.container-wide{max-width:1280px;margin-inline:auto}.px-page{padding-left:clamp(1.5rem,5vw,4rem);padding-right:clamp(1.5rem,5vw,4rem)}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.scrollbar-hide{scrollbar-width:none;-ms-overflow-style:none}.scrollbar-hide::-webkit-scrollbar{display:none}.divide-y-soft>*+*{border-top:1px solid var(--border)}:root{--ink-0: #ffffff;--ink-50: #fafafa;--ink-100: #f5f5f4;--ink-200: #e7e5e4;--ink-300: #d6d3d1;--ink-400: #a8a29e;--ink-500: #78716c;--ink-600: #57534e;--ink-700: #44403c;--ink-800: #292524;--ink-900: #1c1917;--ink-950: #0c0a09;--bg: var(--ink-0);--bg-soft: var(--ink-50);--bg-muted: var(--ink-100);--fg: var(--ink-900);--fg-soft: var(--ink-700);--fg-muted: var(--ink-500);--fg-faint: var(--ink-400);--border: var(--ink-200);--border-strong: var(--ink-300);--glow-1: #6366f1;--glow-2: #8b5cf6;--glow-3: #06b6d4;--glow-soft: rgba(99, 102, 241, .08);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-serif: "Noto Serif SC", "Source Han Serif SC", Georgia, "Times New Roman", serif;--font-mono: "SF Mono", "JetBrains Mono", Monaco, Consolas, monospace;--td-brand-color: var(--glow-1);--td-brand-color-hover: var(--glow-2);--td-brand-color-active: #4f46e5;--td-brand-color-light: var(--glow-soft);--td-bg-color-page: var(--bg);--td-bg-color-container: var(--bg-soft);--td-bg-color-container-hover: var(--bg-muted);--td-bg-color-component: var(--bg-soft);--td-bg-color-component-hover: var(--bg-muted);--td-bg-color-component-disabled: var(--bg-muted);--td-bg-color-secondarycontainer: var(--bg-muted);--td-text-color-primary: var(--fg);--td-text-color-secondary: var(--fg-muted);--td-text-color-placeholder: var(--fg-faint);--td-text-color-anti: var(--bg);--td-text-color-disabled: var(--fg-faint);--td-border-level-1-color: var(--border);--td-border-level-2-color: var(--border-strong);--td-component-stroke: var(--border);--td-component-border: var(--border);--td-radius-small: 4px;--td-radius-default: 6px;--td-radius-medium: 8px;--td-radius-large: 12px;--td-radius-extraLarge: 16px;--td-shadow-1: 0 1px 2px rgba(0, 0, 0, .04);--td-shadow-2: 0 4px 16px rgba(0, 0, 0, .06);--td-shadow-3: 0 12px 32px rgba(0, 0, 0, .08)}.dark{--bg: #0a0a0a;--bg-soft: #111111;--bg-muted: #1a1a1a;--fg: #fafafa;--fg-soft: #d4d4d4;--fg-muted: #a3a3a3;--fg-faint: #737373;--border: #262626;--border-strong: #404040;--glow-1: #818cf8;--glow-2: #a78bfa;--glow-3: #22d3ee;--glow-soft: rgba(129, 140, 248, .12);--td-brand-color: var(--glow-1);--td-bg-color-page: var(--bg);--td-bg-color-container: var(--bg-soft);--td-bg-color-container-hover: var(--bg-muted);--td-bg-color-component: var(--bg-soft);--td-bg-color-component-hover: var(--bg-muted);--td-bg-color-secondarycontainer: var(--bg-muted);--td-text-color-primary: var(--fg);--td-text-color-secondary: var(--fg-muted);--td-text-color-placeholder: var(--fg-faint);--td-text-color-anti: var(--bg);--td-border-level-1-color: var(--border);--td-component-stroke: var(--border);--td-component-border: var(--border);--td-shadow-1: 0 1px 2px rgba(0, 0, 0, .4);--td-shadow-2: 0 4px 16px rgba(0, 0, 0, .5);--td-shadow-3: 0 12px 32px rgba(0, 0, 0, .6)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{min-height:100vh;width:100%}body{font-family:var(--font-sans);background-color:var(--bg);color:var(--fg);font-feature-settings:"cv11","ss01";transition:background-color .4s ease,color .4s ease;line-height:1.6}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.font-serif{font-family:var(--font-serif)}.font-sans{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.heading-display{font-family:var(--font-serif);font-weight:500;letter-spacing:-.02em;line-height:1.15}.heading-section{font-family:var(--font-sans);font-weight:600;letter-spacing:-.01em;line-height:1.25}.text-body{color:var(--fg-soft);line-height:1.75}.text-meta{color:var(--fg-muted);font-size:13px;letter-spacing:.02em}.prose-reading{font-family:var(--font-serif);font-size:17px;line-height:1.85;color:var(--fg-soft)}.prose-reading p{margin:1.2em 0}.prose-reading h2{font-family:var(--font-sans);font-weight:600;font-size:22px;margin:2em 0 .8em;color:var(--fg)}.prose-reading h3{font-family:var(--font-sans);font-weight:600;font-size:18px;margin:1.6em 0 .6em;color:var(--fg)}.prose-reading blockquote{border-left:2px solid var(--fg);padding-left:1.2em;margin:1.5em 0;font-style:italic;color:var(--fg-muted)}.prose-reading code{font-family:var(--font-mono);font-size:.92em;background:var(--bg-muted);padding:.15em .4em;border-radius:4px}.prose-reading pre{font-family:var(--font-mono);font-size:13px;line-height:1.65;background:var(--bg-muted);border:1px solid var(--border);color:var(--fg-soft);padding:1em 1.2em;border-radius:8px;overflow-x:auto;margin:1.5em 0}.prose-reading pre code{background:transparent;padding:0;border-radius:0;font-size:inherit}.prose-reading ul,.prose-reading ol{padding-left:1.5em;margin:1.2em 0}.prose-reading ul li{list-style:disc;margin:.4em 0}.prose-reading ol li{list-style:decimal;margin:.4em 0}.prose-reading strong{color:var(--fg);font-weight:600}.prose-reading hr{border:none;border-top:1px solid var(--border);margin:2.5em 0}.prose-reading a{color:var(--fg);text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:4px;transition:text-decoration-color .2s}.prose-reading a:hover{text-decoration-color:var(--fg)}.glow-text{background:linear-gradient(120deg,var(--glow-1) 0%,var(--glow-2) 50%,var(--glow-3) 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:glow-shift 8s ease-in-out infinite}@keyframes glow-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.glow-border{position:relative;isolation:isolate}.glow-border:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,var(--glow-1),var(--glow-2),var(--glow-3));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.6;pointer-events:none;z-index:-1}.glow-bg{background:radial-gradient(ellipse 80% 50% at 50% 0%,var(--glow-soft) 0%,transparent 70%)}.glow-dot{position:relative}.glow-dot:before{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:var(--glow-1);box-shadow:0 0 12px var(--glow-1),0 0 24px var(--glow-2);left:-14px;top:50%;transform:translateY(-50%);animation:pulse-glow 2.5s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:1;transform:translateY(-50%) scale(1)}50%{opacity:.5;transform:translateY(-50%) scale(.8)}}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up{animation:fade-up .8s cubic-bezier(.16,1,.3,1) forwards}.animate-delay-1{animation-delay:.1s;opacity:0}.animate-delay-2{animation-delay:.2s;opacity:0}.animate-delay-3{animation-delay:.3s;opacity:0}.animate-delay-4{animation-delay:.4s;opacity:0}.animate-delay-5{animation-delay:.5s;opacity:0}.card{background:var(--bg);border:1px solid var(--border);border-radius:12px;transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease}.card:hover{border-color:var(--fg);transform:translateY(-2px)}.card-soft{background:var(--bg-soft);border:1px solid var(--border);border-radius:12px;transition:all .25s ease}.card-soft:hover{background:var(--bg-muted);border-color:var(--border-strong)}.link-line{position:relative;display:inline-block;color:var(--fg);text-decoration:none}.link-line:after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right center;transition:transform .4s cubic-bezier(.7,0,.3,1)}.link-line:hover:after{transform:scaleX(1);transform-origin:left center}.tag{display:inline-flex;align-items:center;font-size:12px;font-weight:500;padding:3px 10px;border-radius:999px;background:var(--bg-muted);color:var(--fg-muted);border:1px solid transparent;transition:all .2s;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;letter-spacing:.02em}.tag:hover{color:var(--fg);border-color:var(--border-strong)}.tag.is-active{background:var(--fg);color:var(--bg);border-color:var(--fg)}.tag-glow{background:var(--glow-soft);color:var(--glow-1);border-color:transparent}.tag-glow:hover{background:var(--glow-soft);border-color:var(--glow-1);color:var(--glow-1)}.dark .tag-glow{color:var(--glow-1)}.timeline-line{position:absolute;left:7px;top:0;bottom:0;width:1px;background:var(--border)}.timeline-dot{width:15px;height:15px;border-radius:50%;background:var(--bg);border:2px solid var(--fg);flex-shrink:0;margin-top:4px;transition:all .25s}.timeline-item:hover .timeline-dot{background:var(--fg);transform:scale(1.15)}.search-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:100;animation:fade-in-bg .2s ease forwards}@keyframes fade-in-bg{0%{opacity:0}to{opacity:1}}::-moz-selection{background:var(--fg);color:var(--bg)}::selection{background:var(--fg);color:var(--bg)}.chat-markdown{color:var(--fg);line-height:1.75}.chat-markdown pre{background:var(--bg-muted);border:1px solid var(--border);border-radius:8px;padding:12px;overflow-x:auto;margin:12px 0;font-family:var(--font-mono);font-size:13px}.chat-markdown :not(pre)>code{font-family:var(--font-mono);background:var(--bg-muted);padding:2px 6px;border-radius:4px;font-size:.9em}.chat-markdown a{color:var(--glow-1);text-decoration:underline;text-underline-offset:3px}.chat-markdown ul,.chat-markdown ol{padding-left:1.5em;margin:8px 0}.chat-markdown li{margin:4px 0}.chat-markdown blockquote{border-left:3px solid var(--glow-1);padding-left:12px;margin:12px 0;color:var(--fg-muted)}.t-input,.t-select__wrap{background-color:var(--bg-soft)!important;border-color:var(--border)!important;color:var(--fg)!important}.t-input:hover,.t-select__wrap:hover{border-color:var(--fg)!important}.t-popup__content{background-color:var(--bg)!important;border:1px solid var(--border)!important;border-radius:8px!important;box-shadow:var(--td-shadow-2)!important}.t-select-option{color:var(--fg)!important;border-radius:4px!important}.t-select-option:hover{background-color:var(--bg-muted)!important}.t-select-option.t-is-selected{background:var(--glow-soft)!important;color:var(--glow-1)!important}.first\:pt-0:first-child{padding-top:0}.last\:border-0:last-child{border-width:0px}.last\:pb-0:last-child{padding-bottom:0}.hover\:translate-x-0\.5:hover{--tw-translate-x: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:translate-y-\[-1px\]:hover{--tw-translate-y: -1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-\[var\(--glow-1\)\]:hover{border-color:var(--glow-1)}.hover\:bg-\[var\(--bg-muted\)\]:hover{background-color:var(--bg-muted)}.disabled\:opacity-40:disabled{opacity:.4}.group:hover .group-hover\:scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-\[1\.04\]{--tw-scale-x: 1.04;--tw-scale-y: 1.04;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:underline{text-decoration-line:underline}@media (min-width: 640px){.sm\:block{display:block}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:pb-32{padding-bottom:8rem}.sm\:pt-32{padding-top:8rem}.sm\:text-\[20px\]{font-size:20px}.sm\:text-\[28px\]{font-size:28px}}@media (min-width: 768px){.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:text-right{text-align:right}}@media (min-width: 1024px){.lg\:sticky{position:sticky}.lg\:top-24{top:6rem}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-\[180px_1fr\]{grid-template-columns:180px 1fr}.lg\:grid-cols-\[1fr_220px\]{grid-template-columns:1fr 220px}.lg\:grid-cols-\[1fr_320px\]{grid-template-columns:1fr 320px}.lg\:grid-cols-\[280px_1fr\]{grid-template-columns:280px 1fr}.lg\:gap-10{gap:2.5rem}.lg\:self-start{align-self:flex-start}.lg\:pt-1{padding-top:.25rem}}
