@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Outfit:wght@500;600;700&display=swap";.solar-shell{--bg: #f1ece4;--paper: #e8e1d8;--surface: #d8d0c5;--surface-strong: #c7bdb1;--text: #181512;--muted: #6d6259;--line: #18151238;--accent: #f04a18;--accent-soft: #f04a1820;--inverse: #15110f;--inverse-text: #f1ece4;--solar: #ff9e2c;--shadow: 0 32px 80px #1815121c;background:var(--bg)}html[data-theme=dark] .solar-shell{--bg: #11100f;--paper: #1d1a18;--surface: #24211e;--surface-strong: #2d2925;--text: #f1ece4;--muted: #b4aaa0;--line: #f1ece42d;--accent: #ff5a1f;--accent-soft: #ff5a1f22;--inverse: #f1ece4;--inverse-text: #15110f;--solar: #ff9e2c;--shadow: 0 32px 90px #0008}.solar-shell .solar-header{border-color:var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);color:var(--text)}.solar-shell .nav-links a,.solar-shell .theme-button{border-radius:0;color:var(--muted)}.solar-shell .nav-links a:hover,.solar-shell .nav-links a.active,.solar-shell .theme-button:hover{background:transparent;color:var(--text)}.solar-shell .nav-links a.active{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:6px}.solar-shell .resume-link{margin-left:.35rem;border:1px solid var(--line)!important;padding-inline:.8rem!important;text-decoration:none!important}.solar-shell .solar-footer{position:relative;overflow:hidden;border-color:var(--line);background:var(--bg)}.solar-shell .solar-footer:before{content:"";position:absolute;width:220px;height:70px;right:8%;top:-55px;border:1px solid var(--accent);border-radius:50%;transform:rotate(-8deg);opacity:.45}.solar-page{position:relative;overflow:hidden;background:var(--bg);color:var(--text)}.solar-page:before{content:"";position:fixed;z-index:0;inset:0;pointer-events:none;opacity:.15;background-image:repeating-linear-gradient(115deg,transparent 0 8px,currentColor 9px 10px);background-size:7px 9px;-webkit-mask-image:linear-gradient(to bottom,#0004,transparent 35%);mask-image:linear-gradient(to bottom,#0004,transparent 35%)}.solar-page>*{position:relative;z-index:1}.solar-index{margin:0;color:var(--accent);font-size:.7rem;font-weight:600;letter-spacing:.17em;text-transform:uppercase}.solar-link{display:inline-flex;align-items:center;gap:.55rem;width:-moz-fit-content;width:fit-content;color:var(--text);font-size:.78rem;font-weight:600;letter-spacing:.1em;text-decoration-color:var(--accent);text-underline-offset:6px;text-transform:uppercase}.solar-link svg{color:var(--accent);transition:transform .2s ease}.solar-link:hover svg{transform:translate(5px)}.solar-page-intro{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(3rem,10vw,9rem);align-items:end;min-height:58vh;padding-block:clamp(6rem,11vw,10rem) 4rem;border-bottom:1px solid var(--line)}.solar-page-intro h1{margin:.45rem 0 0;font-size:clamp(5rem,13vw,10rem);line-height:.78;letter-spacing:-.075em}.solar-page-intro h1 span{color:var(--accent)}.solar-page-intro>p{max-width:560px;margin:0 0 .5rem;color:var(--muted);font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.45}.solar-page-intro>i{position:absolute;right:3%;top:18%;width:150px;height:150px;border:1px solid var(--line);border-radius:50%;opacity:.65}.solar-page-intro>i:after{content:"";position:absolute;width:8px;height:8px;top:15px;left:24px;border-radius:50%;background:var(--accent);box-shadow:0 0 20px var(--accent)}.projects-intro{min-height:42vh;padding-block:clamp(4.5rem,7vw,6.5rem) 3rem}.orbit-projects{padding-block:clamp(3rem,6vw,5rem)}.orbit-project{display:grid;grid-template-columns:1.05fr .95fr;min-height:570px;margin-bottom:clamp(2.5rem,5vw,4.5rem);border-top:1px solid var(--line)}.orbit-project:last-child{margin-bottom:0}.orbit-project__visual{position:relative;min-height:500px;overflow:hidden;background:#15110f;color:#f1ece4}.orbit-project__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,6vw,5rem);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.orbit-project__meta{display:flex;gap:1rem;align-items:baseline}.orbit-project__meta span{color:var(--accent);font-size:.7rem}.orbit-project__meta p{color:var(--muted);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.orbit-project h2{margin:1.5rem 0;font-size:clamp(3.2rem,6vw,6rem)}.orbit-project__description{max-width:500px;color:var(--muted);font-size:1.05rem}.orbit-project .chips{margin:1rem 0 2rem}.orbit-project .chips span{border-color:var(--line)}.system-orbit{position:absolute;inset:50% auto auto 50%;border:1px solid #f1ece45c;border-radius:50%;transform:translate(-50%,-50%) rotate(-14deg)}.system-orbit--wide{width:78%;aspect-ratio:1.4}.system-orbit--tight{width:48%;aspect-ratio:1;border-color:#f04a187a}.system-core{position:absolute;inset:50% auto auto 50%;display:grid;place-items:center;width:240px;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 33% 28%,#ffb33e 0,#f04a18 26%,#a82915 58%,#15110f);box-shadow:-20px 25px 55px #000a,18px -10px 55px #f04a183b;animation:solar-breathe 9s ease-in-out infinite}.system-core:after{content:"";position:absolute;inset:-18%;border:1px solid #f04a184f;border-radius:50%}.system-core span{font:700 3.4rem/1 Outfit;letter-spacing:-.08em}.system-node{position:absolute;width:9px;height:9px;border-radius:50%;background:#ff9e2c;box-shadow:0 0 18px #ff5a1f}.system-node--one{top:25%;left:20%}.system-node--two{top:34%;right:14%}.system-node--three{bottom:16%;left:43%}.orbit-project--malun{grid-template-columns:.82fr 1.18fr}.orbit-project--malun .orbit-project__visual{order:2;min-height:610px;background:linear-gradient(145deg,#2d2925,#15110f 70%);perspective:900px}.orbit-project--malun .orbit-project__copy{border-left:1px solid var(--line);border-right:0}.learning-slab{position:absolute;inset:49% auto auto 50%;width:min(58%,330px);aspect-ratio:1.45;padding:0;border:0;background:none;color:inherit;cursor:pointer;transform:translate(-50%,-50%) rotateX(58deg) rotate(-28deg);transform-style:preserve-3d;animation:slab-drift 8s ease-in-out infinite}.learning-slab:focus-visible{outline:none}.learning-slab:focus-visible .learning-slab__face{outline:2px solid #ff9e2c;outline-offset:5px}.learning-slab__flip{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .95s cubic-bezier(.3,1.4,.45,1)}.learning-slab.is-flipped .learning-slab__flip{transform:rotateX(180deg)}.learning-slab__face{position:absolute;inset:0;display:grid;place-items:center;border:1px solid #f1ece44a;background:linear-gradient(135deg,#413b35,#1d1a18 63%);box-shadow:-15px 22px #0c0a09,-17px 25px #f04a18,-35px 55px 70px #000b;backface-visibility:hidden;transition:filter .25s ease}.learning-slab:hover .learning-slab__face{filter:brightness(1.12)}.learning-slab__face--back{transform:rotateX(180deg);border-color:#fff5;background:linear-gradient(135deg,#ff7a24,#c8360d 55%,#8f2412);box-shadow:-15px 22px #0c0a09,-17px 25px #f1ece4,-35px 55px 70px #000b}.learning-slab__answer{display:flex;flex-direction:column;align-items:center;gap:.2rem;transform:rotate(28deg)}.learning-slab__answer small{color:#ffe6d8;font:500 1.5rem/1 Georgia,serif;letter-spacing:.06em}.learning-slab .learning-slab__answer strong{transform:none;color:#fff;font:600 4.4rem/1 Outfit,sans-serif;letter-spacing:-.04em;text-shadow:0 6px 22px #5a1607aa}.learning-slab__face--back i{background:#fff;box-shadow:0 0 12px #fff}.visual-pill{position:absolute;z-index:2;left:50%;display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .9rem;border:1px solid #ff9e2c66;border-radius:99px;background:#15110fcc;color:#ffb08a;font:600 .72rem DM Sans,sans-serif;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transform:translate(-50%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:border-color .25s ease,color .25s ease;animation:projects-hint 2.6s ease-out infinite}.visual-pill svg{width:15px;height:15px;transition:transform .25s ease}.visual-pill:hover{border-color:#ff9e2c;color:#fff}.learning-hint{top:9%}.learning-hint.is-flipped{animation:none}.system-cta{bottom:7%}.orbit-project__visual--link{display:block;text-decoration:none}.orbit-project__visual--link:focus-visible{outline:2px solid #ff9e2c;outline-offset:-4px}.system-streams{position:absolute;inset:0;width:100%;height:100%}.system-streams path{fill:none;stroke:#ff9e2c;stroke-width:1.3;stroke-dasharray:1.2 3;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.45;animation:projects-stream 1.8s linear infinite;transition:opacity .4s ease,stroke .4s ease}.system-streams path:nth-child(2){animation-duration:2.3s}.system-streams path:nth-child(3){animation-duration:2s}@keyframes projects-stream{to{stroke-dashoffset:-8.4}}.system-core{transition:box-shadow .5s ease}.system-core span{position:relative;z-index:1}.system-core__magma,.system-core__shade{position:absolute;inset:0;overflow:hidden;border-radius:50%}.system-core__magma:before,.system-core__magma:after{content:"";position:absolute;inset:-25%;border-radius:50%}.system-core__magma:before{background:radial-gradient(circle at 30% 40%,#ffd27a 0 7%,#ffd27a00 22%),radial-gradient(circle at 70% 30%,#ffb33e 0 6%,#ffb33e00 18%),radial-gradient(circle at 58% 74%,#ff8a3a 0 9%,#ff8a3a00 26%),radial-gradient(circle at 22% 70%,#ffc45b 0 5%,#ffc45b00 15%);mix-blend-mode:screen;opacity:.55;filter:blur(7px);animation:projects-magma 26s linear infinite;transition:opacity .5s ease}.system-core__magma:after{background:radial-gradient(circle at 40% 60%,#5a1607 0 6%,#5a160700 18%),radial-gradient(circle at 76% 56%,#6b1a0a 0 5%,#6b1a0a00 16%),radial-gradient(circle at 36% 22%,#7a200c 0 4%,#7a200c00 14%);mix-blend-mode:multiply;opacity:.55;filter:blur(6px);animation:projects-magma 38s linear infinite reverse}@keyframes projects-magma{to{transform:rotate(360deg)}}.system-core__shade{background:radial-gradient(circle at 33% 28%,#15110f00 38%,#15110f55 72%,#15110fbb)}.orbit-project__visual--link:hover .system-core{box-shadow:-20px 25px 55px #000a,0 0 70px #ff7a2477,0 0 150px #f04a1840}.orbit-project__visual--link:hover .system-core__magma:before{opacity:.85}.orbit-project__visual--link:hover .system-streams path{opacity:1;stroke:#ffc45b}.orbit-project__visual--link:hover .visual-pill{border-color:#ff9e2c;color:#fff}.orbit-project__visual--link:hover .visual-pill svg{transform:translate(4px)}@keyframes projects-hint{0%{box-shadow:0 0 #ff9e2c55}70%,to{box-shadow:0 0 0 10px #ff9e2c00}}.learning-slab strong{transform:rotate(28deg);color:#f1ece4;font:500 8rem/1 Georgia,serif;text-shadow:0 7px 28px #000}.learning-slab i{position:absolute;right:8%;top:8%;width:35px;height:3px;background:#f04a18;box-shadow:0 0 12px #f04a18}.learning-sequence{position:absolute;display:flex;gap:.75rem;align-items:center;right:6%;bottom:5%;color:#e6ded4a8;font-size:.62rem;letter-spacing:.13em;text-transform:uppercase}.learning-sequence b{width:24px;height:1px;background:#f04a18}.orbit-project__status{display:inline-flex;align-items:center;gap:.55rem;width:-moz-fit-content;width:fit-content;margin:-.6rem 0 1.4rem;padding:.3rem .75rem;border:1px solid var(--line);border-radius:99px;color:var(--muted);font-size:.76rem;font-weight:600}.orbit-project__status i{width:7px;height:7px;border-radius:50%;background:#3ccf7a;box-shadow:0 0 #3ccf7a80;animation:projects-live 2.2s ease-out infinite}.orbit-project__status.is-malun i{background:#ff9e2c;box-shadow:0 0 #ff9e2c80;animation-name:projects-live-amber}@keyframes projects-live{70%,to{box-shadow:0 0 0 7px #3ccf7a00}}@keyframes projects-live-amber{70%,to{box-shadow:0 0 0 7px #ff9e2c00}}.orbit-project__facts{display:grid;gap:.4rem;margin:1.2rem 0 0;padding:0;list-style:none}.orbit-project__facts li{position:relative;padding-left:1.2rem;font-size:.95rem}.orbit-project__facts li:before{content:"";position:absolute;top:calc(.75em - 1px);left:0;width:.65rem;height:2px;background:var(--accent)}.orbit-project--atl .system-orbit--wide{animation:projects-precess 48s linear infinite}.orbit-project--atl .system-orbit--tight{animation:projects-orbit 14s linear infinite}.orbit-project--atl .system-orbit--tight:after{content:"";position:absolute;top:50%;left:-4px;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:#ffc45b;box-shadow:0 0 12px #ff9e2c}@keyframes projects-precess{0%{transform:translate(-50%,-50%) rotate(-14deg)}to{transform:translate(-50%,-50%) rotate(346deg)}}@keyframes projects-orbit{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.orbit-project--atl .system-node{animation:projects-twinkle 3.2s ease-in-out infinite}.orbit-project--atl .system-node--two{animation-delay:1.1s}.orbit-project--atl .system-node--three{animation-delay:2.2s}@keyframes projects-twinkle{50%{opacity:.35;transform:scale(.7)}}.learning-sequence span{animation:projects-step 4.5s ease-in-out infinite}.learning-sequence span:nth-of-type(2){animation-delay:1.5s}.learning-sequence span:nth-of-type(3){animation-delay:3s}@keyframes projects-step{0%,30%,to{color:#e6ded4a8}8%,22%{color:#ff9e2c;text-shadow:0 0 12px #ff5a1f}}.projects-exit{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:2.5rem clamp(4rem,7vw,6rem);border-top:1px solid var(--line)}.projects-bridge{display:inline-flex;align-items:center;gap:.7rem;color:var(--text);font:600 clamp(1.05rem,2vw,1.35rem) "Outfit",sans-serif;text-decoration:none}.projects-bridge svg{flex:none;width:20px;color:var(--accent);transition:transform .2s ease}.projects-bridge:hover svg{transform:translate(5px)}.trajectory-intro>i{width:250px;height:90px;border-radius:50%;transform:rotate(-18deg)}.trajectory-timeline{position:relative;padding-block:clamp(3.5rem,6vw,5.5rem)}.trajectory-line{position:absolute;z-index:-1;top:2.5rem;bottom:2rem;left:7.25rem;width:1px;background:linear-gradient(var(--accent),var(--line) 25% 78%,transparent);transform:rotate(2deg);transform-origin:top}.trajectory-entry{display:grid;grid-template-columns:110px .8fr 1.2fr;gap:clamp(2rem,6vw,6rem);padding-bottom:clamp(3.5rem,6vw,5.5rem)}.trajectory-entry:last-child{padding-bottom:0}.trajectory-anchor{position:relative;color:var(--accent);font-size:.72rem;letter-spacing:.12em}.trajectory-anchor i{position:absolute;right:-10px;top:3px;width:15px;height:15px;border:3px solid var(--bg);border-radius:50%;background:var(--accent);box-shadow:0 0 0 1px var(--accent),0 0 22px var(--accent)}.trajectory-role>p{color:var(--accent);font-size:.7rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.trajectory-role>a{display:flex;align-items:flex-start;gap:.6rem;width:-moz-fit-content;width:fit-content;text-decoration:none}.trajectory-role>a svg{margin-top:.4rem;color:var(--accent)}.trajectory-role h2{margin-bottom:1rem;font-size:clamp(2.5rem,5vw,4.8rem)}.trajectory-role h3{margin-bottom:.6rem;color:var(--muted);font-size:1.15rem;line-height:1.35;letter-spacing:-.015em}.trajectory-role time{color:var(--text);font:600 .8rem DM Sans;letter-spacing:.11em;text-transform:uppercase}.trajectory-detail{padding-top:2rem;border-top:1px solid var(--line);color:var(--muted)}.trajectory-story{color:var(--text);font:500 1.2rem Outfit}.trajectory-detail ul{padding-left:1rem}.trajectory-detail li{margin-bottom:.55rem}.education-plane{padding-block:clamp(3rem,6vw,5rem);background:var(--surface);transform:skewY(-1.4deg)}.education-plane>.container{display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(3rem,8vw,8rem);transform:skewY(1.4deg)}.education-plane h2,.experience-index h2{margin-top:.6rem;font-size:clamp(2.6rem,5vw,4.5rem)}.education-plane article{display:grid;grid-template-columns:45px 1fr;padding:1.25rem 0;border-top:1px solid var(--line)}.education-plane article span{grid-row:1 / 3;color:var(--accent);font-size:.7rem}.education-plane article h3{margin-bottom:.35rem;font-size:1.05rem;letter-spacing:-.01em}.education-plane article p{margin:0;color:var(--muted);font-size:.9rem}.experience-index{padding-block:clamp(4rem,7vw,6rem)}.language-index{display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(3rem,8vw,8rem);padding-bottom:clamp(3.5rem,6vw,5rem)}.language-index>div{display:grid;grid-template-columns:repeat(3,1fr)}.language-index dl{margin:0;padding:1rem 0;border-top:1px solid var(--line)}.language-index dt{font:600 1rem Outfit}.language-index dd{margin:.2rem 0 0;color:var(--muted)}.skills-index{display:grid;grid-template-columns:.65fr 1.35fr;gap:0 clamp(3rem,8vw,8rem)}.skills-index header{grid-row:1 / 5}.skills-index article{display:grid;grid-template-columns:38px .7fr 1.3fr;gap:1rem;padding:1.35rem 0;border-top:1px solid var(--line)}.skills-index article span{color:var(--accent);font-size:.7rem}.skills-index article h3{margin:0;font-size:1rem;letter-spacing:-.01em}.skills-index article p{margin:0;color:var(--muted);font-size:.9rem}.atl-orbit-page .atl-solar-hero{position:relative;min-height:790px;border-color:var(--line)}.atl-solar-hero>.container{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;-moz-column-gap:2rem;column-gap:2rem;row-gap:clamp(2rem,4vw,3rem);min-height:790px;padding-block:clamp(3rem,7vw,6rem)}.atl-orbit-page .atl-brand{position:relative;z-index:2;grid-column:1;grid-row:1;align-self:start;margin:0}.atl-orbit-page .atl-brand img{width:clamp(180px,22vw,300px);margin:0;filter:brightness(0) saturate(100%) invert(34%) sepia(96%) saturate(2798%) hue-rotate(355deg) brightness(98%) contrast(91%)}html[data-theme=dark] .atl-orbit-page .atl-brand img{filter:brightness(0) saturate(100%) invert(44%) sepia(95%) saturate(2842%) hue-rotate(350deg) brightness(104%) contrast(101%)}.atl-orbit-page .atl-brand-subtitle{margin-top:.25rem;color:var(--text);font-size:.68rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.atl-orbit-page .atl-hero-copy{z-index:2;grid-column:1;grid-row:2;align-self:end;max-width:700px;padding-bottom:2rem}.atl-orbit-page .atl-hero h1{font-size:clamp(5rem,11vw,9rem);line-height:.78;letter-spacing:-.075em}.atl-orbit-page .atl-value{color:var(--text)}.atl-solar-object{position:absolute;inset:5% -14% 0 45%;overflow:hidden}.atl-solar-disc{position:absolute;right:4%;top:16%;width:min(42vw,590px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 31% 26%,#ffc45b 0,#ff9e2c 16%,#f04a18 43%,#a82915 68%,#211410);box-shadow:-30px 45px 90px #18151278,0 0 90px #f04a1835;animation:solar-breathe 10s ease-in-out infinite}.atl-solar-disc:after{content:"";position:absolute;inset:0;border-radius:inherit;background:repeating-linear-gradient(9deg,transparent 0 12px,#4e140d14 14px 15px);mix-blend-mode:multiply}.atl-solar-arc{position:absolute;right:-3%;top:9%;width:min(52vw,730px);aspect-ratio:1.35;border:1px solid var(--line);border-radius:50%;transform:rotate(-20deg)}.atl-solar-object>i{position:absolute;right:50%;top:13%;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 18px var(--accent)}.atl-solar-object>span{position:absolute;right:8%;bottom:9%;color:var(--muted);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase}.atl-orbit-page .atl-services{padding-block:clamp(6rem,10vw,9rem)}.atl-orbit-page .atl-section-heading{display:grid;grid-template-columns:.55fr 1.45fr;gap:4rem;max-width:none}.atl-orbit-page .atl-section-heading h2{font-size:clamp(2.8rem,5vw,5rem)}.atl-service-quadrants .atl-service-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto 1fr;gap:1.25rem 1.5rem;min-width:0;min-height:260px;padding:2.25rem 0;border-right:0}.atl-service-quadrants .atl-service-card:nth-child(odd){padding-right:clamp(2rem,4vw,4rem)}.atl-service-quadrants .atl-service-card:nth-child(2n){padding-left:clamp(2rem,4vw,4rem);border-left:1px solid var(--line)}.atl-service-quadrants .atl-service-label{align-items:center;justify-content:flex-start;gap:.85rem;margin:0}.atl-service-quadrants .atl-service-label svg{width:20px}.atl-service-quadrants h3{align-self:center;margin:0;font-size:clamp(1.5rem,2.2vw,2rem)}.atl-service-quadrants .atl-service-card>strong{grid-column:1 / -1;align-self:end;max-width:34rem;font-size:1.08rem}.atl-service-quadrants .atl-service-card>p{grid-column:1 / -1;max-width:38rem;margin-top:0;line-height:1.55}.atl-orbit-page .atl-trust{position:relative;margin-block:clamp(1.5rem,3vw,2.5rem);padding-block:clamp(4rem,7vw,6rem);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.atl-orbit-page .atl-trust:before{content:"";position:absolute;left:31%;top:18%;width:42%;height:48%;border:1px solid var(--accent);border-radius:50%;transform:rotate(-12deg);opacity:.22;pointer-events:none}.atl-orbit-page .atl-contact{background:var(--surface)}.atl-orbit-page .atl-contact-links>a:hover{background:var(--paper)}@keyframes solar-breathe{0%,to{transform:translate(-50%,-50%) scale(1);filter:brightness(1)}50%{transform:translate(-50%,-50%) scale(1.018);filter:brightness(1.06)}}@keyframes slab-drift{0%,to{transform:translate(-50%,-50%) rotateX(58deg) rotate(-28deg) translateY(0)}50%{transform:translate(-50%,-50%) rotateX(58deg) rotate(-27deg) translateY(-8px)}}.atl-solar-disc{animation-name:atl-solar-pulse}@keyframes atl-solar-pulse{0%,to{transform:translateY(0) rotate(0);filter:brightness(1)}50%{transform:translateY(-7px) rotate(1deg);filter:brightness(1.05)}}@media(max-width:900px){.solar-shell .solar-header .nav-links{background:var(--bg);border-color:var(--line)}.solar-shell .resume-link{margin-left:0}.solar-page-intro{grid-template-columns:1fr;min-height:auto;gap:2rem}.solar-page-intro h1{font-size:clamp(4.5rem,18vw,8rem)}.orbit-project,.orbit-project--malun{grid-template-columns:1fr}.orbit-project--malun .orbit-project__visual{order:0;min-height:450px}.orbit-project__visual{min-height:430px}.trajectory-line{left:4.5rem}.trajectory-entry{grid-template-columns:55px 1fr;gap:1.5rem}.trajectory-detail{grid-column:2}.education-plane>.container,.language-index,.skills-index{grid-template-columns:1fr;gap:2rem}.skills-index header{grid-row:auto}.atl-solar-hero>.container{grid-template-columns:1fr;min-height:720px}.atl-solar-object{inset:0 -24% 30% 32%;opacity:.75}.atl-orbit-page .atl-section-heading{grid-template-columns:1fr;gap:1rem}.atl-service-quadrants .atl-service-card:nth-child(odd),.atl-service-quadrants .atl-service-card:nth-child(2n){padding-inline:0;border-left:0}}@media(max-width:560px){.solar-page:before{opacity:.08}.solar-page-intro{padding-block:4.5rem 3rem}.solar-page-intro>i{display:none}.solar-page-intro h1{font-size:clamp(4rem,21vw,6rem)}.orbit-project{min-height:0}.orbit-project__visual,.orbit-project--malun .orbit-project__visual{min-height:310px}.orbit-project__copy{padding:2rem 1.25rem}.system-core{width:155px}.system-core span{font-size:2.5rem}.learning-slab{width:62%}.learning-slab strong{font-size:5.5rem}.learning-slab .learning-slab__answer strong{font-size:2.8rem}.learning-slab__answer small{font-size:1.05rem}.learning-sequence,.trajectory-line{display:none}.trajectory-entry{grid-template-columns:32px 1fr;gap:1rem}.trajectory-anchor i{right:1px}.trajectory-role h2{font-size:clamp(2.3rem,12vw,3.6rem)}.education-plane{transform:none}.education-plane>.container{transform:none}.language-index>div{grid-template-columns:1fr}.skills-index article{grid-template-columns:30px 1fr}.skills-index article p{grid-column:2}.atl-orbit-page .atl-solar-hero,.atl-solar-hero>.container{min-height:680px}.atl-orbit-page .atl-brand img{width:170px}.atl-solar-object{inset:3% -55% 39% 10%;opacity:.63}.atl-solar-disc{width:390px}.atl-solar-arc{width:470px}.atl-orbit-page .atl-hero h1{font-size:clamp(4.2rem,21vw,6rem)}.atl-service-quadrants .atl-service-card{min-height:0}}@media(prefers-reduced-motion:reduce){.system-core,.learning-slab,.atl-solar-disc{animation:none!important}.orbit-project__status i,.orbit-project--atl .system-orbit,.orbit-project--atl .system-node,.learning-sequence span,.visual-pill,.system-streams path,.system-core__magma:before,.system-core__magma:after{animation:none}}.atl-orbit-page{--atl-cta: #d13a0e}.atl-orbit-page .atl-hero h1.atl-hero-title{margin:0 0 1.5rem;font-size:clamp(3rem,6.4vw,6rem);line-height:.95;letter-spacing:-.05em}.atl-hero-title em{display:block;font-style:normal;color:var(--accent)}.atl-orbit-page .atl-hero-intro{max-width:620px;color:var(--text);opacity:.86}.atl-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.atl-button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:52px;padding:.85rem 1.35rem;border:1px solid var(--line);background:color-mix(in srgb,var(--bg) 75%,transparent);color:var(--text);font:600 1rem DM Sans,sans-serif;text-decoration:none;transition:border-color .2s,filter .2s}.atl-button svg{width:19px;flex:none}.atl-button:hover{border-color:var(--accent)}.atl-button--primary{border-color:var(--atl-cta);background:var(--atl-cta);color:#fff}.atl-button--primary:hover{border-color:var(--atl-cta);filter:brightness(1.08)}.atl-reassurance{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;margin:1.5rem 0 0;padding:0;list-style:none}.atl-reassurance li{display:inline-flex;align-items:center;gap:.4rem;color:var(--muted);font-size:.88rem}.atl-reassurance svg{width:15px;color:var(--accent)}.atl-orbit-page .atl-pains{padding-top:clamp(5rem,9vw,8rem)}.atl-pain-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.atl-pain-list li{position:relative;padding:1.75rem 1.75rem 1.75rem 3rem;border-bottom:1px solid var(--line);font:500 clamp(1.1rem,1.6vw,1.35rem)/1.4 "Outfit",sans-serif}.atl-pain-list li:nth-child(odd){border-right:1px solid var(--line)}.atl-pain-list li:before{content:"";position:absolute;left:.5rem;top:2.15rem;width:13px;height:13px;border:2px solid var(--accent);border-radius:50%}.atl-pains-answer{margin:2rem 0 0;color:var(--accent);font:500 clamp(1.15rem,2vw,1.5rem)/1.4 "Outfit",sans-serif}.atl-examples{grid-column:1 / -1}.atl-examples small{display:block;margin-bottom:.5rem;color:var(--muted);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}.atl-examples ul{margin:0;padding:0;list-style:none}.atl-examples li{position:relative;padding:.4rem 0 .4rem 1.4rem;color:var(--muted);line-height:1.45}.atl-examples li:before{content:"";position:absolute;left:0;top:1.1em;width:.75rem;height:1px;background:var(--accent)}.atl-orbit-page .atl-steps{padding-bottom:clamp(5rem,9vw,8rem)}.atl-step-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,3vw,3rem);margin:0;padding:0;list-style:none}.atl-step-list li{padding-top:1.5rem;border-top:1px solid var(--line)}.atl-step-list span{display:grid;place-items:center;width:2.6rem;height:2.6rem;margin-bottom:1.25rem;border:1px solid var(--accent);border-radius:50%;color:var(--accent);font:600 1rem Outfit,sans-serif}.atl-step-list h3{margin-bottom:.6rem;font-size:clamp(1.35rem,2vw,1.75rem)}.atl-step-list p{margin:0;color:var(--muted)}.atl-trust-photo{display:block;width:min(100%,300px);aspect-ratio:1;margin-top:2.5rem;-o-object-fit:cover;object-fit:cover;border-radius:50%;box-shadow:0 0 0 1px var(--line),0 0 0 12px var(--accent-soft);filter:saturate(.85)}.atl-orbit-page .atl-trust-copy p:first-child{color:var(--text)}.atl-orbit-page .atl-contact h2{font-size:clamp(2rem,3.6vw,3.2rem)}.atl-sticky-cta{display:none}.atl-missions-teaser{display:inline-flex;align-items:center;gap:.45rem;margin-top:1.25rem;color:var(--muted);font-size:.9rem;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px}.atl-missions-teaser:hover{color:var(--accent);text-decoration-color:currentColor}.atl-missions-teaser svg{flex:none;transition:transform .2s}.atl-missions-teaser:hover svg{transform:translate(3px)}.atl-missions{scroll-margin-top:74px;padding-block:clamp(5rem,9vw,8rem);background:var(--surface)}.atl-missions-intro{display:grid;grid-template-columns:.55fr 1.45fr;gap:4rem;margin-bottom:3rem}.atl-missions-intro h2{font-size:clamp(2.8rem,5vw,5rem)}.atl-missions-map{display:block;width:min(100%,260px);margin-top:2rem;overflow:visible}.atl-missions-globe circle,.atl-missions-globe ellipse{fill:none;stroke:var(--line);stroke-width:1}.atl-missions-globe ellipse:first-of-type{transform-box:fill-box;transform-origin:center;animation:atl-globe-spin 9s ease-in-out infinite alternate}@keyframes atl-globe-spin{0%{transform:scaleX(1)}to{transform:scaleX(-1)}}.atl-missions-orbit{fill:none;stroke:var(--line);stroke-dasharray:2 6;transform-origin:120px 120px;animation:atl-orbit 40s linear infinite}.atl-missions-route{fill:none;stroke:var(--muted);stroke-dasharray:3 5;opacity:.45}.atl-missions-comet{fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-dasharray:14 100;stroke-dashoffset:14;filter:drop-shadow(0 0 4px var(--accent));animation:atl-route 4.5s cubic-bezier(.45,0,.2,1) infinite}@keyframes atl-route{0%{stroke-dashoffset:14;opacity:0}10%,85%{opacity:1}to{stroke-dashoffset:-100;opacity:0}}.atl-missions-city{fill:var(--accent);filter:drop-shadow(0 0 6px var(--accent))}.atl-missions-city--far{animation:atl-arrive 4.5s ease-out infinite}@keyframes atl-arrive{0%,80%{r:4}88%{r:7}to{r:4}}.atl-missions-map text{fill:var(--muted);font:600 9px DM Sans,sans-serif;letter-spacing:.14em;text-transform:uppercase}.atl-missions-lead{max-width:760px;margin:2rem 0 0;color:var(--text);font-size:clamp(1.05rem,1.5vw,1.2rem);opacity:.86}.atl-missions-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(2rem,4vw,4rem);margin:0 0 2.5rem;padding:0;list-style:none}.atl-missions-list li{padding:1.5rem 0;border-top:1px solid var(--line)}.atl-missions-list li.reveal{transition-delay:calc(var(--i, 0) * .11s)}.atl-missions-list h3{margin-bottom:.5rem;font-size:clamp(1.2rem,1.8vw,1.5rem)}.atl-missions-list p{margin:0;color:var(--muted);line-height:1.5}.atl-missions .atl-actions{margin-top:0}.atl-solar-object>i:after{content:"";position:absolute;inset:0;border:1px solid var(--accent);border-radius:50%;animation:atl-ping 3.2s ease-out infinite}@keyframes atl-ping{0%{transform:scale(1);opacity:.9}70%,to{transform:scale(5);opacity:0}}.atl-orbit-page .atl-pain-list li.reveal,.atl-orbit-page .atl-service-card.reveal,.atl-orbit-page .atl-step-list li.reveal{transition-delay:calc(var(--i, 0) * .11s)}.atl-pain-list li:before{transition:background .45s ease,box-shadow .45s ease;transition-delay:calc(.45s + var(--i, 0) * .18s)}.atl-pain-list li.is-visible:before{background:var(--accent);box-shadow:0 0 12px var(--accent)}.atl-examples li:before{width:0;transition:width .5s ease calc(.5s + var(--i, 0) * .11s + var(--j, 0) * .12s)}.atl-service-card.is-visible .atl-examples li:before{width:.75rem}.atl-step-list{position:relative}.atl-step-list:after{content:"";position:absolute;top:-4px;left:0;width:8px;height:8px;border-radius:50%;background:#ffc45b;box-shadow:0 0 12px #ff9e2c;animation:atl-comet 5.5s cubic-bezier(.45,0,.2,1) infinite}@keyframes atl-comet{0%{left:0;opacity:0}8%,86%{opacity:1}to{left:calc(100% - 8px);opacity:0}}.atl-step-list span{transition:background .4s ease,color .4s ease,box-shadow .4s ease;transition-delay:calc(.55s + var(--i, 0) * .35s)}.atl-step-list li.is-visible span{background:var(--atl-cta);border-color:var(--atl-cta);color:#fff;box-shadow:0 0 16px color-mix(in srgb,var(--accent) 45%,transparent)}.atl-trust-orbit{position:relative;width:-moz-fit-content;width:fit-content;margin-top:2.5rem}.atl-trust-orbit .atl-trust-photo{margin-top:0}.atl-trust-orbit>span{position:absolute;inset:-26px;border:1px dashed var(--line);border-radius:50%;animation:atl-orbit 18s linear infinite;pointer-events:none}.atl-trust-orbit>span:after{content:"";position:absolute;top:50%;right:-5px;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px var(--accent)}@keyframes atl-orbit{to{transform:rotate(360deg)}}@media(max-width:900px){.atl-pain-list,.atl-step-list{grid-template-columns:1fr}.atl-step-list:after{display:none}.atl-pain-list li:nth-child(odd){border-right:0}.atl-missions-list{grid-template-columns:1fr}.atl-missions-intro{grid-template-columns:1fr;gap:1rem}.atl-missions-intro>div:first-child{display:contents}.atl-missions-intro .eyebrow{margin:0}.atl-missions-map{order:2;width:200px;margin:1rem auto 0}.atl-sticky-cta{position:fixed;z-index:60;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1fr;gap:.6rem;padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);visibility:hidden;transform:translateY(110%);transition:transform .3s ease,visibility .3s}.atl-sticky-cta.is-visible{visibility:visible;transform:none}.atl-sticky-cta a{display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;border:1px solid var(--line);color:var(--text);font-weight:600;text-decoration:none}.atl-sticky-cta a:first-child{border-color:var(--atl-cta);background:var(--atl-cta);color:#fff}.atl-sticky-cta svg{width:18px}.solar-shell:has(.atl-sticky-cta) .site-footer{padding-bottom:5.5rem}}@media(max-width:560px){.atl-orbit-page .atl-hero h1.atl-hero-title{font-size:clamp(2.5rem,11.5vw,3.4rem)}.atl-orbit-page .atl-solar-object{inset:-4% -70% 55% 28%;opacity:.5}.atl-orbit-page .atl-brand-subtitle{letter-spacing:.1em}.atl-button{flex:1 1 100%}.atl-pain-list li{padding:1.4rem 0 1.4rem 2.2rem}.atl-pain-list li:before{left:0;top:1.8rem}.atl-trust-photo{width:170px;margin-top:1.75rem}.atl-trust-orbit{margin:2.5rem 0 1rem 26px}.atl-trust-orbit>span{inset:-18px}}@media(prefers-reduced-motion:reduce){.atl-solar-object>i:after,.atl-step-list:after{display:none}.atl-trust-orbit>span{animation:none}.atl-missions-globe ellipse,.atl-missions-orbit,.atl-missions-city--far{animation:none!important}.atl-missions-comet{display:none}}.contact-block{--contact-night: #15110f;--contact-ink: #f1ece4;--contact-ink-muted: #b4aaa0;--contact-hot: #ff5a1f;--contact-cta: #d13a0e;position:relative;overflow:hidden;padding-block:clamp(4rem,7vw,6rem);background:var(--contact-night);color:var(--contact-ink)}html[data-theme=dark] .contact-block{background:#1b1816;border-top:1px solid var(--line)}.contact-block>.container{position:relative;z-index:1}.contact-block h2{margin:0 0 .8rem;font-size:clamp(2.3rem,4.6vw,4rem)}.contact-block>.container>p{max-width:520px;margin:0;color:var(--contact-ink-muted)}.contact-block__orbit{position:absolute;top:50%;right:-200px;width:560px;height:560px;margin-top:-280px;border:1px dashed #f1ece426;border-radius:50%;animation:contact-spin 45s linear infinite;pointer-events:none}.contact-block__orbit:after{content:"";position:absolute;top:50%;left:-5px;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:var(--contact-hot);box-shadow:0 0 16px var(--contact-hot)}@keyframes contact-spin{to{transform:rotate(360deg)}}.contact-block__actions{display:grid;grid-template-columns:1.3fr 1.3fr repeat(3,minmax(0,1fr));gap:.75rem;margin-top:2.5rem}.contact-card{position:relative;display:flex;flex-direction:column;gap:1.1rem;min-width:0;padding:1.15rem 1.15rem 1.25rem;border:1px solid #f1ece42e;color:var(--contact-ink);text-decoration:none;transition:transform .25s ease,border-color .25s ease,background .25s ease}.contact-card:hover{transform:translateY(-4px);border-color:var(--contact-hot);background:#ff5a1f0f}.contact-card__icon{position:relative;display:grid;place-items:center;width:44px;height:44px;border:1px solid #f1ece44d;border-radius:50%}.contact-card__icon svg{width:19px}.contact-card__icon i{position:absolute;inset:-7px;border-radius:50%;opacity:0;transition:opacity .25s ease}.contact-card__icon i:after{content:"";position:absolute;top:-3px;left:50%;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--contact-hot);box-shadow:0 0 10px var(--contact-hot)}.contact-card:hover .contact-card__icon i{opacity:1;animation:contact-spin 1.6s linear infinite}.contact-card__text{display:flex;flex-direction:column;gap:.2rem;min-width:0}.contact-card strong{font:600 1.2rem Outfit,sans-serif;letter-spacing:-.02em}.contact-card small{display:flex;align-items:center;gap:.45rem;color:var(--contact-ink-muted);font-size:.8rem;overflow-wrap:anywhere}.contact-card__arrow{position:absolute;top:1.15rem;right:1.1rem;width:18px;color:var(--contact-ink-muted);transition:transform .25s ease,color .25s ease}.contact-card:hover .contact-card__arrow{color:var(--contact-hot);transform:translate(3px,-3px)}.contact-card:hover .contact-card__arrow.is-download{transform:none;animation:contact-drop .9s ease-in-out infinite}@keyframes contact-drop{50%{transform:translateY(4px)}}.contact-card.is-primary{border-color:transparent;background:linear-gradient(135deg,#c8360d,#ff7a24);color:#fff;box-shadow:0 18px 40px #f04a1833}.contact-card.is-primary:hover{background:linear-gradient(135deg,#d63c0f,#ff8a3a)}.contact-card.is-primary .contact-card__icon{border-color:#ffffff80}.contact-card.is-primary .contact-card__icon i:after{background:#fff;box-shadow:0 0 10px #fff}.contact-card.is-primary small,.contact-card.is-primary .contact-card__arrow{color:#ffe6d8}.contact-card.is-primary:hover .contact-card__arrow{color:#fff}.contact-card small b{width:7px;height:7px;border-radius:50%;background:#9dffc4;box-shadow:0 0 #9dffc480;animation:contact-live 2s ease-out infinite}@keyframes contact-live{70%,to{box-shadow:0 0 0 7px #9dffc400}}.contact-block__business{display:inline-flex;align-items:center;gap:.6rem;width:-moz-fit-content;width:fit-content;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #f1ece42e;color:#ffb08a;font:600 1.1rem Outfit,sans-serif;text-decoration:none}.contact-block__business svg{width:18px;transition:transform .2s ease}.contact-block__business:hover svg{transform:translate(5px)}@media(max-width:900px){.contact-block__actions{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-card.is-primary{grid-column:1 / -1}}@media(max-width:560px){.contact-block__actions>a:nth-child(2){grid-column:1 / -1}.contact-card{padding:1rem}.contact-block__orbit{right:-320px}}@media(prefers-reduced-motion:reduce){.contact-block__orbit,.contact-card small b,.contact-card:hover .contact-card__icon i,.contact-card:hover .contact-card__arrow.is-download{animation:none}.contact-card:hover{transform:none}}.landing-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(2rem,6vw,5rem);align-items:center;min-height:calc(100svh - 74px);padding-block:clamp(3rem,6vw,5rem)}.landing-hero__overline{margin:0 0 1.25rem;font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.landing-hero h1{margin:0;font-size:clamp(4.8rem,10.4vw,10rem);font-weight:500;line-height:.79;letter-spacing:-.075em}.landing-hero h1 span{display:block;margin-left:clamp(2.5rem,8vw,8rem);font-style:italic;font-weight:500}.landing-hero__intro{margin:clamp(2.2rem,5vh,3.5rem) 0 0 clamp(2.5rem,8vw,8rem)}.landing-hero__lead{max-width:570px;margin:0;font:500 clamp(1.35rem,2.2vw,2.15rem)/1.22 "Outfit",sans-serif;letter-spacing:-.035em}.landing-hero__lead em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.01em}.landing-hero__status{display:inline-flex;align-items:center;gap:.55rem;margin:1.5rem 0 0;padding:.3rem .75rem;border:1px solid var(--line);border-radius:99px;color:var(--muted);font-size:.78rem;font-weight:600}.landing-hero__status i{width:7px;height:7px;border-radius:50%;background:#3ccf7a;box-shadow:0 0 #3ccf7a80;animation:landing-live 2.2s ease-out infinite}@keyframes landing-live{70%,to{box-shadow:0 0 0 7px #3ccf7a00}}.landing-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}.landing-button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:50px;padding:.8rem 1.2rem;border:1px solid var(--line);color:var(--text);font:600 .95rem DM Sans,sans-serif;text-decoration:none;transition:border-color .25s ease,filter .25s ease}.landing-button svg{width:17px;transition:transform .25s ease}.landing-button:hover{border-color:var(--accent)}.landing-button:hover svg{transform:translate(4px)}.landing-button--primary{border-color:#d13a0e;background:#d13a0e;color:#fff}.landing-button--primary:hover{border-color:#d13a0e;filter:brightness(1.08)}.landing-portrait{position:relative;justify-self:stretch;width:100%;aspect-ratio:1}.landing-portrait__sun{position:absolute;top:-8%;left:20%;width:124%;height:124%;border-radius:50%;background:radial-gradient(circle at 32% 28%,#ffc45b 0,#ff9e2c 14%,#f04a18 42%,#a82915 68%,#211410);box-shadow:0 0 100px #f04a1850;animation:landing-breathe 10s ease-in-out infinite}@keyframes landing-breathe{50%{transform:scale(1.02);filter:brightness(1.06)}}.landing-portrait__photo{position:absolute;top:20%;left:-4%;width:72%;aspect-ratio:.84;overflow:hidden;border-radius:48% 48% 43% 43%/39% 39% 58% 58%;background:#2a1d17;box-shadow:-18px 30px 70px #000b}.landing-portrait__photo img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:grayscale(1) sepia(.2) contrast(1.08) brightness(.96)}.landing-portrait__photo:after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,#ffb22926 15%,#b92c1640 92%);mix-blend-mode:color;pointer-events:none}.landing-portrait__orbit{position:absolute;inset:0;width:100%;height:100%;overflow:visible;color:var(--text)}.landing-portrait__orbit path{fill:none;stroke:currentColor;stroke-opacity:.28;stroke-width:1.2;vector-effect:non-scaling-stroke}.landing-portrait__orbit.is-front path{stroke-opacity:.6}.landing-portrait__orbit circle{fill:#ffc45b;filter:drop-shadow(0 0 4px #ff9e2c)}.landing-doors{padding-block:clamp(4rem,7vw,6rem)}.landing-heading{margin-bottom:clamp(2rem,4vw,3rem)}.landing-heading h2{margin:.7rem 0 0;font-size:clamp(2.3rem,4.6vw,4.2rem)}.landing-doors__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.landing-door{display:flex;flex-direction:column;border:1px solid var(--line);background:var(--paper);color:var(--text);text-decoration:none;transition:opacity .7s ease,transform .3s ease,border-color .3s ease,box-shadow .3s ease}.landing-door:hover{transform:translateY(-5px);border-color:var(--accent);box-shadow:var(--shadow)}.landing-door__visual{position:relative;height:170px;overflow:hidden;background:#15110f;color:#f1ece4}.landing-door__body{display:flex;flex:1;flex-direction:column;padding:1.4rem 1.4rem 1.6rem}.landing-door__index{color:var(--accent);font-size:.7rem;font-weight:600;letter-spacing:.12em}.landing-door h3{margin:.4rem 0 .55rem;font-size:clamp(1.5rem,2.4vw,2rem)}.landing-door p{margin:0 0 1.3rem;color:var(--muted);font-size:.95rem}.landing-door__cta{display:inline-flex;align-items:center;gap:.45rem;margin-top:auto;font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.landing-door__cta svg{width:15px;color:var(--accent);transition:transform .25s ease}.landing-door:hover .landing-door__cta svg{transform:translate(4px)}.landing-door__visual--career span{position:absolute;top:58px;left:var(--l);width:var(--w);height:14px;border-radius:99px;background:linear-gradient(90deg,#b8340f,#ff7a24);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.2,.7,.2,1) calc(.3s + var(--d) * .25s)}.landing-door__visual--career span.is-study{top:84px;border:1px solid #f1ece455;background:#f1ece412}.landing-door__visual--career span.is-now{-webkit-mask-image:linear-gradient(90deg,#000 60%,#0000);mask-image:linear-gradient(90deg,#000 60%,#0000)}.landing-door.is-visible .landing-door__visual--career span{transform:none}.landing-door__visual--career i{position:absolute;top:36px;bottom:40px;left:92%;border-left:1px solid #ff5a1f}.landing-door__visual--career i:after{content:"";position:absolute;bottom:-4px;left:-5px;width:9px;height:9px;border-radius:50%;background:#ff5a1f;animation:landing-ping 2.4s ease-out infinite}@keyframes landing-ping{0%{box-shadow:0 0 #ff5a1f80}70%,to{box-shadow:0 0 0 9px #ff5a1f00}}.landing-door__sun{position:absolute;top:50%;left:40%;width:74px;height:74px;margin:-37px 0 0 -37px;border-radius:50%;background:radial-gradient(circle at 33% 28%,#ffb33e 0,#f04a18 30%,#a82915 62%,#15110f);box-shadow:0 0 40px #f04a1844;transition:box-shadow .4s ease}.landing-door__orbit{position:absolute;top:50%;left:40%;width:170px;height:54px;margin:-27px 0 0 -85px;border:1px solid #f1ece44d;border-radius:50%;transform:rotate(-14deg)}.landing-door__tile{position:absolute;top:50%;left:74%;display:grid;place-items:center;width:54px;height:40px;margin:-20px 0 0 -27px;border:1px solid #f1ece44a;background:linear-gradient(135deg,#413b35,#1d1a18 63%);box-shadow:-5px 7px #0c0a09,-6px 8px #f04a18;color:#f1ece4;font:500 1.4rem/1 Georgia,serif;transform:rotate(-8deg);animation:landing-bob 6s ease-in-out infinite}@keyframes landing-bob{50%{transform:rotate(-6deg) translateY(-5px)}}.landing-door:hover .landing-door__sun{box-shadow:0 0 60px #ff7a2477,0 0 100px #f04a1840}.landing-door__horizon{position:absolute;left:50%;bottom:-150px;width:260px;height:260px;margin-left:-130px;border-radius:50%;background:radial-gradient(circle at 50% 30%,#ffc45b 0,#ff9e2c 18%,#f04a18 45%,#a82915 70%,#211410);box-shadow:0 0 70px #f04a1855;transition:transform .5s ease}.landing-door__visual--atl img{position:absolute;top:26px;left:50%;width:110px;margin-left:-55px;filter:brightness(0) invert(1);opacity:.92}.landing-door:hover .landing-door__horizon{transform:translateY(-12px)}@media(max-width:900px){.landing-hero{grid-template-columns:1fr;min-height:0;padding-block:2.5rem 3.5rem}.landing-portrait{order:-1;justify-self:start;width:min(78%,380px);margin:0 0 16% 6%}.landing-doors__grid{grid-template-columns:1fr}}@media(max-width:560px){.landing-hero__overline{font-size:.6rem}.landing-hero h1{font-size:clamp(4rem,22vw,6rem);line-height:.83}.landing-hero h1 span{margin-left:1.5rem}.landing-hero__intro{margin:2rem 0 0 1.5rem}.landing-hero__lead{font-size:1.35rem}.landing-button{flex:1 1 100%}}@media(prefers-reduced-motion:reduce){.landing-hero__status i,.landing-portrait__sun,.landing-door__visual--career i:after,.landing-door__tile{animation:none}.landing-door__visual--career span,.landing-door:hover{transform:none}}.lab-page{--lab-night: #15110f;--lab-ink: #f1ece4;--lab-ink-muted: #b4aaa0;--lab-hot: #ff5a1f}.lab-intro{min-height:46vh}.lab-intro h1{overflow-wrap:normal}.lab-intro__copy>p:first-child{max-width:560px;margin:0 0 1.25rem;color:var(--muted);font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.45}.lab-live{max-width:560px;margin:0;color:var(--muted);font-size:.85rem;line-height:1.9}.lab-live i{display:inline-block;width:8px;height:8px;margin-right:.6rem;vertical-align:.05em;border-radius:50%;background:#3ccf7a;box-shadow:0 0 0 4px #3ccf7a26;animation:lab-pulse 2.4s ease-in-out infinite}.lab-live code{padding:.1rem .4rem;border:1px solid var(--line);color:var(--text);font:500 .8rem ui-monospace,SFMono-Regular,Menlo,monospace}@keyframes lab-pulse{50%{box-shadow:0 0 0 7px #3ccf7a10}}.lab-specs{padding-block:clamp(2rem,4vw,3rem) clamp(2.5rem,5vw,4rem)}.lab-specs dl{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;overflow:hidden;border:1px solid #f1ece41f;background:radial-gradient(ellipse 50% 110% at 100% 0%,#ff5a1f17,transparent 70%),var(--lab-night)}.lab-specs dl:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,#ff5a1f99 35%,#ff5a1f99 65%,transparent)}.lab-specs dl>div{padding:clamp(1.75rem,3.5vw,2.75rem) clamp(1.25rem,2.5vw,2rem);border-left:1px solid #f1ece41f}.lab-specs dl>div:first-child{border-left:0}.lab-specs dt{font:600 clamp(2.8rem,5.2vw,4.6rem)/.95 "Outfit",sans-serif;letter-spacing:-.05em;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--lab-hot)}.lab-specs dd{margin:1rem 0 0;color:var(--lab-ink-muted);font-size:.9rem;line-height:1.45}.lab-specs dd strong{display:block;margin-bottom:.2rem;color:var(--lab-ink);font:600 1.15rem Outfit,sans-serif;letter-spacing:-.01em}.lab-stack{display:flex;flex-wrap:wrap;gap:.45rem 1.1rem;margin:2.5rem 0 0;padding:0;list-style:none}.lab-stack li{color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.lab-stack li:before{content:"";display:inline-block;width:5px;height:5px;margin:0 .55rem .12rem 0;border-radius:50%;background:var(--accent)}.lab-section{padding-block:clamp(4.5rem,8vw,7rem)}.lab-band{background:var(--surface)}.lab-heading{max-width:780px;margin-bottom:clamp(2rem,4vw,3.25rem)}.lab-heading h2{margin:.7rem 0 1rem;font-size:clamp(2.3rem,4.6vw,4.2rem)}.lab-heading>p:last-child:not(.solar-index){margin:0;color:var(--muted);font-size:1.1rem}.lab-map-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:clamp(2rem,5vw,4rem);align-items:center}.lab-panel{margin:0;padding:clamp(1rem,3vw,2rem);border:1px solid var(--line);background:var(--lab-night);color:var(--lab-ink);box-shadow:var(--shadow)}.lab-panel figcaption{margin-top:1rem;color:var(--lab-ink-muted);font-size:.8rem}.lab-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1.25rem;margin:0;padding:0;list-style:none}.lab-legend li{display:flex;align-items:center;gap:.7rem}.lab-legend i{flex:none;width:26px;height:0;border-top:2px solid var(--lab-hot)}.lab-legend .lab-legend__visit{box-shadow:0 0 8px var(--lab-hot)}.lab-legend .lab-legend__app{border-top:2px dashed #ffc45b}.lab-legend .lab-legend__deploy{border-top:2px dashed #9cc3ff}.lab-legend .lab-legend__observe{border-top:2px dotted #3ccf7a}.lab-map{display:block;width:100%;height:auto;overflow:visible}.lab-map__orbit{fill:none;stroke:#f1ece433}.lab-map__orbit--outer{stroke:#f1ece41f;stroke-dasharray:2 7}.lab-map__spoke{stroke:#f1ece42e;stroke-width:1.2}.lab-map__visit{fill:none;stroke:var(--lab-hot);stroke-width:2.5;stroke-linejoin:round;filter:drop-shadow(0 0 6px #ff5a1f99)}.lab-map__flow{fill:none;stroke-width:2;stroke-linejoin:round}.lab-map__flow--app{stroke:#ffc45b;stroke-dasharray:7 6}.lab-map__flow--deploy{stroke:#9cc3ff;stroke-dasharray:7 6}.lab-map__flow--observe{stroke:#3ccf7a;stroke-dasharray:2 5;stroke-linecap:round}.lab-map__sublabel{fill:#f1ece48c;font:500 12px DM Sans,sans-serif;letter-spacing:.02em}.lab-map__packet{fill:#ffc45b;filter:drop-shadow(0 0 6px #ffc45b)}.lab-map__internet{fill:#ffc45b}.lab-map__core-label{fill:#fff;font:600 13px DM Sans,sans-serif;letter-spacing:.14em}.lab-map__label{fill:#f1ece4d9;font:500 17px DM Sans,sans-serif}.lab-map__number{fill:var(--lab-ink);font:600 20px Outfit,sans-serif}.lab-map__zone circle{fill:#221d1a;stroke:#f1ece466;stroke-width:1.2}.lab-map__zone.is-public circle{stroke:var(--lab-hot);stroke-width:2}.lab-zones{margin:0;padding:0;list-style:none}.lab-zones li{display:grid;grid-template-columns:44px 1fr;gap:.25rem;padding:1rem 0;border-top:1px solid var(--line)}.lab-zones li>span{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;font:600 .85rem Outfit,sans-serif}.lab-zones li:first-child>span{border-color:var(--accent);color:var(--accent)}.lab-zones h3{margin:.2rem 0 .25rem;font-size:1.15rem;letter-spacing:-.01em}.lab-zones p{margin:0;color:var(--muted);font-size:.9rem}.lab-zones .lab-zones__contents{color:var(--text);font-weight:500}.lab-steps{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.5rem;margin:0;padding:0;list-style:none}.lab-steps:before{content:"";position:absolute;top:6px;left:0;right:0;border-top:1px dashed var(--line)}.lab-steps li{position:relative;padding-top:2.1rem}.lab-steps li:before{content:"";position:absolute;top:0;left:0;width:13px;height:13px;border:2px solid var(--accent);border-radius:50%;background:var(--bg)}.lab-band .lab-steps li:before{background:var(--surface)}.lab-steps li:last-child:before{background:var(--accent);box-shadow:0 0 16px var(--accent)}.lab-steps span{color:var(--accent);font-size:.7rem;font-weight:600;letter-spacing:.12em}.lab-steps h3{margin:.45rem 0 .5rem;font-size:clamp(1.1rem,1.6vw,1.35rem);letter-spacing:-.015em}.lab-steps p{margin:0;color:var(--muted);font-size:.92rem}.lab-steps--path:after{content:"";position:absolute;top:3px;left:0;width:8px;height:8px;border-radius:50%;background:#ffc45b;box-shadow:0 0 12px #ff9e2c;animation:lab-travel 4.5s cubic-bezier(.45,0,.2,1) infinite}@keyframes lab-travel{0%{left:0;opacity:0}8%{opacity:1}85%{opacity:1}to{left:81%;opacity:0}}.lab-deploy{position:relative}.lab-rollback{display:block;width:100%;height:70px;margin-top:1rem}.lab-rollback path{fill:none;stroke:var(--accent);stroke-width:1.5;stroke-dasharray:5 6;vector-effect:non-scaling-stroke}.lab-rollback .lab-rollback__head{stroke-dasharray:none}.lab-rollback-note{margin:.25rem 0 0 calc(41.4% - .35rem);color:var(--text);font:500 1rem Outfit,sans-serif}.lab-rollback-note:before{content:"↺";margin-right:.5rem;color:var(--accent)}.lab-example{max-width:780px;margin-top:clamp(2.5rem,5vw,4rem);padding:1.4rem 1.6rem;border-left:2px solid var(--accent);background:var(--paper)}.lab-example p:last-child{margin:.6rem 0 0}.lab-deploy-foot{display:grid;grid-template-columns:1.4fr .6fr;gap:clamp(1.5rem,4vw,3rem);align-items:end}.lab-releases{margin:0;padding:1.2rem 1.4rem;border:1px solid var(--line);background:var(--lab-night);color:var(--lab-ink-muted)}.lab-releases figcaption{margin-bottom:.7rem;color:var(--lab-ink-muted)}.lab-releases pre{margin:0;font:500 .85rem/1.9 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre}.lab-releases span{display:block}.lab-releases em{font-style:normal}.lab-releases .is-current{color:var(--lab-ink)}.lab-releases b{color:var(--lab-hot);font-weight:600}.lab-pipeline{--gap: clamp(1.75rem, 3.5vw, 3rem);padding:clamp(1.25rem,3vw,2.25rem);border:1px solid var(--line);background:var(--lab-night);color:var(--lab-ink);box-shadow:var(--shadow)}.lab-pipeline h3{margin:0}.lab-pipeline__stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);margin:0;padding:0;list-style:none}.lab-pipeline__stage{position:relative;display:flex;flex-direction:column}.lab-pipeline__stage+.lab-pipeline__stage:before{content:"→";position:absolute;top:1.1rem;left:calc(var(--gap) / -2);transform:translate(-50%,-50%);color:var(--lab-hot);font-size:1.3rem}.lab-pipeline__stage header{margin-bottom:1.25rem}.lab-pipeline__stage header h3{font-size:clamp(2rem,3.4vw,2.8rem);letter-spacing:-.035em}.lab-pipeline__stage header span{display:flex;align-items:center;gap:.75rem;margin-top:.35rem;color:var(--lab-hot);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.lab-pipeline__stage header em{display:inline-flex;align-items:center;gap:.4rem;padding:.15rem .55rem;border:1px solid #3ccf7a66;border-radius:99px;color:#7fe0a6;font-style:normal;letter-spacing:.08em}.lab-pipeline__stage header em i{width:6px;height:6px;border-radius:50%;background:#3ccf7a;animation:lab-pulse 2.4s ease-in-out infinite}.lab-pipeline__stage>ol{position:relative;margin:0;padding:0 0 0 1.25rem;border-left:1px dashed #f1ece440;list-style:none}.lab-pipeline__stage>ol:after{content:"";position:absolute;top:calc(.4rem + .5px);left:-4.5px;width:8px;height:8px;border-radius:50%;background:#ffc45b;box-shadow:0 0 12px #ff9e2c;opacity:0;animation:lab-descend 6s cubic-bezier(.45,0,.2,1) infinite}.lab-pipeline__stage:nth-child(2)>ol:after{animation-delay:2s}.lab-pipeline__stage:nth-child(3)>ol:after{animation-delay:4s}@keyframes lab-descend{0%{top:calc(.4rem + .5px);opacity:0}3%{opacity:1}25%{top:calc(var(--end, 0px) + .4rem + .5px);opacity:1}33%,to{top:calc(var(--end, 0px) + .4rem + .5px);opacity:0}}.lab-pipeline__stage>ol li{position:relative;padding:0 0 1.1rem}.lab-pipeline__stage>ol li:last-child{padding-bottom:0}.lab-pipeline__stage>ol li:before{content:"";position:absolute;top:.4rem;left:calc(-1.25rem - 5px);width:9px;height:9px;border:1.5px solid var(--lab-hot);border-radius:50%;background:var(--lab-night)}.lab-pipeline__stage:last-child>ol li:last-child:before{background:var(--lab-hot);box-shadow:0 0 12px var(--lab-hot)}.lab-pipeline__stage strong{font:600 1.02rem Outfit,sans-serif}.lab-pipeline__stage p{margin:.2rem 0 0;color:var(--lab-ink-muted);font-size:.86rem;line-height:1.5}.lab-pipeline__foot{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);align-items:center;margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid #f1ece42e}.lab-pipeline__same,.lab-pipeline__rollback{display:flex;gap:.75rem;margin:0;padding:1rem 1.1rem;border:1px dashed var(--lab-hot);color:var(--lab-ink);font:500 .95rem/1.45 Outfit,sans-serif}.lab-pipeline__same{border-style:solid;border-color:#f1ece42e}.lab-pipeline__same svg,.lab-pipeline__rollback svg{flex:none;margin-top:.15rem;color:var(--lab-hot)}.lab-ai{background:var(--lab-night);color:var(--lab-ink)}html[data-theme=dark] .lab-ai{background:#1b1816;border-block:1px solid var(--line)}.lab-ai .lab-heading>p:last-child:not(.solar-index){color:var(--lab-ink-muted)}.lab-ai__grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;gap:0 clamp(2rem,6vw,5rem)}.lab-ai__grid>.lab-heading{grid-column:1}.lab-roles{grid-column:1;display:grid;gap:0}.lab-roles article{display:grid;grid-template-columns:110px 1fr;gap:.2rem 1rem;padding:1.1rem 0;border-top:1px solid #f1ece42e}.lab-roles p{grid-row:1 / 3;margin:.3rem 0 0;color:var(--lab-hot);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.lab-roles h3{margin:0;font-size:1.3rem}.lab-roles span{color:var(--lab-ink-muted);font-size:.92rem}.lab-observer{grid-column:1 / -1;margin-top:clamp(2.5rem,5vw,4rem);padding:clamp(1.25rem,3vw,2rem);border:1px solid #3ccf7a59}.lab-observer header{max-width:720px}.lab-observer h3{margin:0 0 .5rem;font-size:clamp(1.4rem,2.4vw,1.9rem)}.lab-observer header p{margin:0;color:var(--lab-ink-muted)}.lab-observer dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;margin:1.75rem 0 0}.lab-observer dl>div{padding-top:1rem;border-top:1px dotted #3ccf7a}.lab-observer dt{font:600 1.02rem Outfit,sans-serif;color:#7fe0a6}.lab-observer dd{margin:.35rem 0 0;color:var(--lab-ink-muted);font-size:.88rem;line-height:1.5}.lab-loop{grid-column:2;grid-row:1 / 3;align-self:center;position:relative;width:min(100%,440px);aspect-ratio:1;margin-inline:auto;container-type:inline-size}.lab-loop__ring{position:absolute;inset:14%;border:1px solid #f1ece440;border-radius:50%;animation:lab-orbit 14s linear infinite}.lab-loop__ring:after{content:"";position:absolute;top:-5px;left:50%;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:var(--lab-hot);box-shadow:0 0 14px var(--lab-hot)}.lab-loop>strong{position:absolute;inset:0;display:grid;place-items:center;color:var(--lab-hot);font:600 clamp(1.1rem,6cqw,1.6rem) "Outfit",sans-serif}.lab-loop ol{margin:0;padding:0;list-style:none}.lab-loop li{--a: calc(var(--i) * 60deg - 90deg);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(var(--a)) translate(36cqw) rotate(calc(-1 * var(--a)))}.lab-loop li span{display:block;padding:.45rem .85rem;border:1px solid #f1ece44d;border-radius:99px;background:var(--lab-night);font-size:.82rem;white-space:nowrap}html[data-theme=dark] .lab-loop li span{background:#1b1816}.lab-loop li:nth-child(4) span,.lab-loop li:nth-child(5) span{border-color:var(--lab-hot);color:#ffb08a}@keyframes lab-orbit{to{transform:rotate(360deg)}}.lab-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(1.5rem,4vw,3rem);margin:0;padding:0;list-style:none}.lab-rules li{padding:1.5rem 0 2rem;border-top:1px solid var(--line)}.lab-rules span{color:var(--accent);font-size:.7rem;font-weight:600}.lab-rules h3{margin:.5rem 0 .45rem;font-size:1.25rem;letter-spacing:-.015em}.lab-rules p{margin:0;color:var(--muted);font-size:.92rem}.lab-choices{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,5rem);align-items:start}.lab-choices dl{margin:0}.lab-choices dl>div{padding:1.3rem 0;border-top:1px solid var(--line)}.lab-choices dt{font:600 1.2rem Outfit,sans-serif;letter-spacing:-.015em}.lab-choices dd{margin:.35rem 0 0;color:var(--muted)}.lab-origin{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.5rem;margin:0;padding:0;list-style:none}.lab-origin:before{content:"";position:absolute;top:15px;left:0;right:0;height:1px;background:linear-gradient(90deg,var(--line),var(--accent))}.lab-origin li{position:relative;padding-top:3rem}.lab-origin i{position:absolute;top:15px;left:0;width:calc(8px + var(--n, 0) * 4px);aspect-ratio:1;border-radius:50%;background:var(--muted);transform:translateY(-50%)}.lab-origin li:nth-child(2) i{--n: 1}.lab-origin li:nth-child(3) i{--n: 2}.lab-origin li:nth-child(4) i{--n: 3}.lab-origin li:last-child i{--n: 4;background:radial-gradient(circle at 34% 30%,#ffc45b,#f04a18 55%,#8f2412);box-shadow:0 0 18px #f04a1866}.lab-origin h3{margin:0 0 .4rem;font-size:1.1rem}.lab-origin p{margin:0;color:var(--muted);font-size:.9rem}.lab-exit{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:2.5rem clamp(4rem,7vw,6rem);border-top:1px solid var(--line)}.lab-bridge{display:inline-flex;align-items:center;gap:.7rem;color:var(--text);font:600 clamp(1.05rem,2vw,1.35rem) "Outfit",sans-serif;text-decoration:none}.lab-bridge svg{flex:none;width:20px;color:var(--accent);transition:transform .2s ease}.lab-bridge:hover svg{transform:translate(5px)}@media(max-width:900px){.lab-specs dl{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-specs dl>div:nth-child(3){border-left:0}.lab-specs dl>div:nth-child(n+3){border-top:1px solid #f1ece41f}.lab-map-layout,.lab-ai__grid,.lab-choices,.lab-deploy-foot,.lab-pipeline__foot,.lab-pipeline__stages{grid-template-columns:1fr}.lab-pipeline__stage+.lab-pipeline__stage:before{content:"↓";top:calc(var(--gap) / -2);left:1.25rem}.lab-loop,.lab-roles{grid-column:1;grid-row:auto}.lab-observer dl{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-loop{margin-block:1rem 2.5rem}.lab-rules{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-steps,.lab-origin{grid-template-columns:1fr;gap:0}.lab-steps:before{inset:0 auto 0 6px;border-top:0;border-left:1px dashed var(--line)}.lab-steps li{padding:0 0 1.75rem 2.25rem}.lab-steps li:before{top:.15rem}.lab-steps--path:after{top:0;left:3px;animation-name:lab-travel-down}.lab-rollback{display:none}.lab-rollback-note{margin:0 0 0 2.25rem}.lab-origin:before{inset:0 auto 0 15px;width:1px;height:auto;background:linear-gradient(var(--line),var(--accent))}.lab-origin li{padding:0 0 1.5rem 3rem}.lab-origin i{top:.6rem;left:15px;transform:translate(-50%,-50%)}}@keyframes lab-travel-down{0%{top:0;opacity:0}8%{opacity:1}85%{opacity:1}to{top:82%;opacity:0}}@media(max-width:560px){.lab-intro h1{font-size:clamp(3.4rem,17vw,5.5rem)}.lab-specs dl>div{padding:1.4rem 1rem}.lab-specs dt{font-size:clamp(2.6rem,13vw,3.4rem)}.lab-map__zone .lab-map__label,.lab-map__sublabel{display:none}.lab-legend,.lab-observer dl{grid-template-columns:1fr}.lab-map__number{font-size:26px}.lab-map__label{font-size:24px}.lab-map__core-label{font-size:17px}.lab-rules{grid-template-columns:1fr}.lab-roles article{grid-template-columns:1fr}.lab-roles p{grid-row:auto;margin:0}.lab-loop li span{padding:.35rem .6rem;font-size:.7rem}.lab-exit{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){.lab-map__packet,.lab-steps--path:after,.lab-pipeline__stage>ol:after{display:none}.lab-loop__ring,.lab-live i,.lab-pipeline__stage header em i{animation:none}}.career-page{--career-night: #15110f;--career-ink: #f1ece4;--career-ink-muted: #b4aaa0;--career-hot: #ff5a1f;--career-cta: #d13a0e}.career-intro{min-height:46vh}.career-intro>i{animation:career-spin 24s linear infinite}.career-figures{padding-block:clamp(2.5rem,5vw,4rem);border-bottom:1px solid var(--line)}.career-figures dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.career-figures dl>div{padding:0 1.5rem;border-left:1px solid var(--line)}.career-figures dl>div:first-child{padding-left:0;border-left:0}.career-figures dt{color:var(--accent);font:600 clamp(2.3rem,4.4vw,3.8rem)/1 "Outfit",sans-serif;letter-spacing:-.05em;font-variant-numeric:tabular-nums}.career-figures dd{margin:.6rem 0 0;color:var(--muted);font-size:.92rem}.career-section{padding-block:clamp(4.5rem,8vw,7rem)}.career-band{background:var(--surface)}.career-heading{max-width:780px;margin-bottom:clamp(2rem,4vw,3.25rem)}.career-heading h2{margin:.7rem 0 0;font-size:clamp(2.3rem,4.6vw,4.2rem)}.career-timeline{margin:0;padding:clamp(1.25rem,3vw,2.25rem);border:1px solid var(--line);background:var(--career-night);color:var(--career-ink);box-shadow:var(--shadow)}.career-timeline__plot{--bar: 34px;position:relative;padding-top:2rem}.career-timeline__year{position:absolute;top:0;bottom:0;border-left:1px dashed #f1ece426}.career-timeline__year b{position:absolute;top:0;left:.35rem;color:var(--career-ink-muted);font-size:.7rem;font-weight:600;letter-spacing:.08em}.career-timeline__now{position:absolute;z-index:2;top:0;bottom:0;border-left:1px solid var(--career-hot)}.career-timeline__now b{position:absolute;top:0;right:.4rem;color:var(--career-hot);font-size:.7rem;font-weight:600;letter-spacing:.08em;white-space:nowrap}.career-timeline__now:after{content:"";position:absolute;bottom:-4px;left:-5px;width:9px;height:9px;border-radius:50%;background:var(--career-hot);box-shadow:0 0 #ff5a1f80;animation:career-pulse 2.4s ease-out infinite}@keyframes career-pulse{70%,to{box-shadow:0 0 0 10px #ff5a1f00}}.career-lane{position:relative;padding-block:.55rem}.career-lane>p{margin:0 0 .4rem;color:var(--career-ink-muted);font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.career-lane__track{position:relative;height:calc(var(--rows) * var(--bar) + (var(--rows) - 1) * 6px)}.career-bar{position:absolute;z-index:0;display:flex;align-items:center;height:var(--bar);padding:0 .45rem;font:600 .78rem DM Sans,sans-serif;white-space:nowrap;opacity:0;transition:opacity .4s ease calc(.75s + var(--d, 0) * .3s)}.career-bar:before{content:"";position:absolute;z-index:-1;inset:0;border-radius:99px;transform:scaleX(0);transform-origin:left;transition:transform 1s cubic-bezier(.2,.7,.2,1) calc(.25s + var(--d, 0) * .3s)}.career-timeline.is-visible .career-bar{opacity:1}.career-timeline.is-visible .career-bar:before{transform:none}.career-lane--work .career-bar{color:#fff}.career-lane--work .career-bar:before{background:linear-gradient(90deg,#b8340f,#ff7a24)}.career-lane--study .career-bar:before{border:1px solid #f1ece455;background:#f1ece412}.career-lane--lab .career-bar{color:#ffb08a}.career-lane--lab .career-bar:before{border:1px dashed #ff9e2c;background:#ff5a1f14}.career-bar.is-ongoing:before{-webkit-mask-image:linear-gradient(90deg,#000 70%,#0000);mask-image:linear-gradient(90deg,#000 70%,#0000)}.career-bar.is-short{padding:0}.career-bar.is-short>span{position:absolute;right:calc(100% + .45rem)}.career-bar.is-short.is-ongoing:before{-webkit-mask-image:none;mask-image:none}.career-entries{--when: 200px;--planet: 40px;--gap: 1.5rem;position:relative;display:grid;gap:clamp(3.5rem,6vw,5rem)}.career-line{position:absolute;top:.6rem;bottom:0;left:calc(var(--when) + var(--gap) + var(--planet) / 2);width:1px;background:var(--line)}.career-line:after{content:"";position:absolute;top:0;left:0;width:1px;height:calc(var(--progress, 0) * 100%);background:linear-gradient(var(--accent),#ffc45b);box-shadow:0 0 10px var(--accent)}.career-entry{display:grid;grid-template-columns:var(--when) var(--planet) minmax(0,1fr);grid-template-areas:"when planet body";gap:0 var(--gap)}.career-entry__when{grid-area:when;display:flex;flex-direction:column;align-items:flex-end;gap:.55rem;padding-top:.35rem;text-align:right}.career-entry__when time{font:600 .74rem DM Sans,sans-serif;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.career-entry__when span{padding:.15rem .55rem;border:1px solid var(--accent);color:var(--accent);font-size:.7rem;font-weight:600}.career-entry__planet:after{content:"";position:absolute;inset:-3px;border:1px solid var(--accent);border-radius:50%;opacity:0}.career-entry.is-visible .career-entry__planet:after{animation:career-ping 1.6s ease-out .3s 1}.career-entry--0.is-visible .career-entry__planet:after{animation:career-ping 2.8s ease-out .3s infinite}.career-entry__planet{grid-area:planet;justify-self:center;position:relative;z-index:1;width:14px;height:14px;margin-top:.45rem;border:3px solid var(--bg);border-radius:50%;background:var(--muted);box-shadow:0 0 0 1px var(--line)}.career-entry--0 .career-entry__planet{width:28px;height:28px;margin-top:0;background:radial-gradient(circle at 34% 30%,#ffc45b,#f04a18 55%,#8f2412);box-shadow:0 0 22px #f04a1880}.career-entry--1 .career-entry__planet{width:20px;height:20px;margin-top:.25rem;background:var(--accent);box-shadow:0 0 14px #f04a1855}.career-entry__body{grid-area:body;min-width:0}.career-entry__place{margin:0;color:var(--accent);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.career-entry__company{display:inline-flex;align-items:flex-start;gap:.55rem;margin:.45rem 0 0;color:var(--text);text-decoration:none}.career-entry__company h3,h3.career-entry__company{margin:0;font-size:clamp(2.2rem,4.4vw,3.8rem);letter-spacing:-.045em}.career-entry__company svg{width:18px;margin-top:.5rem;flex:none;color:var(--accent)}.career-entry__role{margin:.55rem 0 0;color:var(--muted);font:500 1.15rem Outfit,sans-serif}.career-entry__summary{max-width:640px;margin:1.2rem 0 0;font-size:1.05rem}.career-highlights{margin:1.4rem 0 0;padding:0;list-style:none}.career-highlights li{opacity:0;transform:translate(-10px);transition:opacity .5s ease,transform .5s ease;transition-delay:calc(.35s + var(--h, 0) * .1s)}.career-entry.is-visible .career-highlights li{opacity:1;transform:none}.career-highlights li{display:grid;grid-template-columns:120px minmax(0,1fr);gap:1rem;padding:.9rem 0;border-top:1px solid var(--line)}.career-highlights strong{color:var(--accent);font:600 1.2rem/1.3 Outfit,sans-serif;letter-spacing:-.02em}.career-highlights span{color:var(--muted)}.career-tools{display:flex;flex-wrap:wrap;gap:.4rem;margin:1.2rem 0 0;padding:0;list-style:none}.career-tools li{padding:.25rem .6rem;border:1px solid var(--line);color:var(--muted);font-size:.74rem}.career-entry__links{display:flex;flex-wrap:wrap;gap:.75rem 2rem;margin-top:1.4rem}.career-education{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin:0;padding:0;list-style:none}.career-education li{padding-top:1.25rem;border-top:1px solid var(--line)}.career-education time{color:var(--accent);font-size:.74rem;font-weight:600;letter-spacing:.1em}.career-education h3{margin:.5rem 0 .4rem;font-size:1.25rem;letter-spacing:-.015em}.career-education p{margin:0;color:var(--muted);font-size:.92rem}.career-education .career-education__thesis{margin-top:.75rem;padding-left:.75rem;border-left:2px solid var(--accent);color:var(--text);font:500 .92rem/1.4 Outfit,sans-serif}.career-horizons{background:var(--career-night);color:var(--career-ink)}html[data-theme=dark] .career-horizons{background:#1b1816;border-block:1px solid var(--line)}.career-horizons .career-heading>p:last-child:not(.solar-index){margin:1rem 0 0;color:var(--career-ink-muted);font-size:1.1rem}.career-places{position:relative}.career-places__arc{position:absolute;top:0;left:0;width:100%;height:140px;overflow:visible}.career-places__arc path{fill:none;stroke:#f1ece455;stroke-width:1.5;stroke-dasharray:1;stroke-dashoffset:1;vector-effect:non-scaling-stroke;transition:stroke-dashoffset 1.8s cubic-bezier(.4,0,.2,1) .2s}.career-places.is-visible .career-places__arc path{stroke-dashoffset:0}.career-places ol{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none}.career-places li{--size: 12px;display:flex;flex-direction:column;align-items:center;text-align:center}.career-places li.is-home{--size: 20px}.career-places li.is-now{--size: 30px}.career-places i{position:relative;width:var(--size);height:var(--size);margin-top:calc(var(--y) - var(--size) / 2);border-radius:50%;background:#b4aaa0;transform:scale(0);transition:transform .5s cubic-bezier(.3,1.5,.5,1) calc(.4s + var(--i) * .22s)}.career-places.is-visible i{transform:none}.career-places li.is-home i{background:var(--career-hot);box-shadow:0 0 14px #ff5a1f66}.career-places li.is-now i{background:radial-gradient(circle at 34% 30%,#ffc45b,#f04a18 55%,#8f2412);box-shadow:0 0 26px #f04a18aa}.career-places li.is-now i:after{content:"";position:absolute;inset:-4px;border:1px solid var(--career-hot);border-radius:50%;animation:career-ping 2.6s ease-out 2s infinite;opacity:0}.career-places strong{margin-top:1rem;font:600 1.1rem Outfit,sans-serif;letter-spacing:-.01em}.career-places li.is-now strong{color:#ffb08a}.career-places span{max-width:15rem;margin-top:.35rem;color:var(--career-ink-muted);font-size:.82rem;line-height:1.45}.career-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,7vw,6rem)}.career-certifications{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1.5rem;margin:1.5rem 0 0;padding:0;list-style:none}.career-certifications li{display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;-moz-column-gap:.9rem;column-gap:.9rem;align-items:center}.career-certifications i{animation:career-spin calc(10s + var(--c, 0) * 3s) linear infinite;grid-row:1 / 3;position:relative;width:42px;height:42px;border:1px solid var(--accent);border-radius:50%}.career-certifications i:after{content:"";position:absolute;top:4px;left:7px;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent)}.career-certifications strong{font:600 1.1rem Outfit,sans-serif}.career-certifications span{color:var(--muted);font-size:.85rem}.career-languages{margin:1.5rem 0 0;padding:0;list-style:none}.career-languages li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.career-languages li>div{display:flex;flex-direction:column}.career-languages strong{font:600 1.1rem Outfit,sans-serif}.career-languages li>div span{color:var(--muted);font-size:.85rem}.career-meter{display:flex;gap:4px}.career-meter i{width:22px;height:6px;background:var(--line);transition:background .4s ease calc(.3s + var(--s) * .09s),box-shadow .4s ease calc(.3s + var(--s) * .09s)}.is-visible .career-meter i.is-on{background:var(--accent);box-shadow:0 0 8px #f04a1866}.career-meter.is-learning i{border:1px dashed var(--line);background:transparent}.career-skills{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:2.25rem 2rem}.career-skills h3{margin:0 0 .85rem;padding-top:1rem;border-top:1px solid var(--line);font-size:1.05rem;letter-spacing:-.01em}.career-skills ul{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none}.career-skills li{padding:.3rem .65rem;border:1px solid var(--line);background:var(--bg);font-size:.8rem;opacity:0;transform:translateY(6px);transition:opacity .4s ease,transform .4s ease;transition-delay:calc(.25s + var(--s) * .05s)}.career-skills .is-visible li{opacity:1;transform:none}@keyframes career-spin{to{transform:rotate(360deg)}}@keyframes career-ping{0%{transform:scale(1);opacity:.9}to{transform:scale(2.6);opacity:0}}@media(max-width:900px){.career-figures dl{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:2rem}.career-figures dl>div:nth-child(3){padding-left:0;border-left:0}.career-entries{--planet: 28px;--gap: .9rem}.career-line{left:calc(var(--planet) / 2)}.career-entry{grid-template-columns:var(--planet) minmax(0,1fr);grid-template-areas:"planet when" ". body"}.career-entry__when{flex-direction:row;align-items:center;justify-content:flex-start;padding:.3rem 0 .6rem;text-align:left}.career-education,.career-pair{grid-template-columns:1fr}.career-places__arc{display:none}.career-places ol{grid-template-columns:1fr;gap:0}.career-places ol:before{content:"";position:absolute;top:1rem;bottom:1rem;left:15px;width:1px;background:linear-gradient(#ff5a1f,#f1ece433 30% 70%,#ff9e2c)}.career-places li{display:grid;grid-template-columns:30px 1fr;grid-template-rows:auto auto;-moz-column-gap:1rem;column-gap:1rem;align-items:center;padding:.7rem 0;text-align:left}.career-places i{grid-row:1 / 3;justify-self:center;margin-top:0}.career-places strong{margin-top:0}.career-places span{grid-column:2;max-width:none;margin-top:.15rem}.career-timeline__plot{--bar: 30px;padding-bottom:1.4rem}.career-timeline{padding-bottom:2rem}.career-timeline__year.is-odd b{display:none}.career-timeline__now b{top:auto;bottom:-1.45rem;right:-.25rem}.career-timeline__now:after{bottom:1.15rem}.career-bar{padding:0 .5rem;font-size:.7rem}}@media(max-width:560px){.career-intro h1{font-size:clamp(3.6rem,18vw,5.5rem)}.career-figures dl>div{padding:0 1rem}.career-figures dl>div:nth-child(odd){padding-left:0;border-left:0}.career-timeline{padding:1rem .75rem 2rem}.career-timeline__plot{--bar: 26px}.career-timeline__year b{left:.2rem;font-size:.6rem}.career-timeline__now b{font-size:.6rem}.career-bar{padding:0 .4rem;font-size:.62rem}.career-highlights li{grid-template-columns:1fr;gap:.25rem}.career-certifications{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.career-bar{opacity:1}.career-bar:before{transform:none}.career-skills li{opacity:1;transform:none}.career-timeline__now:after,.career-intro>i,.career-certifications i,.career-entry.is-visible .career-entry__planet:after{animation:none}.career-highlights li{opacity:1;transform:none}.career-places__arc path{stroke-dashoffset:0}.career-places i{transform:none}.career-places li.is-now i:after{animation:none}}*,: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: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}@media(min-width:1400px){.container{max-width:1400px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-bottom-12{bottom:-3rem}.-left-12{left:-3rem}.-right-12{right:-3rem}.-top-12{top:-3rem}.bottom-0{bottom:0}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-3\.5{top:.875rem}.top-4{top:1rem}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[1\]{z-index:1}.order-first{order:-9999}.order-last{order:9999}.\!m-0{margin:0!important}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.-my-2{margin-top:-.5rem;margin-bottom:-.5rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3\.5{margin-left:.875rem;margin-right:.875rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:0;margin-bottom:0}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-ml-4{margin-left:-1rem}.-mt-4{margin-top:-1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.ml-1{margin-left:.25rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-24{margin-top:6rem}.mt-4{margin-top:1rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:16 / 9}.size-10{width:2.5rem;height:2.5rem}.size-3{width:.75rem;height:.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-\[--cell-size\]{width:var(--cell-size);height:var(--cell-size)}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[--cell-size\]{height:var(--cell-size)}.h-\[1px\]{height:1px}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\[--radix-context-menu-content-available-height\]{max-height:var(--radix-context-menu-content-available-height)}.max-h-\[--radix-select-content-available-height\]{max-height:var(--radix-select-content-available-height)}.max-h-\[300px\]{max-height:300px}.max-h-\[var\(--radix-dropdown-menu-content-available-height\)\]{max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-screen{max-height:100vh}.min-h-0{min-height:0px}.min-h-\[60px\]{min-height:60px}.min-h-svh{min-height:100svh}.w-0{width:0px}.w-1{width:.25rem}.w-10{width:2.5rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[--cell-size\]{width:var(--cell-size)}.w-\[--sidebar-width\]{width:var(--sidebar-width)}.w-\[100px\]{width:100px}.w-\[1px\]{width:1px}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-10{min-width:2.5rem}.min-w-5{min-width:1.25rem}.min-w-8{min-width:2rem}.min-w-9{min-width:2.25rem}.min-w-\[--cell-size\]{min-width:var(--cell-size)}.min-w-\[12rem\]{min-width:12rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-\[--skeleton-width\]{max-width:var(--skeleton-width)}.max-w-lg{max-width:32rem}.max-w-max{max-width:-moz-max-content;max-width:max-content}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\[--radix-context-menu-content-transform-origin\]{transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\[--radix-dropdown-menu-content-transform-origin\]{transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\[--radix-hover-card-content-transform-origin\]{transform-origin:var(--radix-hover-card-content-transform-origin)}.origin-\[--radix-menubar-content-transform-origin\]{transform-origin:var(--radix-menubar-content-transform-origin)}.origin-\[--radix-popover-content-transform-origin\]{transform-origin:var(--radix-popover-content-transform-origin)}.origin-\[--radix-select-content-transform-origin\]{transform-origin:var(--radix-select-content-transform-origin)}.origin-\[--radix-tooltip-content-transform-origin\]{transform-origin:var(--radix-tooltip-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x: -50%;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))}.-translate-x-px{--tw-translate-x: -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))}.-translate-y-1\/2{--tw-translate-y: -50%;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))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;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))}.translate-x-px{--tw-translate-x: 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))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;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))}.rotate-45{--tw-rotate: 45deg;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))}.rotate-90{--tw-rotate: 90deg;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))}.transform{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))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-7{gap:1.75rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * 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))}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.whitespace-nowrap{white-space:nowrap}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.rounded-\[2px\]{border-radius:2px}.rounded-\[calc\(var\(--radius\)-5px\)\]{border-radius:calc(var(--radius) - 5px)}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-l-md{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.rounded-r-md{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-\[1\.5px\]{border-width:1.5px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-\[--color-border\]{border-color:var(--color-border)}.border-border{border-color:hsl(var(--border))}.border-border\/50{border-color:hsl(var(--border) / .5)}.border-destructive{border-color:hsl(var(--destructive))}.border-destructive\/50{border-color:hsl(var(--destructive) / .5)}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-primary\/50{border-color:hsl(var(--primary) / .5)}.border-sidebar-border{border-color:hsl(var(--sidebar-border))}.border-transparent{border-color:transparent}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.bg-\[--color-bg\]{background-color:var(--color-bg)}.bg-accent{background-color:hsl(var(--accent))}.bg-background{background-color:hsl(var(--background))}.bg-black\/80{background-color:#000c}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-foreground{background-color:hsl(var(--foreground))}.bg-input{background-color:hsl(var(--input))}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-primary\/20{background-color:hsl(var(--primary) / .2)}.bg-secondary{background-color:hsl(var(--secondary))}.bg-sidebar{background-color:hsl(var(--sidebar-background))}.bg-sidebar-border{background-color:hsl(var(--sidebar-border))}.bg-transparent{background-color:transparent}.fill-current{fill:currentColor}.fill-primary{fill:hsl(var(--primary))}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-\[1px\]{padding:1px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.px-\[--cell-size\]{padding-left:var(--cell-size);padding-right:var(--cell-size)}.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-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-2{padding-left:.5rem}.pl-2\.5{padding-left:.625rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pr-1{padding-right:.25rem}.pr-2{padding-right:.5rem}.pr-2\.5{padding-right:.625rem}.pr-3{padding-right:.75rem}.pr-6{padding-right:1.5rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.text-\[0\.8rem\]{font-size:.8rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-sm\/relaxed{font-size:.875rem;line-height:1.625}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.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)}.leading-none{line-height:1}.leading-normal{line-height:1.5}.leading-snug{line-height:1.375}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/50{color:hsl(var(--foreground) / .5)}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-sidebar-foreground{color:hsl(var(--sidebar-foreground))}.text-sidebar-foreground\/70{color:hsl(var(--sidebar-foreground) / .7)}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow: 0 0 0 1px hsl(var(--sidebar-border));--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px 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}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-ring{--tw-ring-color: hsl(var(--ring))}.ring-sidebar-ring{--tw-ring-color: hsl(var(--sidebar-ring))}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.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-opacity{transition-property:opacity;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-100{transition-duration:.1s}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.fade-in-0{--tw-enter-opacity: 0}.zoom-in-95{--tw-enter-scale: .95}.duration-100{animation-duration:.1s}.duration-1000{animation-duration:1s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{animation-timing-function:linear}.running{animation-play-state:running}.\[--cell-size\:2rem\]{--cell-size: 2rem}:root{--bg:#f5f4ef;--paper:#fffefa;--surface:#ecebe5;--surface-strong:#deded7;--text:#1b211f;--muted:#66706c;--line:#cfd2cc;--accent:#23715c;--accent-soft:#d5e8df;--inverse:#17201d;--inverse-text:#f3f3ed;--shadow:0 24px 70px #19231f14;color-scheme:light}html[data-theme=dark]{--bg:#151917;--paper:#1c211f;--surface:#242a27;--surface-strong:#303733;--text:#f1f1e9;--muted:#a6afa9;--line:#3a433e;--accent:#78c2a8;--accent-soft:#233d34;--inverse:#edece5;--inverse-text:#17201d;--shadow:0 24px 70px #00000038;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-family:DM Sans,sans-serif;line-height:1.62;transition:background .25s,color .25s}a{color:inherit}button,a{outline-offset:4px}a:focus-visible,button:focus-visible{outline:2px solid var(--accent)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Outfit,sans-serif;line-height:1.02;letter-spacing:-.035em}h1{font-size:clamp(3.8rem,9vw,8rem)}h2{font-size:clamp(2rem,4.5vw,4rem)}h3{font-size:clamp(1.35rem,2.5vw,2rem)}.container{width:min(1180px,calc(100% - 3rem));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:100;left:1rem;top:-5rem;background:var(--accent);color:var(--paper);padding:.7rem 1rem}.skip-link:focus{top:1rem}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.nav-row{height:74px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;font-family:Outfit;font-weight:600}.brand-mark{display:block;flex:none;width:2.4rem;height:2.4rem;overflow:visible;color:inherit}.brand-mark__satellite-static{display:none}@media(prefers-reduced-motion:reduce){.brand-mark__satellite{display:none}.brand-mark__satellite-static{display:inline}}.nav-links{display:flex;align-items:center;gap:.15rem}.nav-links a,.theme-button{padding:.5rem .65rem;color:var(--muted);text-decoration:none;font:500 .86rem DM Sans;border:0;border-radius:99px;background:transparent;transition:color .2s,background .2s}.nav-links a:hover,.nav-links a.active,.theme-button:hover{color:var(--text);background:var(--surface)}.resume-link{display:flex;align-items:center;gap:.35rem}.theme-button{display:grid;place-items:center;cursor:pointer;margin-left:.2rem}.menu-button{display:none;background:none;border:0;color:var(--text)}.eyebrow,.kicker{color:var(--accent);font-size:.73rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600}.lead{font-size:clamp(1.2rem,2.5vw,1.75rem);line-height:1.4;color:var(--muted);max-width:760px}.text-link,.quiet-link{display:inline-flex;align-items:center;gap:.45rem;color:var(--accent);font-weight:600;text-decoration:none}.text-link:hover svg,.quiet-link:hover svg{transform:translate(4px)}.text-link svg,.quiet-link svg{transition:transform .2s}.button{display:inline-flex;align-items:center;gap:.5rem;padding:.72rem 1rem;text-decoration:none;font-weight:600}.button.primary{background:var(--accent);color:var(--paper);border-radius:3px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}.parallax{transform:translateY(calc(var(--scroll-shift,0px) * -1))}.home-hero{min-height:calc(100vh - 74px);display:flex;align-items:center;border-bottom:1px solid var(--line);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.08fr .72fr;gap:clamp(3rem,8vw,8rem);align-items:center;padding-block:5rem}.hero-copy h1{margin:.3rem 0 1rem}.hero-role{font:500 clamp(1rem,2vw,1.25rem) "Outfit";color:var(--accent)}.hero-intro{font-size:clamp(1.15rem,2.2vw,1.55rem);max-width:700px;line-height:1.45}.portrait-stage{position:relative;transition:transform .08s linear}.portrait-stage img{display:block;width:100%;max-height:610px;-o-object-fit:cover;object-fit:cover;filter:saturate(.72);box-shadow:var(--shadow)}.portrait-label,.portrait-caption{position:absolute;z-index:2;padding:.6rem .7rem;background:var(--paper);font-size:.67rem;letter-spacing:.12em;text-transform:uppercase}.portrait-label{top:1rem;left:-1.5rem}.portrait-caption{bottom:1rem;right:-1.5rem;color:var(--accent)}.social-links{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:2rem}.social-links a{display:flex;align-items:center;gap:.7rem;padding:1.15rem;text-decoration:none;border-right:1px solid var(--line);transition:background .2s}.social-links a:last-child{border:0}.social-links a:hover{background:var(--surface)}.social-links svg{width:18px}.social-links.compact{display:flex;border:0;margin:2rem 0 1rem;gap:.55rem}.social-links.compact a{padding:.55rem;border:1px solid var(--line);border-radius:99px}.social-links.compact span{font-size:.8rem}.quiet-link{font-size:.84rem}.projects-showcase{padding-block:clamp(5rem,9vw,8rem)}.section-title{display:flex;align-items:flex-start;gap:1.2rem;margin-bottom:3rem}.section-title>span,.section-number{font-size:.72rem;color:var(--accent);font-weight:600}.project-feature{display:grid;grid-template-columns:.9fr 1.1fr;min-height:480px;margin-bottom:2rem;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}.project-feature.hanzi{grid-template-columns:1.1fr .9fr}.project-feature.hanzi .project-visual{order:2}.project-visual{position:relative;display:grid;place-items:center;overflow:hidden;background:var(--inverse);color:var(--inverse-text)}.project-copy{padding:clamp(2rem,5vw,4.5rem);display:flex;flex-direction:column;justify-content:center}.project-copy>p:not(.kicker){color:var(--muted);font-size:1.05rem}.project-copy .text-link{margin-top:2rem}.project-feature:hover .project-visual{transform:scale(1.01)}.project-visual{transition:transform .35s}.project-visual b{font:700 5rem Outfit;letter-spacing:-.08em}.project-visual i{position:absolute;width:42%;height:42%;border:1px solid var(--accent);border-radius:50%}.node{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 7px color-mix(in srgb,var(--accent) 18%,transparent)}.n1{top:20%;left:25%}.n2{top:28%;right:20%}.n3{bottom:21%;left:18%}.n4{bottom:18%;right:28%}.hanzi{font:500 clamp(8rem,20vw,15rem) serif;color:var(--accent);opacity:.9}.project-visual small{position:absolute;bottom:2rem;letter-spacing:.12em;text-transform:uppercase}.chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.4rem}.chips span{border-bottom:1px solid var(--line);padding:.2rem .1rem;font-size:.75rem;color:var(--muted)}.about-strip,.operation-section,.product-flow-section{background:var(--inverse);color:var(--inverse-text)}.split-editorial{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(3rem,9vw,9rem);padding-block:clamp(5rem,9vw,8rem)}.statement{font-size:clamp(1.35rem,3vw,2.2rem);line-height:1.4}.about-strip .text-link,.operation-section .eyebrow,.product-flow-section .eyebrow{color:var(--accent)}.experience-snapshot{padding-block:clamp(5rem,9vw,8rem)}.snapshot-line{display:flex;align-items:center;gap:2rem;margin:3rem 0}.snapshot-line article{flex:1;border-top:1px solid var(--line);padding-top:1.5rem}.snapshot-line article>span{color:var(--accent);font-size:.72rem}.snapshot-line p{color:var(--muted)}.page-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:4rem;padding-top:clamp(5rem,10vw,9rem);padding-bottom:5rem;border-bottom:1px solid var(--line);align-items:end}.page-intro h1{font-size:clamp(3.5rem,8vw,7rem);overflow-wrap:anywhere;margin:0}.section,.case-section{padding-block:clamp(5rem,9vw,8rem)}.project-index{padding-top:4rem}.case-hero{padding-block:clamp(6rem,11vw,10rem);overflow:hidden}.case-hero h1{margin:.5rem 0 1rem}.lab-case{background:var(--inverse);color:var(--inverse-text)}.lab-case>.container{position:relative}.hosted-note{display:inline-flex;align-items:center;gap:.6rem;margin-top:2rem;padding:.7rem 1rem;border:1px solid #ffffff3b;font-size:.85rem}.pulse{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 20%,transparent)}.lab-stats{position:absolute;right:0;bottom:0;display:flex;gap:1rem}.lab-stats span{font-size:.65rem;letter-spacing:.13em;writing-mode:vertical-rl;color:var(--muted)}.architecture-section{background:var(--surface);padding-block:clamp(5rem,9vw,8rem)}.architecture-map{max-width:900px;margin:auto;display:flex;flex-direction:column;align-items:center}.arch-top,.arch-firewall,.arch-observe{display:flex;align-items:center;justify-content:center;padding:1rem 2rem;background:var(--paper);border:1px solid var(--line);min-width:230px}.arch-top{flex-direction:column}.arch-top i{height:45px;border-left:1px solid var(--accent);position:absolute;transform:translateY(48px)}.arch-firewall{margin:44px 0;gap:.6rem}.arch-firewall svg{color:var(--accent)}.arch-branches{position:relative;width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.arch-branches:before{content:"";position:absolute;top:-23px;left:16%;right:16%;border-top:1px solid var(--accent)}.arch-branches div{display:flex;flex-direction:column;text-align:center;padding:2rem 1rem;background:var(--paper);border:1px solid var(--line)}.arch-branches small{color:var(--muted)}.arch-observe{margin-top:44px;position:relative}.arch-observe:before{content:"";position:absolute;height:45px;top:-45px;border-left:1px solid var(--accent)}.flow-item span{font-size:.7rem;color:var(--accent)}.operation-section>.container,.product-flow-section>.container{padding-block:clamp(5rem,9vw,8rem)}.flow{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.flow-item{display:flex;align-items:center;gap:.7rem}.flow-item strong{font:500 1rem Outfit}.flow-item svg{width:16px;color:var(--accent)}.role-split{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:4rem}.role-split>div{border-top:1px solid #ffffff35;padding-top:1.5rem}.role-split b{font:600 2rem Outfit;color:var(--accent)}.role-split p{color:var(--muted)}.asymmetric-pair{display:grid;grid-template-columns:1.15fr .85fr;gap:6rem}.security-list{padding:0;list-style:none}.security-list li{padding:.75rem 0;border-bottom:1px solid var(--line)}.flow.vertical{display:block}.flow.vertical .flow-item{padding:.65rem 0;border-bottom:1px solid var(--line)}.flow.vertical svg{transform:rotate(90deg);margin-left:auto}.decision-band{background:var(--surface);padding-block:6rem}.decision-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3rem;margin:3rem 0}.decision-grid article{border-top:1px solid var(--line);padding-top:1.4rem}.decision-grid p{color:var(--muted)}.case-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:5rem;align-items:center}.product-preview{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);transform:rotate(1.5deg);color:var(--text)}.product-bar{display:flex;align-items:center;padding:.8rem 1rem;border-bottom:1px solid var(--line)}.product-bar span{font:600 1rem Outfit;margin-right:auto}.product-bar i{width:7px;height:7px;border-radius:50%;background:var(--line);margin-left:.35rem}.product-body{display:grid;grid-template-columns:120px 1fr;min-height:390px}.product-body aside{padding:1.2rem;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:1.1rem;font-size:.75rem}.product-body aside b{color:var(--accent)}.product-body main{padding:2rem;text-align:center}.product-body main>p{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.character{font:500 8rem serif;color:var(--text)}.answer-line{height:7px;background:var(--surface-strong);width:70%;margin:.7rem auto}.answer-line.short{width:45%}.review-actions{display:flex;justify-content:center;gap:.5rem;margin-top:2rem}.review-actions i{width:40px;height:22px;background:var(--accent-soft);border:1px solid var(--accent)}.problem-approach{display:grid;grid-template-columns:1fr auto 1fr;gap:3rem;align-items:center}.problem-approach article>span{color:var(--accent);font-size:.7rem}.problem-approach h2{font-size:clamp(1.35rem,2.5vw,2.15rem);line-height:1.35}.curriculum-pair{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:5rem}.curriculum-pair>div{border-top:1px solid #ffffff35;padding-top:1.5rem}.curriculum-pair span{font:600 2.5rem Outfit;color:var(--accent)}.curriculum-pair p{color:var(--muted)}.decision-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.decision-list li{display:grid;grid-template-columns:80px 1fr;padding:1.35rem 0;border-bottom:1px solid var(--line);font-size:1.1rem}.decision-list span{color:var(--accent);font-size:.75rem}.stack-diagram{display:flex;align-items:center;gap:1rem;margin:3rem 0}.stack-diagram>div{background:var(--paper);border:1px solid var(--line);padding:1.2rem 2rem;font-weight:600}.stack-diagram>svg{color:var(--accent);transform:rotate(-90deg)}.stack-diagram aside{margin-left:auto;display:grid;grid-template-columns:auto auto;gap:.7rem 1rem}.stack-diagram aside span{color:var(--muted)}.product-architecture p{max-width:760px;color:var(--muted)}.experience-timeline{padding:6rem 0 2rem}.experience-timeline article{display:grid;grid-template-columns:70px .8fr 1.2fr;gap:2rem;padding-bottom:6rem}.timeline-rail{display:flex;flex-direction:column;align-items:center;color:var(--accent);font-size:.75rem}.timeline-rail i{height:100%;border-left:1px solid var(--line);margin-top:1rem}.timeline-heading h2{font-size:clamp(2.2rem,4vw,3.6rem)}.timeline-heading h3{font-size:1.2rem;color:var(--muted);line-height:1.35}.timeline-detail ul{padding-left:1.1rem;color:var(--muted)}.timeline-detail li{margin-bottom:.7rem}.education-band{background:var(--surface);padding-block:3.5rem}.education-band>.container{display:grid;grid-template-columns:.7fr 1.3fr;gap:4rem;align-items:start}.education-band h2{font-size:clamp(2rem,4vw,3.4rem)}.education-list article{border-top:1px solid var(--line);padding:1rem 0}.education-list h3{font-size:1rem;letter-spacing:-.01em;margin-bottom:.35rem}.education-list p{color:var(--muted);margin:0;font-size:.9rem}.languages-compact{display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:center;padding-block:2.5rem}.languages-compact>.eyebrow{margin:0}.language-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 1.5rem}.language-grid dl{margin:0;border-top:1px solid var(--line);padding:.8rem 0}.language-grid dt{font-weight:600}.language-grid dd{color:var(--muted);margin:0;font-size:.9rem}.experience-support{padding:2.5rem 0 4rem}.support-heading{display:flex;align-items:end;justify-content:space-between}.support-heading h2{font-size:clamp(1.7rem,3vw,2.5rem)}.expertise-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 2.5rem;margin-top:1rem}.expertise-grid article{border-top:1px solid var(--line);padding:1.35rem 0}.expertise-grid h3{font-size:1rem;letter-spacing:-.01em;margin-bottom:.45rem}.expertise-grid p{color:var(--muted);margin:0;font-size:.9rem}@media(max-width:900px){.container{width:min(100% - 2rem,1180px)}.menu-button{display:block}.nav-links{display:none;position:absolute;top:74px;left:0;right:0;padding:1rem;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.nav-links a,.theme-button{padding:.8rem}.theme-button{display:flex}.hero-grid,.page-intro,.case-hero-grid,.education-band>.container{grid-template-columns:1fr}.hero-grid{padding-top:3rem}.hero-copy h1{font-size:clamp(3.8rem,17vw,6rem)}.portrait-stage{width:min(80%,430px);margin:auto}.social-links.compact{display:grid;grid-template-columns:1fr 1fr}.project-feature,.project-feature.hanzi{grid-template-columns:1fr;min-height:0}.project-feature.hanzi .project-visual{order:0}.project-visual{min-height:330px}.split-editorial{grid-template-columns:1fr;gap:2rem}.page-intro{gap:2rem;padding-top:4rem}.page-intro h1{overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none}.lab-stats{position:static;margin-top:3rem}.lab-stats span{writing-mode:initial}.flow{align-items:flex-start;flex-direction:column}.flow-item{width:100%;padding:.7rem 0;border-bottom:1px solid #ffffff25}.flow-item svg{margin-left:auto;transform:rotate(90deg)}.role-split,.asymmetric-pair,.decision-grid,.curriculum-pair,.problem-approach{grid-template-columns:1fr}.problem-approach>svg{transform:rotate(90deg)}.stack-diagram{flex-direction:column;align-items:stretch}.stack-diagram>svg{transform:none;align-self:center}.stack-diagram aside{margin:1rem 0 0}.experience-timeline article{grid-template-columns:55px 1fr}.timeline-detail{grid-column:2}.education-band>.container{gap:2rem}.languages-compact{grid-template-columns:1fr;gap:1rem}.languages-compact>.eyebrow{margin-bottom:.25rem}}@media(max-width:560px){.container{width:calc(100% - 1.5rem)}h1{font-size:3.35rem}.home-hero{min-height:auto}.hero-grid{padding-bottom:3.5rem}.portrait-stage{width:calc(100% - 2rem)}.portrait-label{left:-.7rem}.portrait-caption{right:-.7rem}.social-links{grid-template-columns:1fr 1fr}.social-links a:nth-child(2){border-right:0}.social-links a:nth-child(-n+2){border-bottom:1px solid var(--line)}.snapshot-line{align-items:flex-start;flex-direction:column}.snapshot-line>svg{transform:rotate(0)}.project-visual{min-height:260px}.project-copy{padding:1.5rem}.arch-branches{grid-template-columns:1fr}.arch-branches:before{display:none}.product-body{grid-template-columns:80px 1fr}.product-body main{padding:1.2rem}.character{font-size:6rem}.stack-diagram aside{grid-template-columns:1fr}.experience-timeline article{grid-template-columns:38px 1fr;gap:1rem}.timeline-detail{grid-column:2}.expertise-grid,.language-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.parallax{transform:none!important}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.product-body .preview-main{padding:2rem;text-align:center}.product-body .preview-main>p{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}@media(max-width:560px){.product-body .preview-main{padding:1.2rem}}html[data-theme=dark]{--inverse:#0d1210;--inverse-text:#f1f1e9}.portrait-label{max-width:12rem;line-height:1.35}.project-feature--hanzi{grid-template-columns:1.1fr .9fr;min-height:480px}.hanzi-project-art{display:grid;place-items:center;min-width:0;padding:clamp(1.5rem,4vw,3rem);background:var(--surface);border-left:1px solid var(--line)}.hanzi-project-card{width:100%;max-width:390px;padding:clamp(1.4rem,3vw,2.3rem);background:var(--paper);border:1px solid var(--line);box-shadow:0 18px 45px color-mix(in srgb,var(--text) 10%,transparent)}.hanzi-glyphs{display:flex;align-items:baseline;justify-content:center;gap:1rem;padding-bottom:1.4rem;border-bottom:1px solid var(--line)}.hanzi-glyphs span{font:500 clamp(3.8rem,7vw,6.2rem) serif;line-height:1;color:var(--text)}.hanzi-glyphs span:last-child{color:var(--accent)}.hanzi-cycle{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem 0;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.hanzi-cycle svg{width:14px;flex:none;color:var(--accent)}.hanzi-curricula{display:flex;justify-content:center;gap:.6rem}.hanzi-curricula span{padding:.35rem .75rem;border:1px solid var(--line);color:var(--accent);font-size:.68rem;font-weight:600;letter-spacing:.1em}.project-story{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(3rem,8vw,8rem)}.story-heading{position:sticky;top:110px;align-self:start}.story-heading h2{font-size:clamp(2.2rem,4vw,3.8rem);line-height:1.05}.project-story ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.project-story li{display:grid;grid-template-columns:55px 1fr;gap:1rem;padding:1.7rem 0;border-bottom:1px solid var(--line)}.project-story li>span{color:var(--accent);font-size:.72rem}.project-story h3{font-size:clamp(1.3rem,2vw,1.8rem);margin-bottom:.6rem}.project-story p,.section-context{color:var(--muted)}.product-narrative{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,6vw,6rem);align-items:center;margin-top:2rem}.product-narrative .flow{margin-top:2rem}.product-narrative .product-preview{transform:none;min-width:0}.product-narrative .product-body{min-height:310px}.product-narrative .character{font-size:6rem}.section-context{max-width:720px;margin:-1.5rem 0 2.5rem}.back-link{margin-left:1.5rem}.experience-intro>div:first-child{min-width:-moz-max-content;min-width:max-content}.experience-intro h1{font-size:clamp(3.2rem,7vw,6.5rem);overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;white-space:nowrap}.company-link{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none}.company-link svg{flex:none;color:var(--accent)}.company-link:hover h2{color:var(--accent)}.timeline-heading>small{display:block;color:var(--muted);margin:.8rem 0 1.5rem}.timeline-detail>h3{font-size:clamp(1.5rem,2.5vw,2.2rem);line-height:1.15}.timeline-detail>p{font-size:1.08rem}.experience-marker{height:88px;margin-top:2rem;padding:1rem 1.2rem;display:flex;align-items:center;gap:.85rem;border:1px solid var(--line);background:var(--surface);color:var(--muted)}.experience-marker svg{width:24px;color:var(--accent)}.experience-marker span{font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.capabilities-section{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(3rem,8vw,8rem);padding-block:clamp(3.5rem,6vw,5rem)}.compact-section-heading{display:flex;align-items:flex-start;gap:1rem}.compact-section-heading>span{font-size:.7rem;color:var(--accent)}.compact-section-heading h2{font-size:clamp(2rem,4vw,3.4rem)}.capability-list{display:flex;flex-wrap:wrap;align-content:flex-start;gap:.55rem;margin:0;padding:0;list-style:none}.capability-list li{padding:.5rem .75rem;border:1px solid var(--line);color:var(--muted);font-size:.82rem}.site-footer{border-top:1px solid var(--line);background:var(--paper)}.footer-row{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:end;padding-block:2.5rem}.footer-identity strong{font:600 1.2rem Outfit}.footer-identity p{margin:.3rem 0 0;color:var(--muted);font-size:.84rem}.footer-identity p a{margin-left:.35rem;color:var(--muted);font-size:.76rem;text-decoration:none}.footer-identity p a:hover{color:var(--accent)}.footer-row nav{display:flex;gap:1.1rem}.footer-row nav a{display:inline-flex;align-items:center;gap:.35rem;color:var(--muted);font-size:.82rem;text-decoration:none}.footer-row nav a:hover{color:var(--accent)}.footer-row>small{grid-column:1/-1;color:var(--muted);border-top:1px solid var(--line);padding-top:1rem}@media(max-width:900px){.project-story,.product-narrative,.capabilities-section{grid-template-columns:1fr}.capabilities-section{gap:1.5rem}.story-heading{position:static}.experience-intro>div:first-child{min-width:0}.experience-intro h1{font-size:clamp(3rem,12vw,5.5rem)}.footer-row{grid-template-columns:1fr}.footer-row nav{flex-wrap:wrap}.footer-row>small{grid-column:auto}.product-narrative .flow{margin-bottom:2rem}.project-feature--hanzi{grid-template-columns:1fr;min-height:0}.hanzi-project-art{min-height:320px;border-left:0;border-top:1px solid var(--line)}}@media(max-width:560px){.page-intro h1,.experience-intro h1{font-size:clamp(2.8rem,15vw,4rem);white-space:normal;overflow-wrap:normal;word-break:normal}.project-story li{grid-template-columns:35px 1fr}.product-preview{transform:none}.product-body{min-height:330px}.product-body aside{font-size:.66rem;padding:.8rem}.product-narrative .product-body{min-height:290px}.footer-row nav{display:grid;grid-template-columns:1fr 1fr}.back-link{display:flex;margin:1rem 0 0}.hanzi-project-art{min-height:270px;padding:1.25rem}.hanzi-project-card{padding:1.25rem}.hanzi-glyphs span{font-size:4rem}.hanzi-cycle{gap:.3rem;font-size:.58rem}.hanzi-cycle svg{width:11px}}.not-found{min-height:calc(100vh - 260px);display:flex;flex-direction:column;justify-content:center;padding-block:clamp(5rem,12vw,10rem)}.not-found h1{margin:.3rem 0 1rem;font-size:clamp(3.4rem,9vw,7rem);overflow-wrap:normal;word-break:normal}.not-found>p:not(.eyebrow){max-width:560px;color:var(--muted);font-size:1.15rem}.not-found>div{display:flex;align-items:center;gap:1.5rem;margin-top:1.5rem}@media(max-width:560px){.not-found>div{align-items:flex-start;flex-direction:column}}.atl-hero{overflow:hidden;border-bottom:1px solid var(--line)}.atl-hero>.container{padding-block:clamp(2rem,5vw,4rem)}.atl-brand{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:clamp(1.75rem,4vw,3rem)}.atl-brand img{display:block;width:clamp(150px,22vw,235px);height:auto;margin:-2.8% 0 -3.8%;filter:brightness(0) saturate(100%) invert(37%) sepia(18%) saturate(1427%) hue-rotate(112deg) brightness(92%) contrast(89%)}html[data-theme=dark] .atl-brand img{filter:brightness(0) saturate(100%) invert(75%) sepia(22%) saturate(579%) hue-rotate(105deg) brightness(91%) contrast(87%)}.atl-brand strong{font:600 clamp(.72rem,1.2vw,.9rem) "Outfit";letter-spacing:.18em;text-transform:uppercase}.atl-hero-copy{max-width:850px}.atl-hero h1{margin:.25rem 0 1.25rem;font-size:clamp(4.2rem,10vw,8.5rem)}.atl-value{max-width:780px;margin-bottom:1.1rem;font:500 clamp(1.4rem,3vw,2.2rem)/1.25 "Outfit";letter-spacing:-.02em;color:var(--accent)}.atl-hero-intro{max-width:680px;font-size:clamp(1.05rem,1.8vw,1.3rem);color:var(--muted)}.atl-services{padding-block:clamp(4rem,7vw,6rem)}.atl-section-heading{max-width:760px;margin-bottom:clamp(2rem,4vw,3rem)}.atl-section-heading h2{margin-bottom:1.2rem}.atl-section-heading>p:last-child{color:var(--muted);font-size:1.05rem}.atl-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line)}.atl-service-card{padding:1.5rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.atl-service-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;color:var(--accent)}.atl-service-label span{font-size:.72rem}.atl-service-label svg{width:24px}.atl-service-card h3{margin-bottom:1rem;font-size:1.4rem}.atl-service-card>strong{display:block;font:500 1rem/1.4 Outfit}.atl-service-card>p{margin:.8rem 0 0;color:var(--muted);font-size:.92rem}.atl-trust{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(3rem,9vw,9rem);padding-block:clamp(4rem,7vw,6rem)}.atl-trust-copy{font-size:1.08rem}.atl-trust-copy p{color:var(--muted)}.atl-contact{padding-block:clamp(4rem,7vw,6rem);background:var(--surface)}.atl-contact>.container{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem);align-items:end}.atl-contact-heading>p:last-child{max-width:550px;margin-top:1.5rem;color:var(--muted)}.atl-contact-links{border-top:1px solid var(--line)}.atl-contact-links>a{display:flex;align-items:center;gap:1rem;padding:1.25rem .4rem;border-bottom:1px solid var(--line);text-decoration:none;transition:padding .2s,background .2s}.atl-contact-links>a:hover{padding-left:1rem;background:var(--paper)}.atl-contact-links svg{width:22px;color:var(--accent)}.atl-contact-links span{display:flex;flex-direction:column;min-width:0}.atl-contact-links small{color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.atl-contact-links strong{overflow-wrap:anywhere;font:600 1.08rem Outfit}@media(max-width:900px){.atl-service-grid,.atl-trust,.atl-contact>.container{grid-template-columns:1fr}}@media(max-width:560px){.atl-hero>.container{padding-block:2rem 3rem}.atl-brand{margin-bottom:1.75rem}.atl-hero h1{font-size:clamp(4rem,20vw,6rem)}.atl-contact-links>a{min-height:72px}}.snapshot-line{display:grid;grid-template-columns:repeat(3,1fr);align-items:stretch}.snapshot-line article{min-width:0}.snapshot-line h3{overflow-wrap:anywhere}@media(max-width:760px){.snapshot-line{grid-template-columns:1fr}.snapshot-line article{width:100%}}.language-switch{display:flex;align-items:center;margin-left:.35rem;color:var(--line);font-size:.72rem}.language-switch button{border:0;background:transparent;color:var(--muted);padding:.45rem .25rem;cursor:pointer;font:600 .72rem DM Sans}.language-switch button.active{color:var(--text);text-decoration:underline;text-underline-offset:4px}.language-switch i{font-style:normal}@media(max-width:900px){.language-switch{padding:.4rem .55rem;margin:0}.language-switch button{padding:.4rem .25rem}}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:-.5rem}.after\:inset-y-0:after{content:var(--tw-content);top:0;bottom:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:.25rem}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x: -50%;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))}.first\:rounded-l-md:first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.first\:border-l:first-child{border-left-width:1px}.last\:mt-0:last-child{margin-top:0}.last\:rounded-r-md:last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary) / .8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:bg-sidebar-accent:hover{background-color:hsl(var(--sidebar-accent))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-muted-foreground:hover{color:hsl(var(--muted-foreground))}.hover\:text-sidebar-accent-foreground:hover{color:hsl(var(--sidebar-accent-foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow: 0 0 0 1px hsl(var(--sidebar-accent));--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:hsl(var(--sidebar-border))}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:border-ring:focus-visible{border-color:hsl(var(--ring))}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-0:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color: hsl(var(--ring) / .5)}.focus-visible\:ring-sidebar-ring:focus-visible{--tw-ring-color: hsl(var(--sidebar-ring))}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width: 1px}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(var(--background))}.active\:bg-sidebar-accent:active{background-color:hsl(var(--sidebar-accent))}.active\:text-sidebar-accent-foreground:active{color:hsl(var(--sidebar-accent-foreground))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group\/menu-item:focus-within .group-focus-within\/menu-item\:opacity-100{opacity:1}.group\/menu-item:hover .group-hover\/menu-item\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}.group.destructive .group-\[\.destructive\]\:border-muted\/40{border-color:hsl(var(--muted) / .4)}.group.toaster .group-\[\.toaster\]\:border-border{border-color:hsl(var(--border))}.group.toast .group-\[\.toast\]\:bg-muted{background-color:hsl(var(--muted))}.group.toast .group-\[\.toast\]\:bg-primary{background-color:hsl(var(--primary))}.group.toaster .group-\[\.toaster\]\:bg-background{background-color:hsl(var(--background))}.group.destructive .group-\[\.destructive\]\:text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.group.toast .group-\[\.toast\]\:text-muted-foreground{color:hsl(var(--muted-foreground))}.group.toast .group-\[\.toast\]\:text-primary-foreground{color:hsl(var(--primary-foreground))}.group.toaster .group-\[\.toaster\]\:text-foreground{color:hsl(var(--foreground))}.group.toaster .group-\[\.toaster\]\:shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover{border-color:hsl(var(--destructive) / .3)}.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover{background-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover{color:hsl(var(--destructive-foreground))}.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus{--tw-ring-color: hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus{--tw-ring-offset-color: #dc2626}.peer\/menu-button:hover~.peer-hover\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.has-\[\>button\]\:ml-\[-0\.45rem\]:has(>button){margin-left:-.45rem}.has-\[\>button\]\:mr-\[-0\.4rem\]:has(>button){margin-right:-.4rem}.has-\[\>kbd\]\:ml-\[-0\.35rem\]:has(>kbd){margin-left:-.35rem}.has-\[\>kbd\]\:mr-\[-0\.35rem\]:has(>kbd){margin-right:-.35rem}.has-\[\>\[data-align\=block-end\]\]\:h-auto:has(>[data-align=block-end]){height:auto}.has-\[\>\[data-align\=block-start\]\]\:h-auto:has(>[data-align=block-start]){height:auto}.has-\[\>textarea\]\:h-auto:has(>textarea){height:auto}.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}.has-\[\>\[data-align\=block-end\]\]\:flex-col:has(>[data-align=block-end]){flex-direction:column}.has-\[\>\[data-align\=block-start\]\]\:flex-col:has(>[data-align=block-start]){flex-direction:column}.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\[\>\[data-slot\=button-group\]\]\:gap-2:has(>[data-slot=button-group]){gap:.5rem}.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:.75rem}.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:.75rem}.has-\[\>\[data-slot\=field\]\]\:rounded-md:has(>[data-slot=field]){border-radius:calc(var(--radius) - 2px)}.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-width:1px}.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:border-destructive:has([data-slot][aria-invalid=true]){border-color:hsl(var(--destructive))}.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant=inset]){background-color:hsl(var(--sidebar-background))}.has-\[\>svg\]\:p-0:has(>svg){padding:0}.has-\[\>svg\]\:px-2:has(>svg){padding-left:.5rem;padding-right:.5rem}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-left:.625rem;padding-right:.625rem}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-1:has([data-slot=input-group-control]:focus-visible){--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring:has([data-slot=input-group-control]:focus-visible){--tw-ring-color: hsl(var(--ring))}.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has([data-slot][aria-invalid=true]){--tw-ring-color: hsl(var(--destructive) / .2)}.group\/item:has([data-slot=item-description]) .group-has-\[\[data-slot\=item-description\]\]\/item\:translate-y-0\.5{--tw-translate-y: .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))}.group\/item:has([data-slot=item-description]) .group-has-\[\[data-slot\=item-description\]\]\/item\:self-start{align-self:flex-start}.group\/field:has([data-orientation=horizontal]) .group-has-\[\[data-orientation\=horizontal\]\]\/field\:text-balance{text-wrap:balance}.group\/input-group:has(>input) .group-has-\[\>input\]\/input-group\:pb-2\.5{padding-bottom:.625rem}.group\/input-group:has(>input) .group-has-\[\>input\]\/input-group\:pt-2\.5{padding-top:.625rem}.group\/menu-item:has([data-sidebar=menu-action]) .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8{padding-right:2rem}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-selected\:text-muted-foreground[aria-selected=true]{color:hsl(var(--muted-foreground))}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[orientation\=vertical\]\:h-auto[data-orientation=vertical]{height:auto}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;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))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;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))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;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))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;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))}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x: 1rem;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))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x: 0px;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))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x: var(--radix-toast-swipe-end-x);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))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x: var(--radix-toast-swipe-move-x);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))}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up .2s ease-out}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down .2s ease-out}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:.75rem}.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:calc(var(--radius) - 2px)}.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:calc(var(--radius) - 2px)}.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:hsl(var(--sidebar-accent))}.data-\[range-end\=true\]\:bg-primary[data-range-end=true]{background-color:hsl(var(--primary))}.data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{background-color:hsl(var(--accent))}.data-\[range-start\=true\]\:bg-primary[data-range-start=true],.data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{background-color:hsl(var(--primary))}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:hsl(var(--accent))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=on\]\:bg-accent[data-state=on],.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:hsl(var(--accent) / .5)}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:.875rem;line-height:1.25rem}.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:1rem;line-height:1.5rem}.data-\[active\=true\]\:font-medium[data-active=true]{font-weight:500}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:hsl(var(--sidebar-accent-foreground))}.data-\[invalid\=true\]\:text-destructive[data-invalid=true]{color:hsl(var(--destructive))}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:hsl(var(--muted-foreground))}.data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{color:hsl(var(--primary-foreground))}.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{color:hsl(var(--accent-foreground))}.data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true],.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{color:hsl(var(--primary-foreground))}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:hsl(var(--accent-foreground))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-\[state\=on\]\:text-accent-foreground[data-state=on],.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:hsl(var(--accent-foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-],.data-\[state\=open\]\:animate-in[data-state=open],.data-\[state\=visible\]\:animate-in[data-state=visible]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-],.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[state\=hidden\]\:animate-out[data-state=hidden],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity: 0}.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-],.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity: .8}.data-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity: 0}.data-\[state\=open\]\:fade-in-0[data-state=open],.data-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-90[data-state=open]{--tw-enter-scale: .9}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x: 13rem}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x: -13rem}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x: 13rem}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x: -13rem}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y: -.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x: .5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x: -.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y: .5rem}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y: 100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x: -100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed],.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y: -100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y: 100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x: -100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x: 100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:0}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:.25rem}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y: -50%;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))}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x: 0px;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))}.data-\[state\=open\]\:hover\:bg-accent:hover[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:hover\:bg-sidebar-accent:hover[data-state=open]{background-color:hsl(var(--sidebar-accent))}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground:hover[data-state=open]{color:hsl(var(--sidebar-accent-foreground))}.data-\[state\=open\]\:focus\:bg-accent:focus[data-state=open]{background-color:hsl(var(--accent))}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:relative{position:relative}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]{left:calc(var(--sidebar-width) * -1)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]{right:calc(var(--sidebar-width) * -1)}.group[data-side=left] .group-data-\[side\=left\]\:-right-4{right:-1rem}.group[data-side=right] .group-data-\[side\=right\]\:left-0{left:0}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:z-10{z-index:10}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:-mt-8{margin-top:-2rem}.group\/field-group[data-variant=outline] .group-data-\[variant\=outline\]\/field-group\:-mb-2{margin-bottom:-.5rem}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:hidden{display:none}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!size-8{width:2rem!important;height:2rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[--sidebar-width-icon\]{width:var(--sidebar-width-icon)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]{width:calc(var(--sidebar-width-icon) + 1rem)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]{width:calc(var(--sidebar-width-icon) + 1rem + 2px)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:w-0{width:0px}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:translate-x-0{--tw-translate-x: 0px;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[data-side=right] .group-data-\[side\=right\]\:rotate-180,.group[data-state=open] .group-data-\[state\=open\]\:rotate-180{--tw-rotate: 180deg;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[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:overflow-hidden{overflow:hidden}.group[data-variant=floating] .group-data-\[variant\=floating\]\:rounded-lg{border-radius:var(--radius)}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border{border-width:1px}.group[data-side=left] .group-data-\[side\=left\]\:border-r{border-right-width:1px}.group[data-side=right] .group-data-\[side\=right\]\:border-l{border-left-width:1px}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:border-ring{border-color:hsl(var(--ring))}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border-sidebar-border{border-color:hsl(var(--sidebar-border))}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-0{padding:0!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-2{padding:.5rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:opacity-0{opacity:0}.group\/field[data-disabled=true] .group-data-\[disabled\=true\]\/field\:opacity-50,.group\/input-group[data-disabled=true] .group-data-\[disabled\=true\]\/input-group\:opacity-50{opacity:.5}.group[data-variant=floating] .group-data-\[variant\=floating\]\:shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:ring-\[3px\]{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:ring-ring\/50{--tw-ring-color: hsl(var(--ring) / .5)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:after\:left-full:after{content:var(--tw-content);left:100%}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:hover\:bg-sidebar:hover{background-color:hsl(var(--sidebar-background))}.peer\/menu-button[data-size=default]~.peer-data-\[size\=default\]\/menu-button\:top-1\.5{top:.375rem}.peer\/menu-button[data-size=lg]~.peer-data-\[size\=lg\]\/menu-button\:top-2\.5{top:.625rem}.peer\/menu-button[data-size=sm]~.peer-data-\[size\=sm\]\/menu-button\:top-1{top:.25rem}.peer\/menu-button[data-active=true]~.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}.dark\:border-destructive:is(.dark *){border-color:hsl(var(--destructive))}.dark\:bg-input\/30:is(.dark *){background-color:hsl(var(--input) / .3)}.dark\:bg-transparent:is(.dark *){background-color:transparent}.dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:has([data-slot][aria-invalid=true]):is(.dark *){--tw-ring-color: hsl(var(--destructive) / .4)}@media(min-width:640px){.sm\:bottom-0{bottom:0}.sm\:right-0{right:0}.sm\:top-auto{top:auto}.sm\:mt-0{margin-top:0}.sm\:flex{display:flex}.sm\:max-w-sm{max-width:24rem}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:.625rem}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y: 100%}}@media(min-width:768px){.md\:absolute{position:absolute}.md\:block{display:block}.md\:flex{display:flex}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:max-w-\[420px\]{max-width:420px}.md\:flex-row{flex-direction:row}.md\:p-12{padding:3rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:opacity-0{opacity:0}.after\:md\:hidden:after{content:var(--tw-content);display:none}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:m-2{margin:.5rem}.peer[data-state=collapsed][data-variant=inset]~.md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2{margin-left:.5rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:ml-0{margin-left:0}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:rounded-xl{border-radius:.75rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}}.\[\&\+\[data-slot\=item-content\]\]\:flex-none+[data-slot=item-content]{flex:none}.\[\&\+div\]\:text-xs+div{font-size:.75rem;line-height:1rem}.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-l-none>*:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-t-none>*:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-l-0>*:not(:first-child){border-left-width:0px}.\[\&\>\*\:not\(\:first-child\)\]\:border-t-0>*:not(:first-child){border-top-width:0px}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-b-none>*:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-r-none>*:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.\[\&\>\*\]\:w-full>*{width:100%}.\[\&\>\*\]\:focus-visible\:relative:focus-visible>*{position:relative}.\[\&\>\*\]\:focus-visible\:z-10:focus-visible>*{z-index:10}.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}.\[\&\>\[data-slot\=field-group\]\]\:gap-4>[data-slot=field-group]{gap:1rem}.\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:1 1 auto}.\[\&\>\[data-slot\=field\]\]\:p-4>[data-slot=field]{padding:1rem}.has-\[select\[aria-hidden\=true\]\:last-child\]\:\[\&\>\[data-slot\=select-trigger\]\:last-of-type\]\:rounded-r-md>[data-slot=select-trigger]:last-of-type:has(select[aria-hidden=true]:last-child){border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\>\[data-slot\=select-trigger\]\:not\(\[class\*\=\'w-\'\]\)\]\:w-fit>[data-slot=select-trigger]:not([class*=w-]){width:-moz-fit-content;width:fit-content}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y: 2px;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))}.\[\&\>a\:hover\]\:text-primary>a:hover{color:hsl(var(--primary))}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>input\]\:flex-1>input{flex:1 1 0%}.has-\[\>\[data-align\=block-end\]\]\:\[\&\>input\]\:pt-3>input:has(>[data-align=block-end]){padding-top:.75rem}.has-\[\>\[data-align\=block-start\]\]\:\[\&\>input\]\:pb-3>input:has(>[data-align=block-start]){padding-bottom:.75rem}.has-\[\>\[data-align\=inline-end\]\]\:\[\&\>input\]\:pr-2>input:has(>[data-align=inline-end]){padding-right:.5rem}.has-\[\>\[data-align\=inline-start\]\]\:\[\&\>input\]\:pl-2>input:has(>[data-align=inline-start]){padding-left:.5rem}.\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\]>kbd{border-radius:calc(var(--radius) - 5px)}.\[\&\>span\:last-child\]\:truncate>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&\>span\]\:text-xs>span{font-size:.75rem;line-height:1rem}.\[\&\>span\]\:opacity-70>span{opacity:.7}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y: -3px;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))}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5>svg:not([class*=size-]){width:.875rem;height:.875rem}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4>svg:not([class*=size-]){width:1rem;height:1rem}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:left-4>svg{left:1rem}.\[\&\>svg\]\:top-4>svg{top:1rem}.\[\&\>svg\]\:size-3\.5>svg{width:.875rem;height:.875rem}.\[\&\>svg\]\:size-4>svg{width:1rem;height:1rem}.\[\&\>svg\]\:h-2\.5>svg{height:.625rem}.\[\&\>svg\]\:h-3>svg{height:.75rem}.\[\&\>svg\]\:h-3\.5>svg{height:.875rem}.\[\&\>svg\]\:w-2\.5>svg{width:.625rem}.\[\&\>svg\]\:w-3>svg{width:.75rem}.\[\&\>svg\]\:w-3\.5>svg{width:.875rem}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-destructive>svg{color:hsl(var(--destructive))}.\[\&\>svg\]\:text-foreground>svg{color:hsl(var(--foreground))}.\[\&\>svg\]\:text-muted-foreground>svg{color:hsl(var(--muted-foreground))}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:hsl(var(--sidebar-accent-foreground))}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:1.75rem}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0px}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{--tw-rotate: 90deg;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))}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{--tw-rotate: 180deg;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))}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:hsl(var(--muted-foreground))}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:hsl(var(--border) / .5)}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:hsl(var(--border))}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-layer\]\:outline-none .recharts-layer{outline:2px solid transparent;outline-offset:2px}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:hsl(var(--border))}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:hsl(var(--muted))}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:hsl(var(--border))}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-sector\]\:outline-none .recharts-sector,.\[\&_\.recharts-surface\]\:outline-none .recharts-surface{outline:2px solid transparent;outline-offset:2px}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{font-weight:500}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:hsl(var(--muted-foreground))}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-top:.75rem;padding-bottom:.75rem}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:1.25rem}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:1.25rem}.\[\&_\[data-cmdk-input-wrapper\]_svg\]\:h-5 [data-cmdk-input-wrapper] svg{height:1.25rem}.\[\&_\[data-cmdk-input-wrapper\]_svg\]\:w-5 [data-cmdk-input-wrapper] svg{width:1.25rem}.\[\&_img\]\:size-full img{width:100%;height:100%}.\[\&_img\]\:object-cover img{-o-object-fit:cover;object-fit:cover}.\[\&_p\]\:leading-relaxed p{line-height:1.625}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:.75rem;height:.75rem}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:1rem;height:1rem}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6 svg:not([class*=size-]){width:1.5rem;height:1.5rem}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0px}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:-.5rem}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:-.5rem}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:transparent}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:hsl(var(--background) / .2)}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:text-background{color:hsl(var(--background))}[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:hsl(var(--background) / .1)}[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:-.375rem}
