/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */
@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-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}}}@layer theme{:root,:host{--font-sans:"Syne", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--spacing:.25rem;--container-2xl:42rem;--container-5xl:64rem;--container-7xl:80rem;--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-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-5xl:3rem;--text-5xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--text-8xl:6rem;--text-8xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-sm:.25rem;--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-canvas:#0c0c0f;--color-surface:#18181f;--color-surface-raised:#22222c;--color-ink:#f4f2ed;--color-secondary:#d4d1dc;--color-muted:#a09aab;--color-accent:#4db8ff;--color-line:#34343f}}@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}html{scroll-behavior:smooth}body{background-color:var(--color-canvas);font-family:var(--font-sans);color:var(--color-ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background-color:#4db8ff40}@supports (color:color-mix(in lab, red, red)){::selection{background-color:color-mix(in oklab, var(--color-accent) 25%, transparent)}}::selection{color:var(--color-ink)}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.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}.inset-0{inset:0}.top-0{top:0}.top-1\/2{top:50%}.-left-2{left:calc(var(--spacing) * -2)}.left-0{left:0}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.z-\[1\]{z-index:1}.col-span-2{grid-column:span 2/span 2}.mx-auto{margin-inline:auto}.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-20{margin-top:calc(var(--spacing) * 20)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-14{margin-bottom:calc(var(--spacing) * 14)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.h-2{height:calc(var(--spacing) * 2)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-8{height:calc(var(--spacing) * 8)}.h-px{height:1px}.min-h-screen{min-height:100vh}.w-2{width:calc(var(--spacing) * 2)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-8{width:calc(var(--spacing) * 8)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-16{max-width:calc(var(--spacing) * 16)}.min-w-0{min-width:0}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.scroll-mt-24{scroll-margin-top:calc(var(--spacing) * 24)}.scroll-mt-28{scroll-margin-top:calc(var(--spacing) * 28)}.grid-cols-\[minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) auto}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}:where(.space-y-16>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 16) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 16) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:3.40282e38px}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-line{border-color:var(--color-line)}.border-line\/60{border-color:#34343f99}@supports (color:color-mix(in lab, red, red)){.border-line\/60{border-color:color-mix(in oklab, var(--color-line) 60%, transparent)}}.border-line\/80{border-color:#34343fcc}@supports (color:color-mix(in lab, red, red)){.border-line\/80{border-color:color-mix(in oklab, var(--color-line) 80%, transparent)}}.bg-canvas{background-color:var(--color-canvas)}.bg-canvas\/70{background-color:#0c0c0fb3}@supports (color:color-mix(in lab, red, red)){.bg-canvas\/70{background-color:color-mix(in oklab, var(--color-canvas) 70%, transparent)}}.bg-line{background-color:var(--color-line)}.bg-surface-raised{background-color:var(--color-surface-raised)}.p-5{padding:calc(var(--spacing) * 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-6{padding-inline:calc(var(--spacing) * 6)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-32{padding-top:calc(var(--spacing) * 32)}.pb-1{padding-bottom:var(--spacing)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-8{padding-left:calc(var(--spacing) * 8)}.align-\[-0\.125em\]{vertical-align:-.125em}.font-mono{font-family:var(--font-mono)}.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-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.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-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[clamp\(4rem\,14vw\,7rem\)\]{font-size:clamp(4rem,14vw,7rem)}.leading-\[1\.05\]{--tw-leading:1.05;line-height:1.05}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.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-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[0\.14em\]{--tw-tracking:.14em;letter-spacing:.14em}.tracking-\[0\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-\[\#34d399\]{color:#34d399}.text-\[color\:var\(--card-accent\)\]{color:var(--card-accent)}.text-ink{color:var(--color-ink)}.text-muted{color:var(--color-muted)}.text-secondary{color:var(--color-secondary)}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.opacity-70{opacity:.7}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));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))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.select-none{user-select:none}@media (hover:hover){.group-hover\:text-\[color\:var\(--card-accent\)\]:is(:where(.group):hover *){color:var(--card-accent)}.group-hover\:text-secondary\/90:is(:where(.group):hover *){color:#d4d1dce6}@supports (color:color-mix(in lab, red, red)){.group-hover\:text-secondary\/90:is(:where(.group):hover *){color:color-mix(in oklab, var(--color-secondary) 90%, transparent)}}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.hover\:border-\[color\:var\(--card-accent\)\]\/45:hover{border-color:var(--card-accent)}@supports (color:color-mix(in lab, red, red)){.hover\:border-\[color\:var\(--card-accent\)\]\/45:hover{border-color:color-mix(in oklab, var(--card-accent) 45%, transparent)}}.hover\:border-accent\/40:hover{border-color:#4db8ff66}@supports (color:color-mix(in lab, red, red)){.hover\:border-accent\/40:hover{border-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.hover\:bg-\[\#34d399\]\/12:hover{background-color:oklab(77.2944% -.146957 .0443044/.12)}.hover\:bg-surface:hover{background-color:var(--color-surface)}.hover\:text-\[\#6ee7b7\]:hover{color:#6ee7b7}.hover\:text-accent:hover{color:var(--color-accent)}.hover\:text-ink:hover{color:var(--color-ink)}}@media (width>=40rem){.sm\:inline{display:inline}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-6{gap:calc(var(--spacing) * 6)}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:whitespace-nowrap{white-space:nowrap}}@media (width>=64rem){.lg\:text-8xl{font-size:var(--text-8xl);line-height:var(--tw-leading,var(--text-8xl--line-height))}}.page-bg{background-color:var(--color-canvas);background-image:radial-gradient(80% 60% at 50% 0,#4db8ff24,#0000 60%),radial-gradient(50% 40% at 80% 60%,#4db8ff14,#0000 50%),radial-gradient(40% 30% at 10% 80%,#4db8ff0f,#0000 50%)}@media (prefers-reduced-motion:no-preference){.page-bg{animation:20s ease-in-out infinite alternate page-drift}}@keyframes page-drift{0%{background-position:0 0,100% 100%,0 100%}to{background-position:10% 5%,90% 95%,5% 90%}}.catalog-glows{opacity:0;will-change:transform, opacity;background-image:radial-gradient(50% 40% at 80% 60%,#4db8ff12,#0000 50%),radial-gradient(40% 30% at 10% 80%,#4db8ff0e,#0000 50%);background-repeat:no-repeat;background-size:100% 120%;transform:translate(0)}@media (prefers-reduced-motion:reduce){.catalog-glows{opacity:0;transform:none}.catalog-grid{opacity:.32;transform:none}#hero-grid{opacity:1;transform:none}}.label-line:before{content:"";background:var(--color-line);vertical-align:middle;width:2rem;height:1px;margin-right:.75rem;display:inline-block}.tech-grid{will-change:opacity, transform;background-image:linear-gradient(90deg,#ffffff05 1px,#0000 1px),linear-gradient(#ffffff05 1px,#0000 1px);background-size:48px 48px;mask-image:radial-gradient(85% 75% at 50% 35%,#000 15%,#0000 72%)}#hero-grid{transition:opacity .1s linear}.catalog-grid{opacity:0;will-change:opacity, transform}.tech-grid-soft{opacity:.32;background-size:64px 64px;mask-image:linear-gradient(#0000,#000 12% 88%,#0000)}.tech-crosshair{transform:rotate(45deg)}@media (prefers-reduced-motion:no-preference){.hero-enter{opacity:0;animation:.85s cubic-bezier(.22,1,.36,1) forwards hero-enter;transform:translateY(24px)}.hero-label{animation-delay:50ms}.hero-line-1{animation-delay:.14s}.hero-line-2{animation-delay:.26s}.hero-description{animation-delay:.34s}.hero-scroll-cue{animation-delay:.48s}}@keyframes hero-enter{to{opacity:1;transform:translateY(0)}}.category-watermark{color:var(--category-accent)}@supports (color:color-mix(in lab, red, red)){.category-watermark{color:color-mix(in srgb, var(--category-accent) 4%, transparent)}}.category-watermark{transition:color .45s}.category-node{background:var(--category-accent);box-shadow:0 0 10px var(--category-accent)}@supports (color:color-mix(in lab, red, red)){.category-node{box-shadow:0 0 10px color-mix(in srgb, var(--category-accent) 45%, transparent)}}.category-node{transition:box-shadow .45s,transform .45s}.category-section.is-active .category-watermark{color:var(--category-accent)}@supports (color:color-mix(in lab, red, red)){.category-section.is-active .category-watermark{color:color-mix(in srgb, var(--category-accent) 8%, transparent)}}.category-section.is-active .category-node{box-shadow:0 0 18px var(--category-accent)}@supports (color:color-mix(in lab, red, red)){.category-section.is-active .category-node{box-shadow:0 0 18px color-mix(in srgb, var(--category-accent) 70%, transparent)}}.category-section.is-active .category-node{transform:translate(-50%,-50%)scale(1.35)}.category-section.is-active .category-section-header h2{color:var(--category-accent)}@supports (color:color-mix(in lab, red, red)){.category-section.is-active .category-section-header h2{color:color-mix(in srgb, var(--category-accent) 18%, var(--color-ink))}}.category-section-header h2{transition:color .45s}.category-rail-track:before{content:"";background:linear-gradient(to bottom, transparent, var(--color-line) 8%, var(--color-line) 92%, transparent);width:1px;position:absolute;top:2rem;bottom:2rem;left:0}.repo-card{box-shadow:0 0 0 0 var(--card-accent)}@supports (color:color-mix(in lab, red, red)){.repo-card{box-shadow:0 0 0 0 color-mix(in srgb, var(--card-accent) 0%, transparent)}}.repo-new-watermark{writing-mode:vertical-rl;letter-spacing:.05em;background:linear-gradient(180deg, var(--card-accent) 0%, var(--card-accent) 48%, var(--card-accent) 100%);width:fit-content;font-size:clamp(2rem,6vw,2.65rem);font-weight:900;line-height:.92;top:50%;left:.45rem}@supports (color:color-mix(in lab, red, red)){.repo-new-watermark{background:linear-gradient(180deg, color-mix(in srgb, var(--card-accent) 11%, transparent) 0%, color-mix(in srgb, var(--card-accent) 18%, transparent) 48%, color-mix(in srgb, var(--card-accent) 11%, transparent) 100%)}}.repo-new-watermark{color:#0000;transform-origin:50%;filter:blur(.75px);background-position:0 115%;background-size:100% 220%;background-clip:text;transition:background-position .6s cubic-bezier(.22,1,.36,1),transform .45s cubic-bezier(.22,1,.36,1),font-size .45s cubic-bezier(.22,1,.36,1),filter .45s cubic-bezier(.22,1,.36,1);transform:translateY(-50%)scale(1.85,.7)}@media (width<=639px),(hover:none){.repo-new-watermark{letter-spacing:.08em;text-size-adjust:none;line-height:1.15;transform:translateY(-50%)scaleX(1.2)}}@media (prefers-reduced-motion:reduce){.repo-new-watermark{color:var(--card-accent);background:0 0}@supports (color:color-mix(in lab, red, red)){.repo-new-watermark{color:color-mix(in srgb, var(--card-accent) 14%, transparent)}}.repo-card:hover .repo-new-watermark{color:var(--card-accent)}@supports (color:color-mix(in lab, red, red)){.repo-card:hover .repo-new-watermark{color:color-mix(in srgb, var(--card-accent) 22%, transparent)}}}@media (prefers-reduced-motion:no-preference){.reveal-card{opacity:0;transition:opacity .55s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay,0s), transform .55s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay,0s), border-color .3s ease, background-color .3s ease, box-shadow .3s ease;transform:translateY(18px)}.reveal-card.is-revealed{opacity:1;transform:translateY(0)}.repo-card:hover{box-shadow:0 0 24px var(--card-accent)}@supports (color:color-mix(in lab, red, red)){.repo-card:hover{box-shadow:0 0 24px color-mix(in srgb, var(--card-accent) 18%, transparent)}}.repo-card:hover .repo-card-arrow{transform:translate(3px,-3px)}.repo-card:hover .repo-new-watermark{filter:blur();background-position:0 0;font-size:clamp(2.1rem,6.25vw,2.8rem);transform:translate(3px,calc(-50% - 2px))scale(1.85,.7)}@media (width<=639px),(hover:none){.repo-card:hover .repo-new-watermark{font-size:clamp(2.05rem,6.15vw,2.72rem);transform:translate(2px,calc(-50% - 2px))scaleX(1.2)}}.repo-download{animation:3s ease-in-out infinite repo-download-pulse}.repo-download:hover,.repo-download:focus-visible{animation-play-state:paused}@keyframes repo-download-pulse{0%,to{color:#34d399;box-shadow:none;background-color:#0000}50%{color:#6ee7b7;background-color:#34d39924;box-shadow:0 0 10px #34d3991f}}}body.has-custom-cursor,body.has-custom-cursor a,body.has-custom-cursor button{cursor:none!important}.custom-cursor{pointer-events:none;z-index:9999;opacity:0;width:16px;height:16px;transition:opacity .15s;position:fixed;transform:translate(-50%,-50%)}.custom-cursor__core,.custom-cursor__ring,.custom-cursor__icon-shadow,.custom-cursor__download,.custom-cursor__external{transition:opacity .22s,transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s,color .22s;position:absolute;inset:0}.custom-cursor__core{background:#f4f2ede0}@supports (color:color-mix(in lab, red, red)){.custom-cursor__core{background:color-mix(in srgb, var(--color-ink) 88%, transparent)}}.custom-cursor__core{box-shadow:0 0 14px #f4f2ed52,0 0 28px #f4f2ed29}@supports (color:color-mix(in lab, red, red)){.custom-cursor__core{box-shadow:0 0 14px color-mix(in srgb, var(--color-ink) 32%, transparent), 0 0 28px color-mix(in srgb, var(--color-ink) 16%, transparent)}}.custom-cursor__ring{border:1px solid #f4f2ed61;inset:-11px}@supports (color:color-mix(in lab, red, red)){.custom-cursor__ring{border:1px solid color-mix(in srgb, var(--color-ink) 38%, transparent)}}.custom-cursor__ring{opacity:0;transform:scale(.92)}.custom-cursor__icon-shadow{background:radial-gradient(circle,#09090c 0%,#0c0c0f47 40%,#0000 68%);border-radius:50%;width:40px;height:40px;inset:50% auto auto 50%}@supports (color:color-mix(in lab, red, red)){.custom-cursor__icon-shadow{background:radial-gradient(circle, color-mix(in srgb, var(--color-canvas) 78%, black) 0%, color-mix(in srgb, var(--color-canvas) 28%, transparent) 40%, transparent 68%)}}.custom-cursor__icon-shadow{opacity:0;transform:translate(-50%,-50%)scale(.55);box-shadow:0 0 10px #0003}.custom-cursor__download,.custom-cursor__external{opacity:0;width:24px;height:24px;color:var(--color-ink);filter:drop-shadow(0 0 1px #f4f2eda6)drop-shadow(0 1px 2px #00000052);inset:50% auto auto 50%;transform:translate(-50%,-58%)scale(.55)}.custom-cursor__download path,.custom-cursor__external path{stroke-dasharray:24;stroke-dashoffset:24px;transition:stroke-dashoffset .32s cubic-bezier(.22,1,.36,1)}.custom-cursor__download-tray,.custom-cursor__external-corner{stroke-dasharray:22;stroke-dashoffset:22px;transition-delay:80ms}.custom-cursor.is-visible{opacity:1}.custom-cursor.is-hover .custom-cursor__core{transform:scale(1.2);box-shadow:0 0 18px #f4f2ed6b,0 0 36px #f4f2ed33}@supports (color:color-mix(in lab, red, red)){.custom-cursor.is-hover .custom-cursor__core{box-shadow:0 0 18px color-mix(in srgb, var(--color-ink) 42%, transparent), 0 0 36px color-mix(in srgb, var(--color-ink) 20%, transparent)}}.custom-cursor.is-hover .custom-cursor__ring{opacity:.85;transform:scale(1)}.custom-cursor.is-download .custom-cursor__core,.custom-cursor.is-repo-link .custom-cursor__core{opacity:0;box-shadow:none;transform:scale(.35)}.custom-cursor.is-download .custom-cursor__ring,.custom-cursor.is-repo-link .custom-cursor__ring{opacity:0;transform:scale(.7)}.custom-cursor.is-download .custom-cursor__icon-shadow,.custom-cursor.is-repo-link .custom-cursor__icon-shadow,.custom-cursor.is-download .custom-cursor__download{opacity:1;transform:translate(-50%,-50%)scale(1)}.custom-cursor.is-download .custom-cursor__download path{stroke-dashoffset:0}.custom-cursor__download-arrow{transform-box:fill-box;transform-origin:50%}.custom-cursor.is-download .custom-cursor__download-arrow{animation:1.4s linear infinite cursor-download-flow}.custom-cursor.is-download .custom-cursor__download-tray{animation:1.4s linear infinite cursor-download-tray}.custom-cursor__label{opacity:0;pointer-events:none;white-space:nowrap;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-ink);background:#22222cf0;font-size:.625rem;font-weight:500;line-height:1;position:absolute;top:calc(50% - 22px);left:calc(50% + 14px);transform:translateY(5px)}@supports (color:color-mix(in lab, red, red)){.custom-cursor__label{background:color-mix(in srgb, var(--color-surface-raised) 94%, transparent)}}.custom-cursor__label{border:1px solid var(--color-line);border-radius:2px;padding:.3rem .5rem;transition:opacity .22s,transform .28s cubic-bezier(.22,1,.36,1);box-shadow:0 4px 14px #00000061,0 0 0 1px #0000001f}.custom-cursor.is-download .custom-cursor__label{opacity:1;color:#6ee7b7;border-color:#34675c;transform:translateY(0)}@supports (color:color-mix(in lab, red, red)){.custom-cursor.is-download .custom-cursor__label{border-color:color-mix(in srgb, #34d399 32%, var(--color-line))}}.custom-cursor.is-repo-link .custom-cursor__label{opacity:1;color:var(--cursor-accent,var(--color-accent));border-color:var(--cursor-accent,#4db8ff);transform:translateY(0)}@supports (color:color-mix(in lab, red, red)){.custom-cursor.is-repo-link .custom-cursor__label{border-color:color-mix(in srgb, var(--cursor-accent,var(--color-accent)) 32%, var(--color-line))}}@keyframes cursor-download-flow{0%,to{opacity:1;transform:translateY(0)}45%{opacity:1;transform:translateY(4px)}58%{opacity:0;transform:translateY(4px)}72%{opacity:0;transform:translateY(0)}}@keyframes cursor-download-tray{0%,to{stroke-width:2px}45%,58%{stroke-width:2.5px}}.custom-cursor.is-repo-link .custom-cursor__external{opacity:1;transform:translate(-50%,-50%)scale(1)}.custom-cursor.is-repo-link .custom-cursor__external path{stroke-dashoffset:0}}.site-header__inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;display:grid}.site-header__brand{justify-self:start;min-width:0}.site-header__center{justify-self:center}.site-header__nav{justify-self:end;min-width:0}@media (width<=380px){.theme-toggle__label{padding-inline:.5rem;font-size:.625rem}}.theme-toggle{will-change:opacity;align-items:stretch;gap:0;display:inline-flex}.theme-toggle__option{cursor:pointer;position:relative}.theme-toggle__input{opacity:0;width:0;height:0;margin:0;position:absolute}.theme-toggle__label{letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);border:1px solid var(--color-line);background:var(--color-surface);padding:.45rem .7rem;font-size:.6875rem;font-weight:500;line-height:1;transition:color .15s,background-color .15s,border-color .15s;display:inline-block}.theme-toggle__option:first-child .theme-toggle__label{border-radius:2px 0 0 2px}.theme-toggle__option:last-child .theme-toggle__label{border-radius:0 2px 2px 0;margin-left:-1px}.theme-toggle__input:checked+.theme-toggle__label{color:var(--color-ink);background:var(--color-surface-raised);border-color:#3f6f95}@supports (color:color-mix(in lab, red, red)){.theme-toggle__input:checked+.theme-toggle__label{border-color:color-mix(in srgb, var(--color-accent) 45%, var(--color-line))}}.theme-toggle__input:focus-visible+.theme-toggle__label{outline:2px solid var(--color-accent);outline-offset:1px}[data-theme=tkinter] .modern-only{display:none!important}.tkinter-only{display:none}[data-theme=tkinter] .tkinter-only{display:block}[data-theme=tkinter]{--font-sans:"Segoe UI", system-ui, sans-serif;--font-mono:Consolas, "Cascadia Mono", ui-monospace, monospace;--color-canvas:#ececec;--color-surface:#fff;--color-surface-raised:#f5f5f5;--color-ink:#000;--color-secondary:#333;--color-muted:#555;--color-accent:navy;--color-accent-hover:navy;--color-line:#a0a0a0}[data-theme=tkinter] body{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;font-size:.8125rem;line-height:1.35}[data-theme=tkinter] a,[data-theme=tkinter] .repo-card,[data-theme=tkinter] .header-github,[data-theme=tkinter] .repo-download,[data-theme=tkinter] .theme-toggle__label{transition:none}[data-theme=tkinter] ::selection{color:#fff;background:#316ac5}[data-theme=tkinter] .page-bg{background-color:var(--color-canvas);background-image:none;animation:none}[data-theme=tkinter] .site-header{background:var(--color-canvas);backdrop-filter:none;border-bottom:1px solid var(--color-line);position:sticky}[data-theme=tkinter] .site-header__inner{padding-top:.65rem;padding-bottom:.65rem}[data-theme=tkinter] .site-header__brand{text-transform:none;letter-spacing:normal;font-size:.8125rem;font-weight:600}[data-theme=tkinter] .site-header .header-github{text-transform:none;letter-spacing:normal;background:var(--color-canvas);border-radius:0;font-size:.75rem}[data-theme=tkinter] .site-header .header-github:hover{background:var(--color-canvas);color:var(--color-ink);border-color:#555}[data-theme=tkinter] .theme-toggle__label{text-transform:none;letter-spacing:normal;border-radius:0;font-size:.6875rem}[data-theme=tkinter] .theme-toggle__option:first-child .theme-toggle__label,[data-theme=tkinter] .theme-toggle__option:last-child .theme-toggle__label{border-radius:0}[data-theme=tkinter] .theme-toggle__input:checked+.theme-toggle__label{color:var(--color-ink);background:#d4d4d4;border-color:#555}[data-theme=tkinter] .tkinter-catalog-header h1{font-size:.875rem;font-weight:600}[data-theme=tkinter] .software-section{overflow:visible}[data-theme=tkinter] .software-section>.relative{padding-top:.75rem;padding-bottom:1.5rem}[data-theme=tkinter] .software-intro{margin-bottom:1rem}[data-theme=tkinter] .software-intro h2{letter-spacing:normal;margin-top:0;font-size:.875rem;font-weight:600}[data-theme=tkinter] .category-rail-track:before{display:none}[data-theme=tkinter] .category-rail-track{padding-left:0}[data-theme=tkinter] .category-rail-track>*+*{margin-top:1rem}[data-theme=tkinter] .category-section{border:1px solid var(--color-line);background:var(--color-surface);margin-top:.35rem;padding:.85rem .65rem .65rem}[data-theme=tkinter] .category-section-header{background:var(--color-surface);padding-left:0;width:fit-content;margin:-1.45rem 0 .5rem .5rem;padding-inline:.3rem;position:relative}[data-theme=tkinter] .category-section-header h2{letter-spacing:normal;font-size:.8125rem;font-weight:600;color:var(--color-ink)!important}[data-theme=tkinter] .category-section.is-active .category-section-header h2{color:var(--color-ink)!important}[data-theme=tkinter] .category-section .grid{gap:.25rem}[data-theme=tkinter] .reveal-card{opacity:1;transition:none;transform:none}[data-theme=tkinter] .repo-card{border-color:var(--color-line);background:var(--color-surface-raised);border-radius:0;padding:.45rem .55rem;box-shadow:none!important}[data-theme=tkinter] .repo-card:hover{background:var(--color-surface-raised);border-color:#555}[data-theme=tkinter] .repo-card h3{font-size:.8125rem;font-weight:600;line-height:1.25}[data-theme=tkinter] .repo-card h3 a{color:var(--color-ink);text-decoration:none}[data-theme=tkinter] .repo-card h3 a:hover{color:var(--color-ink);text-decoration:underline}[data-theme=tkinter] .repo-card>p,[data-theme=tkinter] .repo-card p{margin-top:.1rem;font-size:.75rem;line-height:1.35}[data-theme=tkinter] .repo-card .grid{gap:.25rem .5rem}[data-theme=tkinter] .repo-tag{background:var(--color-canvas);border-color:var(--color-line);border-radius:0;padding:.05rem .3rem;font-size:.625rem;line-height:1.3}[data-theme=tkinter] .repo-download{border:1px solid var(--color-line);background:var(--color-canvas);color:var(--color-ink);border-radius:0;width:auto;height:auto;padding:.1rem .35rem;font-size:.6875rem;animation:none}[data-theme=tkinter] .repo-download:hover{background:var(--color-canvas);color:var(--color-ink);border-color:#555}[data-theme=tkinter] .site-footer{border-top:1px solid var(--color-line);background:var(--color-canvas)}[data-theme=tkinter] .site-footer>div{gap:.25rem;padding-top:.5rem;padding-bottom:.5rem}[data-theme=tkinter] .site-footer p,[data-theme=tkinter] .site-footer a{font-size:.6875rem}[data-theme=tkinter] .site-footer a:hover{color:var(--color-ink);text-decoration:underline}[data-theme=tkinter] .custom-cursor{display:none!important}[data-theme=tkinter] body.has-custom-cursor,[data-theme=tkinter] body.has-custom-cursor a,[data-theme=tkinter] body.has-custom-cursor button{cursor:auto!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-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-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}
