.hero-art{--infinity-shadow:#08030f;isolation:isolate}:root[data-theme=light] .hero-art{--infinity-shadow:#713b92}.hero-art-canvas{transform:perspective(1100px) translate3d(var(--hero-x,0px), var(--hero-y,0px), 0) rotateX(var(--hero-rx,0deg)) rotateY(var(--hero-ry,0deg));transition:transform .8s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0}.hero-art:hover .hero-art-canvas{transition-duration:.2s}.hero-art .infinity-svg{display:block;overflow:visible}.hero-art:is(:hover,:focus-within) .infinity-svg{filter:none}.hero-art .hero-art-glow{background:radial-gradient(at 35% 55%,#933bcb18,#0000 55%);animation:18s ease-in-out infinite alternate infinity-aura;inset:7% -4%}.hero-art-aura{pointer-events:none;background:radial-gradient(at 70% 45%,#ed168818,#0000 58%);animation:23s ease-in-out -8s infinite alternate-reverse infinity-aura;position:absolute;inset:17% 1% 2% 20%}.hero-art .infinity-ribbon{transform-origin:360px 278px;animation:12s ease-in-out infinite infinity-sculpture}.infinity-bevel{opacity:.65}.infinity-rim{stroke-width:.85px;opacity:.65}.hero-art .ribbon-shimmer{stroke-width:1.6px;stroke-linecap:round;stroke-dasharray:5 95;opacity:.65;animation:11s linear infinite infinity-flow}.hero-art .infinity-front .ribbon-shimmer{animation-delay:-5.5s}.infinity-floor{transform-origin:365px 439px;animation:12s ease-in-out infinite infinity-shadow}.infinity-field{transform-origin:360px 278px;animation:32s ease-in-out infinite alternate infinity-field-drift}.infinity-orbit{stroke:var(--purple);stroke-opacity:.18;stroke-width:.7px}.infinity-orbit-inner{stroke-opacity:.11}.infinity-orbit-outer{stroke:var(--art-grid);stroke-opacity:.16}.infinity-orbit-dashes{stroke:var(--art-grid);stroke-width:.65px;stroke-dasharray:1 9;stroke-opacity:.24}.infinity-orbit-signal{stroke:var(--purple);stroke-width:1.2px;stroke-dasharray:7 93;stroke-linecap:round;opacity:.65;animation:28s linear infinite infinity-flow}.infinity-orbit-particle{stroke:var(--pink-text);stroke-width:3px;stroke-dasharray:.15 99.85;stroke-linecap:round;animation:38s linear -19s infinite reverse infinity-flow}.infinity-axis{stroke:var(--art-grid);stroke-width:.65px;stroke-opacity:.22;stroke-dasharray:2 8}.infinity-star{stroke:var(--purple);fill:var(--bg);stroke-width:.8px;animation:8s ease-in-out infinite infinity-star}.infinity-star circle:last-child{fill:none;stroke-opacity:.25}.infinity-star-1{animation-delay:-2s}.infinity-star-2{animation-delay:-4s}.infinity-star-3{animation-delay:-6s}.hero-art[data-active=false] *,.hero-art[data-active=false] :before,.hero-art[data-active=false] :after{animation-play-state:paused}main[data-motion=paused] .hero-art-canvas{transition:none;transform:none}:root[data-theme=light] .infinity-orbit{stroke-opacity:.22}:root[data-theme=light] .hero-art .hero-art-glow{opacity:.75}:root[data-theme=light] .hero-art-aura{opacity:.65}@keyframes infinity-sculpture{0%,to{transform:translateY(3px)rotate(-1deg)}50%{transform:translateY(-9px)rotate(1deg)}}@keyframes infinity-shadow{0%,to{opacity:.7;transform:scaleX(1)}50%{opacity:.4;transform:scaleX(.88)}}@keyframes infinity-field-drift{0%{transform:rotate(-3deg)}to{transform:rotate(4deg)}}@keyframes infinity-flow{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}@keyframes infinity-aura{0%{transform:translate(-10px,5px)scale(.96)}to{transform:translate(12px,-7px)scale(1.05)}}@keyframes infinity-star{0%,to{opacity:.35}50%{opacity:.8}}@media (hover:none),(pointer:coarse){.hero-art-canvas{transition:none;transform:none}}@media (prefers-reduced-motion:reduce){.hero-art .infinity-ribbon,.hero-art .ribbon-shimmer,.hero-art .hero-art-glow,.hero-art-aura,.infinity-floor,.infinity-field,.infinity-orbit-signal,.infinity-orbit-particle,.infinity-star{animation:none}.hero-art .hero-art-canvas,.hero-art:hover .hero-art-canvas{transition:none;transform:none}.hero-art .infinity-orbit-signal,.hero-art .infinity-orbit-particle,.hero-art .ribbon-shimmer{display:none}}
.theme-selector{flex-shrink:0;position:relative}.theme-trigger{border:1px solid var(--line-strong);background:var(--bg-alt);min-height:44px;color:var(--muted);font-size:var(--font-small);white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:9px 12px;font-weight:600;transition:border-color .2s,color .2s,background .2s;display:inline-flex}.theme-trigger:hover,.theme-trigger[aria-expanded=true]{border-color:var(--purple);color:var(--purple);background:var(--surface)}.theme-chevron{opacity:.7;transition:transform .2s}.theme-trigger[aria-expanded=true] .theme-chevron{transform:rotate(180deg)}.theme-panel{z-index:70;width:min(22rem,380px);max-width:calc(100vw - 2 * var(--layout-gutter));border:1px solid var(--line-strong);background:var(--surface);transform-origin:100% 0;border-radius:15px;padding:20px;animation:.16s ease-out theme-panel-enter;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 18px 50px #00000038}.theme-panel-heading h2{font-family:inherit;font-size:var(--font-small);letter-spacing:-.2px;font-weight:700;line-height:1.5}.theme-panel-heading p{font-size:var(--font-label);color:var(--muted);margin-top:4px;line-height:1.7}.theme-options{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0;margin:18px 0 0;padding:0;display:grid}.theme-option{cursor:pointer;flex-direction:column;align-items:stretch;gap:9px;display:flex;position:relative}.theme-option input{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.theme-option-label{font-size:var(--font-label);text-align:center;color:var(--muted);font-weight:600;line-height:1.6}.theme-preview{--preview-bg:#f5f1fa;--preview-surface:#fff;--preview-border:#c5b6d3;--preview-line:#a89bb7;border:1px solid var(--line-strong);background:var(--preview-bg);border-radius:9px;height:76px;transition:border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.theme-preview-dark{--preview-bg:#17131e;--preview-surface:#211a2d;--preview-border:#514260;--preview-line:#726284}.theme-preview-system{background:linear-gradient(115deg,#f5f1fa 0 54%,#17131e 54% 100%)}.theme-preview-window{border:1px solid var(--preview-border);background:var(--preview-surface);border-radius:5px;display:flex;position:absolute;inset:20% -10% -14% 15%}.theme-preview-system .theme-preview-window{background:linear-gradient(115deg,#fff 0 46%,#211a2d 46% 100%)}.theme-preview-sidebar{border-right:1px solid var(--preview-border);flex-shrink:0;width:20%}.theme-preview-content{flex:1;padding:12px 10px}.theme-preview-content i{background:var(--preview-line);border-radius:2px;width:71%;height:3px;margin-bottom:5px;display:block}.theme-preview-content i:first-child{background:#9660c7;width:62%}.theme-preview-content i:last-child{width:48%}.theme-choice-icon{border:1px solid var(--preview-border);background:var(--preview-bg);color:#80658f;border-radius:50%;place-items:center;width:24px;height:24px;display:grid;position:absolute;bottom:7px;left:7px}.theme-preview-dark .theme-choice-icon{color:#be9bd8}.theme-choice-check{color:#fff;background:#d4086c;border-radius:50%;place-items:center;width:20px;height:20px;display:grid;position:absolute;top:5px;right:5px;box-shadow:0 2px 8px #0002}.theme-option input:checked~.theme-preview{border-color:var(--purple);box-shadow:0 0 0 1px var(--purple)}.theme-option input:checked~.theme-option-label{color:var(--purple)}.theme-option input:focus-visible~.theme-preview{outline:2px solid var(--pink-text);outline-offset:4px}.theme-option:hover .theme-preview{border-color:var(--purple)}.theme-panel-status{border-top:1px solid var(--line-strong);color:var(--muted);font-size:var(--font-label);align-items:flex-start;gap:8px;margin-top:21px;padding-top:15px;line-height:1.7;display:flex}.theme-panel-status svg{margin-top:3px}:root[data-theme=light] .theme-panel{box-shadow:0 18px 45px #3c1b541c}@keyframes theme-panel-enter{0%{opacity:0;transform:translateY(-5px)scale(.98)}to{opacity:1;transform:none}}@media (max-width:650px){.theme-trigger{width:40px;min-height:40px;padding:0}.theme-trigger>span,.theme-trigger .theme-chevron{display:none}.theme-panel{top:78px;left:var(--layout-gutter);right:var(--layout-gutter);transform-origin:top;width:auto;max-width:none;padding:18px;position:fixed}.theme-preview{height:72px}}@media (prefers-reduced-motion:reduce){.theme-panel{animation:none}.theme-trigger,.theme-preview,.theme-chevron{transition:none}}
.hero{isolation:isolate}.hero-grid,.hero-bottom{z-index:1;position:relative}.hero-atmosphere{z-index:0;pointer-events:none;--field-veil:#101014;--nebula-purple:#9045c429;--nebula-pink:#ee157f1c;--field-line:#a178d2;position:absolute;inset:0;overflow:hidden}:root[data-theme=light] .hero-atmosphere{--field-veil:#faf9fc;--nebula-purple:#9045c416;--nebula-pink:#ee157f12;--field-line:#7838a4}.hero-nebula{border-radius:50%;width:95%;height:120%;animation:24s ease-in-out infinite alternate nebula-drift;position:absolute}.hero-nebula-purple{background:radial-gradient(ellipse, var(--nebula-purple), transparent 65%);top:-32%;left:-28%}.hero-nebula-pink{background:radial-gradient(ellipse, var(--nebula-pink), transparent 64%);animation-duration:31s;animation-direction:alternate-reverse;animation-delay:-12s;bottom:-65%;right:-24%}.hero-field-grid{background-image:linear-gradient(to right, var(--field-line) 1px, transparent 1px), linear-gradient(to bottom, var(--field-line) 1px, transparent 1px);opacity:.055;background-size:88px 88px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 70%,#000,#0000 72%);mask-image:radial-gradient(at 70%,#000,#0000 72%)}.hero-flow-lines{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.hero-flow-drift{transform-origin:50%;animation:26s ease-in-out infinite alternate field-flow-drift}.hero-flow-line{stroke:var(--field-line);stroke-width:.7px;opacity:.17}.hero-flow-line-secondary{stroke:var(--pink-text);opacity:.1}.hero-flow-signal{stroke:var(--purple);stroke-width:1.3px;stroke-dasharray:55 945;stroke-linecap:round;opacity:.55;animation:19s linear infinite field-signal}.hero-flow-signal-secondary{stroke:var(--pink-text);stroke-width:1px;opacity:.35;animation-duration:24s;animation-delay:-10s}.hero-atmosphere-vignette{background:linear-gradient(to bottom, transparent 65%, var(--field-veil)), linear-gradient(90deg, color-mix(in srgb, var(--field-veil) 35%, transparent), transparent 40%);position:absolute;inset:0}@keyframes nebula-drift{0%{transform:translate(-3%,1%)scale(.95)rotate(-8deg)}to{transform:translate(8%,-5%)scale(1.12)rotate(6deg)}}@keyframes field-flow-drift{0%{transform:translate(-1%,1%)rotate(-1deg)}to{transform:translate(1%,-1%)rotate(1deg)}}@keyframes field-signal{0%{stroke-dashoffset:1000px}to{stroke-dashoffset:0}}@media (max-width:650px){.hero-field-grid{opacity:.04;background-size:64px 64px}.hero-flow-line{opacity:.12}.hero-flow-signal{opacity:.35}.hero-nebula{width:140%}}.hero-atmosphere[data-active=false] *{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.hero-nebula,.hero-flow-drift,.hero-flow-signal{animation:none}.hero-flow-signal{display:none}}
.field-ambient,.interaction-field{pointer-events:none;width:100%;height:100%;display:block;position:fixed;inset:0}.field-ambient{z-index:-1}.interaction-field{z-index:80}
.background-motion-toggle{border:1px solid var(--line-strong);background:var(--bg-alt);width:44px;height:44px;color:var(--muted);border-radius:9px;flex:0 0 44px;justify-content:center;align-items:center;padding:0;transition:color .2s,border-color .2s,background .2s;display:inline-flex;position:relative}.background-motion-toggle[aria-pressed=true]{color:var(--purple);border-color:color-mix(in srgb, var(--purple) 45%, var(--line-strong));background:color-mix(in srgb, var(--purple) 7%, var(--bg-alt))}.background-motion-toggle[aria-pressed=false] svg{opacity:.6}.background-motion-toggle:hover{color:var(--text);border-color:var(--purple);background:var(--surface)}.background-motion-toggle:focus-visible{outline:2px solid var(--purple);outline-offset:4px}.background-motion-toggle:disabled{cursor:wait}.background-motion-toggle:after{content:attr(data-tooltip);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;border-radius:7px;padding:8px 11px;font-size:.75rem;font-weight:500;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 8px 24px #0002}.background-motion-toggle:is(:hover,:focus-visible):after{opacity:1;visibility:visible}:root[data-mouse-effects=off] .hero-art-canvas{transition:none;transform:none}@media (min-width:901px) and (max-width:1200px){.header-actions .theme-trigger{width:44px;padding:0}.header-actions .theme-trigger>span,.header-actions .theme-chevron{display:none}}@media (max-width:360px){.header-actions{gap:5px}}@media (prefers-reduced-motion:reduce){.background-motion-toggle{transition:none}}

