@layer components{.home-library[hidden]{display:none !important}.home-library{box-sizing:border-box;width:100%;min-height:100%;padding:0 clamp(26px,4vw,48px) 54px;color:var(--home-ink,#091f3b);background:#ffffff}.home-library__header{position:sticky;top:0;z-index:3;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px 28px;align-items:end;padding:28px 0 22px;border-bottom:1px solid #dce3ec;background:linear-gradient(180deg,#ffffff 0%,#ffffff 86%,rgba(255,255,255,.96) 100%)}.home-library__back{box-sizing:border-box;display:inline-flex;grid-column:1 / -1;align-items:center;gap:7px;width:max-content;min-height:40px;margin:0;padding:0 10px 0 6px;border:0;border-radius:7px;color:color-mix(in srgb,var(--panel-color) 76%,#091f3b 24%);background:transparent;cursor:pointer;font:inherit;font-size:.8rem;font-weight:780}.home-library__back:is(:hover,:focus-visible){color:#ffffff;background:var(--panel-color);outline:3px solid color-mix(in srgb,var(--panel-color) 25%,transparent);outline-offset:2px}.home-library__back > span,.home-library__back svg{display:grid;width:19px;height:19px;place-items:center}.home-library__back svg,.home-library__page-link svg,.home-library__media svg,.home-library__arrow svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.home-library__back--overview{display:none}.home-accordion.is-library-mode .home-accordion__item:not(.home-accordion__item--has-library).is-active .home-library__back--overview{display:inline-flex;position:sticky;top:0;z-index:4;margin:18px 0 0 clamp(30px,5vw,58px);background:#ffffff}.home-library__heading{min-width:0}.home-library__heading h3{margin:0;color:#091f3b;font-size:clamp(1.65rem,2.7vw,2.5rem);font-weight:850;letter-spacing:-.035em;line-height:1.05}.home-library__heading h3:focus-visible{border-radius:6px;outline:3px solid color-mix(in srgb,var(--panel-color) 62%,#ffffff 38%);outline-offset:5px}.home-library__heading p{max-width:66ch;margin:9px 0 0;color:var(--home-muted,#475569);font-size:.92rem;line-height:1.48}.home-library__page-link{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 15px;border:2px solid var(--panel-color);border-radius:8px;color:var(--panel-color);background:#ffffff;font-size:.78rem;font-weight:790;line-height:1.2;text-align:center;text-decoration:none}.home-library__page-link:is(:hover,:focus-visible){color:#ffffff;background:var(--panel-color);outline:3px solid color-mix(in srgb,var(--panel-color) 27%,transparent);outline-offset:3px}.home-library__page-link span,.home-library__page-link svg{width:18px;height:18px}.home-library__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:0;padding:24px 0 0;list-style:none}.home-library__item{min-width:0;margin:0;padding:0}.home-library__card{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) 22px;grid-template-rows:auto minmax(0,1fr);gap:12px 10px;align-items:start;min-height:0;height:100%;padding:10px 12px 14px;border:1px solid color-mix(in srgb,var(--panel-color) 20%,#cbd5e1 80%);border-left:4px solid var(--panel-color);border-radius:8px;color:#091f3b;background:#ffffff;box-shadow:0 4px 14px rgba(9,31,59,.055);text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.home-library__card:is(:hover,:focus-visible){border-color:var(--panel-color);outline:3px solid color-mix(in srgb,var(--panel-color) 20%,transparent);outline-offset:2px;box-shadow:0 9px 22px rgba(9,31,59,.11);transform:translateY(-2px)}.home-library__media{box-sizing:border-box;display:grid;grid-column:1 / -1;width:100%;height:auto;aspect-ratio:16 / 9;overflow:hidden;place-items:center;border:1px solid #dce3ec;border-radius:8px;background:#f3f6fa}.home-library__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}:is( .home-library[data-home-library-view="projects"],.personal-library--projects ) :is(.home-library__media--preview,.home-library__media--image){padding:8px;background:#f3f6fa}:is( .home-library[data-home-library-view="projects"],.personal-library--projects ) :is(.home-library__media--preview,.home-library__media--image) img{object-fit:contain;object-position:center}.home-library__media--glyph{padding:0;color:var(--panel-color)}.home-library__media--glyph svg{width:clamp(44px,14%,64px);height:clamp(44px,14%,64px)}.home-library__copy{display:grid;grid-column:1;grid-row:2;gap:6px;min-width:0}.home-library__copy strong{color:#091f3b;font-size:.98rem;font-weight:810;letter-spacing:-.015em;line-height:1.2}.home-library__copy > span{display:-webkit-box;overflow:hidden;color:#526174;font-size:.78rem;line-height:1.42;-webkit-box-orient:vertical;-webkit-line-clamp:3}.home-library__arrow{display:grid;grid-column:2;grid-row:2;align-self:start;width:20px;height:20px;margin-top:2px;place-items:center;color:var(--panel-color)}.home-accordion.is-library-mode .home-accordion__item--has-library.is-active :is( .home-accordion__panel-head,.home-accordion__context,.home-accordion__meta,.home-accordion__cards,.home-timeline,.home-accordion__panel-cta ){display:none}.home-accordion__shell,.home-accordion__item.is-active .home-accordion__panel{view-transition-name:home-shell}.home-accordion__item.is-active .home-accordion__panel{view-transition-name:home-active-panel}::view-transition-group(home-shell),::view-transition-group(home-active-panel){animation-duration:440ms;animation-timing-function:cubic-bezier(.22,1,.36,1)}.home-accordion.is-view-changing .home-accordion__shell{animation:homeLibraryFallbackIn 440ms cubic-bezier(.22,1,.36,1) both}@keyframes homeLibraryFallbackIn{from{opacity:.72;transform:scale(.992)}to{opacity:1;transform:scale(1)}}@media (min-width:960px) and (min-height:620px){.home-accordion.is-library-mode{--home-library-tab-width:84px}.home-accordion.is-library-mode .home-accordion__shell{display:grid;grid-template-columns:var(--home-library-tab-width) minmax(0,1fr);grid-template-rows:repeat(5,minmax(0,1fr))}.home-accordion.is-library-mode .home-accordion__item,.home-accordion.is-library-mode .home-accordion__item.is-active{display:contents}.home-accordion.is-library-mode .home-accordion__item:nth-child(1) .home-accordion__heading{grid-row:1}.home-accordion.is-library-mode .home-accordion__item:nth-child(2) .home-accordion__heading{grid-row:2}.home-accordion.is-library-mode .home-accordion__item:nth-child(3) .home-accordion__heading{grid-row:3}.home-accordion.is-library-mode .home-accordion__item:nth-child(4) .home-accordion__heading{grid-row:4}.home-accordion.is-library-mode .home-accordion__item:nth-child(5) .home-accordion__heading{grid-row:5}.home-accordion.is-library-mode .home-accordion__heading,.home-accordion.is-library-mode .home-accordion__item.is-active .home-accordion__heading{grid-column:1;width:var(--home-library-tab-width);height:100%;flex-basis:auto}.home-accordion.is-library-mode .home-accordion__rail,.home-accordion.is-library-mode .home-accordion__item.is-active .home-accordion__rail{display:flex;flex:1 1 auto;flex-direction:column;align-items:center;gap:3px;justify-content:center;width:100%;height:100%;padding:6px 5px}.home-accordion.is-library-mode .home-accordion__rail-icon{position:static;flex:0 0 22px;width:22px;height:22px;transform:none}.home-accordion.is-library-mode .home-accordion__rail-label{position:static;flex:0 1 auto;font-size:clamp(.64rem,1.45vh,.72rem);letter-spacing:.025em;line-height:1;text-align:center;white-space:nowrap;writing-mode:vertical-rl;transform:rotate(180deg)}.home-accordion.is-library-mode .home-accordion__rail::after{top:50%;right:-15px;bottom:auto;left:auto;width:16px;height:30px;clip-path:polygon(0 0,100% 50%,0 100%);transform:translateY(-50%)}.home-accordion.is-library-mode .home-accordion__panel{grid-column:2;grid-row:1 / -1;width:100%;height:100%;border:5px solid var(--panel-color);border-left:0;border-radius:0}.home-accordion.is-library-mode .home-accordion__item:last-child.is-active .home-accordion__panel{border-radius:0 12px 12px 0}.home-accordion.is-library-mode .home-accordion__scroller{height:100%;overflow-x:hidden;overflow-y:auto}.home-accordion.is-library-mode .home-accordion__item:not(.home-accordion__item--has-library).is-active :is( .home-accordion__panel-head,.home-accordion__context,.home-accordion__meta,.home-accordion__cards,.home-timeline ){width:min(100%,1120px)}}@media (max-width:959px),(max-height:619px){.home-library{min-height:0;padding:0 14px 34px}.home-library__header{position:static;grid-template-columns:1fr;gap:15px;padding:20px 2px 18px}.home-library__back{grid-column:1}.home-library__heading h3{font-size:clamp(1.45rem,7vw,1.9rem)}.home-library__heading p{font-size:.84rem}.home-library__page-link{width:100%;min-height:46px}.home-library__list{grid-template-columns:1fr;gap:10px;padding-top:16px}.home-library__card{grid-template-columns:clamp(132px,28vw,190px) minmax(0,1fr) 20px;grid-template-rows:auto;gap:12px;align-items:center;min-height:108px;padding:10px}.home-library__media{grid-column:1;grid-row:1;width:100%;height:auto}.home-library__media--glyph{padding:0}.home-library__media--glyph svg{width:clamp(38px,22%,54px);height:clamp(38px,22%,54px)}.home-library__copy{grid-column:2;grid-row:1}.home-library__arrow{grid-column:3;grid-row:1;align-self:center;margin-top:0}.home-library__copy strong{font-size:.92rem}.home-library__copy > span{font-size:.73rem;-webkit-line-clamp:2}.home-accordion.is-library-mode .home-accordion__shell{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:78px auto;align-items:start}.home-accordion.is-library-mode .home-accordion__item,.home-accordion.is-library-mode .home-accordion__item.is-active{display:contents}.home-accordion.is-library-mode .home-accordion__item:nth-child(1) .home-accordion__heading{grid-column:1}.home-accordion.is-library-mode .home-accordion__item:nth-child(2) .home-accordion__heading{grid-column:2}.home-accordion.is-library-mode .home-accordion__item:nth-child(3) .home-accordion__heading{grid-column:3}.home-accordion.is-library-mode .home-accordion__item:nth-child(4) .home-accordion__heading{grid-column:4}.home-accordion.is-library-mode .home-accordion__item:nth-child(5) .home-accordion__heading{grid-column:5}.home-accordion.is-library-mode .home-accordion__heading,.home-accordion.is-library-mode .home-accordion__item.is-active .home-accordion__heading{position:sticky;top:0;z-index:8;grid-row:1 / -1;align-self:start;width:100%;height:78px}.home-accordion.is-library-mode .home-accordion__rail,.home-accordion.is-library-mode .home-accordion__item.is-active .home-accordion__rail{display:flex;flex-direction:column;gap:5px;justify-content:center;width:100%;height:78px;min-height:78px;padding:8px 3px;border-right:1px solid #dce3ec;color:var(--panel-color);background:#ffffff}.home-accordion.is-library-mode .home-accordion__item:last-child .home-accordion__rail{border-right:0}.home-accordion.is-library-mode .home-accordion__item.is-active .home-accordion__rail{color:#ffffff;background:var(--panel-color);filter:none}.home-accordion.is-library-mode .home-accordion__rail-icon{position:static;width:24px;height:24px;transform:none}.home-accordion.is-library-mode .home-accordion__rail-label{position:static;margin:0;color:var(--panel-color);font-size:clamp(.56rem,2.2vw,.7rem);letter-spacing:.025em;writing-mode:horizontal-tb;transform:none}.home-accordion.is-library-mode .home-accordion__item.is-active .home-accordion__rail-label{color:#ffffff}.home-accordion.is-library-mode .home-accordion__rail-chevron{display:none}.home-accordion.is-library-mode .home-accordion__rail::after{top:auto;right:auto;bottom:-11px;left:50%;width:24px;height:12px;clip-path:polygon(0 0,100% 0,50% 100%);transform:translateX(-50%)}.home-accordion.is-library-mode .home-accordion__panel{grid-column:1 / -1;grid-row:2;width:100%;height:auto;border:5px solid var(--panel-color);border-radius:0}.home-accordion.is-library-mode .home-accordion__scroller{height:auto;overflow:visible}.home-accordion.is-library-mode .home-accordion__item:not(.home-accordion__item--has-library).is-active .home-library__back--overview{position:static;margin:14px 12px 0}}@media (max-width:768px){body.has-mobile-site-masthead[data-page="home"].home-pattern-page:has(.home-accordion.is-library-mode){padding-top:0 !important}body.has-mobile-site-masthead[data-page="home"].home-pattern-page .home-accordion.is-library-mode .home-accordion__shell{grid-template-rows:calc(78px + var(--mobile-site-masthead-height,62px)) auto}body.has-mobile-site-masthead[data-page="home"].home-pattern-page .home-accordion.is-library-mode .home-accordion__heading{position:fixed;top:var(--mobile-site-masthead-height,62px);width:20vw}body.has-mobile-site-masthead[data-page="home"].home-pattern-page .home-accordion.is-library-mode .home-accordion__item:nth-child(1) .home-accordion__heading{left:0}body.has-mobile-site-masthead[data-page="home"].home-pattern-page .home-accordion.is-library-mode .home-accordion__item:nth-child(2) .home-accordion__heading{left:20vw}body.has-mobile-site-masthead[data-page="home"].home-pattern-page .home-accordion.is-library-mode .home-accordion__item:nth-child(3) .home-accordion__heading{left:40vw}body.has-mobile-site-masthead[data-page="home"].home-pattern-page .home-accordion.is-library-mode .home-accordion__item:nth-child(4) .home-accordion__heading{left:60vw}body.has-mobile-site-masthead[data-page="home"].home-pattern-page .home-accordion.is-library-mode .home-accordion__item:nth-child(5) .home-accordion__heading{left:80vw}}@media (max-width:480px){.home-library{padding-right:10px;padding-bottom:28px;padding-left:10px}.home-library__list{gap:8px;padding-top:14px}.home-library__card{grid-template-columns:clamp(96px,34vw,150px) minmax(0,1fr) 18px;gap:8px;min-height:80px;padding:8px}.home-library__media{border-radius:6px}.home-library__media--glyph svg{width:clamp(32px,24%,42px);height:clamp(32px,24%,42px)}.home-library__copy{gap:4px}.home-library__copy strong{font-size:.84rem;line-height:1.15}.home-library__copy > span{font-size:.69rem;line-height:1.35}.home-library__arrow{width:18px;height:18px}}@media (prefers-reduced-motion:reduce){.home-library__card,.home-accordion.is-view-changing .home-accordion__shell,::view-transition-group(home-shell),::view-transition-group(home-active-panel){animation:none;transition:none}}}@layer overrides{body[data-page="home"].home-pattern-page a.home-library__card,body[data-page="home"].home-pattern-page a.home-timeline__entry{color:#091f3b;text-decoration:none}body[data-page="home"].home-pattern-page a.home-library__page-link{color:var(--panel-color);text-decoration:none}body[data-page="home"].home-pattern-page a.home-library__page-link:is(:hover,:focus-visible){color:#ffffff}}@layer components{body.personal-accordion-page{color-scheme:light;max-width:100%;overflow-x:hidden;background:#ffffff}:root:has(body.personal-accordion-page[data-personal-category="about"]),body.personal-accordion-page[data-personal-category="about"]{--personal-scrollbar-color:#091f3b}:root:has(body.personal-accordion-page[data-personal-category="projects"]),body.personal-accordion-page[data-personal-category="projects"]{--personal-scrollbar-color:#155dfc}:root:has(body.personal-accordion-page[data-personal-category="tools"]),body.personal-accordion-page[data-personal-category="tools"]{--personal-scrollbar-color:#087f8c}:root:has(body.personal-accordion-page[data-personal-category="games"]),body.personal-accordion-page[data-personal-category="games"]{--personal-scrollbar-color:#c94b0a}:root:has(body.personal-accordion-page[data-personal-category="contact"]),body.personal-accordion-page[data-personal-category="contact"]{--personal-scrollbar-color:#334155}html:has(body.personal-accordion-page),body.personal-accordion-page{scrollbar-color:var(--personal-scrollbar-color,#091f3b) color-mix(in srgb,var(--personal-scrollbar-color,#091f3b) 10%,#ffffff 90%);scrollbar-width:thin}html:has(body.personal-accordion-page)::-webkit-scrollbar,body.personal-accordion-page::-webkit-scrollbar{width:10px;height:10px}html:has(body.personal-accordion-page)::-webkit-scrollbar-track,body.personal-accordion-page::-webkit-scrollbar-track{background:color-mix(in srgb,var(--personal-scrollbar-color,#091f3b) 10%,#ffffff 90%)}html:has(body.personal-accordion-page)::-webkit-scrollbar-thumb,body.personal-accordion-page::-webkit-scrollbar-thumb{border:2px solid color-mix(in srgb,var(--personal-scrollbar-color,#091f3b) 10%,#ffffff 90%);border-radius:999px;background:var(--personal-scrollbar-color,#091f3b)}.personal-accordion,.personal-accordion *,.personal-accordion *::before,.personal-accordion *::after{box-sizing:border-box}.personal-accordion{--personal-rail-size:84px;--personal-mobile-rail-size:78px;--personal-toolbar-size:50px;width:100%;max-width:100%;min-height:calc(100svh - var(--nav-height,72px));color:#091f3b;background:#ffffff;isolation:isolate}.personal-accordion__shell{display:grid;grid-template-columns:var(--personal-rail-size) minmax(0,1fr);align-items:stretch;width:100%;max-width:100%;min-height:inherit}.personal-accordion__rails{position:sticky;top:var(--nav-height,72px);z-index:8;display:grid;grid-template-rows:repeat(5,minmax(0,1fr));align-self:start;width:var(--personal-rail-size);height:calc(100svh - var(--nav-height,72px));min-height:480px;margin:0;padding:0}.personal-accordion__rail{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:0;margin:0;padding:7px 5px;border:0;border-radius:0;color:#ffffff;background:linear-gradient(180deg,var(--rail-color),var(--rail-color-end));font-family:var(--font-ui,"Inter",system-ui,sans-serif);text-decoration:none;box-shadow:inset -1px 0 rgba(255,255,255,.12);transition:filter 180ms ease,transform 260ms cubic-bezier(.22,1,.36,1)}.personal-accordion__rail:not(.is-active){filter:saturate(.82) brightness(.92)}.personal-accordion__rail:is(:hover,:focus-visible){z-index:4;color:#ffffff;filter:saturate(1.03) brightness(1.06);outline:3px solid rgba(255,255,255,.92);outline-offset:-4px}.personal-accordion__rail.is-active{z-index:3;filter:none;box-shadow:inset -1px 0 rgba(255,255,255,.2),0 0 0 1px color-mix(in srgb,var(--rail-color) 76%,#ffffff 24%)}.personal-accordion__rail-icon{display:grid;flex:0 0 23px;width:23px;height:23px;place-items:center}.personal-accordion__rail-icon svg,.personal-accordion__rail-notch svg,.personal-accordion__back svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.personal-accordion__rail-label{display:block;min-width:0;color:inherit;font-size:clamp(.64rem,1.45vh,.72rem);font-weight:790;letter-spacing:.035em;line-height:1;text-align:center;white-space:nowrap;writing-mode:vertical-rl;transform:rotate(180deg)}.personal-accordion__rail-notch{position:absolute;top:50%;right:-16px;z-index:4;width:17px;height:31px;background:var(--rail-color);clip-path:polygon(0 0,100% 50%,0 100%);pointer-events:none;transform:translateY(-50%)}.personal-accordion__panel{position:relative;z-index:1;grid-column:2;min-width:0;max-width:100%;min-height:inherit;overflow:visible;border:5px solid var(--panel-color);border-left:0;border-radius:0;color:#091f3b;background:#ffffff;scrollbar-color:var(--panel-color) color-mix(in srgb,var(--panel-color) 10%,#ffffff 90%);scrollbar-width:thin}.personal-accordion__panel::-webkit-scrollbar,.personal-accordion__content::-webkit-scrollbar{width:10px;height:10px}.personal-accordion__panel::-webkit-scrollbar-track,.personal-accordion__content::-webkit-scrollbar-track{background:color-mix(in srgb,var(--panel-color) 10%,#ffffff 90%)}.personal-accordion__panel::-webkit-scrollbar-thumb,.personal-accordion__content::-webkit-scrollbar-thumb{border:2px solid color-mix(in srgb,var(--panel-color) 10%,#ffffff 90%);border-radius:999px;background:var(--panel-color)}.personal-accordion--contact .personal-accordion__panel{border-radius:0 12px 12px 0}.personal-accordion__toolbar{position:sticky;top:var(--nav-height,72px);z-index:7;display:flex;align-items:center;min-height:var(--personal-toolbar-size);padding:5px clamp(12px,2.4vw,26px);border-bottom:1px solid color-mix(in srgb,var(--panel-color) 22%,#dce3ec 78%);background:rgba(255,255,255,.97);backdrop-filter:blur(10px)}.personal-accordion__back{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 11px 0 7px;border:0;border-radius:7px;color:color-mix(in srgb,var(--panel-color) 80%,#091f3b 20%);background:transparent;font-family:var(--font-ui,"Inter",system-ui,sans-serif);font-size:.8rem;font-weight:790;line-height:1.2;text-decoration:none}.personal-accordion__back > span:first-child{display:grid;width:19px;height:19px;place-items:center}.personal-accordion__back:is(:hover,:focus-visible){color:#ffffff;background:var(--panel-color);outline:3px solid color-mix(in srgb,var(--panel-color) 25%,transparent);outline-offset:2px}.personal-accordion__content{width:100%;min-width:0;max-width:100%;min-height:calc(100% - var(--personal-toolbar-size));overflow-x:auto;overflow-y:visible;color:inherit;background:#ffffff;scrollbar-color:var(--panel-color) color-mix(in srgb,var(--panel-color) 10%,#ffffff 90%);scrollbar-width:thin}.personal-accordion__content > :is(main,section,nav,div),.personal-accordion__content #main{min-width:0;max-width:100%}.personal-accordion__content > .tools-hero{margin:0}.personal-accordion__content > .tools-account-dock{max-width:100%}.personal-library-main{width:100%;min-height:100%;margin:0;padding:0;background:#ffffff}.personal-library{min-height:100%}.personal-library .home-library__header{top:var(--nav-height,72px);z-index:6}.personal-library.tools-hero{display:block;min-height:0;margin:0;padding:0 clamp(26px,4vw,48px) 54px;color:#091f3b;background:#ffffff}.personal-library.tools-hero > .home-library__header{margin:0;padding-right:0;padding-left:0}.personal-library .wrapper{box-sizing:border-box;width:min(100%,1120px);max-width:1120px;margin-inline:auto}.personal-library__account{position:relative;z-index:4;width:100%;border-bottom-color:color-mix(in srgb,var(--panel-color) 20%,#dce3ec 80%);background:#ffffff}.personal-library__initial{display:grid;width:64px;height:64px;place-items:center;border:2px solid currentColor;border-radius:12px;font-size:1.55rem;font-weight:850}@media (max-width:959px),(max-height:619px){.personal-accordion{--personal-rail-size:100%;min-height:calc(100svh - var(--mobile-site-masthead-height,62px))}.personal-accordion__shell{grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:var(--personal-mobile-rail-size) minmax(0,1fr);align-items:start}.personal-accordion__rails{position:sticky;top:var(--mobile-site-masthead-height,62px);grid-column:1 / -1;grid-row:1;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:1fr;width:100%;height:var(--personal-mobile-rail-size);min-height:var(--personal-mobile-rail-size)}.personal-accordion__rail{flex-direction:column;gap:5px;min-height:var(--personal-mobile-rail-size);padding:8px 3px;box-shadow:inset -1px 0 rgba(255,255,255,.18)}.personal-accordion__rail-label{font-size:clamp(.56rem,2.2vw,.7rem);writing-mode:horizontal-tb;transform:none}.personal-accordion__rail-icon{width:24px;height:24px}.personal-accordion__rail-notch{top:auto;right:auto;bottom:-12px;left:50%;width:25px;height:13px;clip-path:polygon(0 0,100% 0,50% 100%);transform:translateX(-50%)}.personal-accordion__panel{grid-column:1 / -1;grid-row:2;width:100%;min-height:0;border-left:5px solid var(--panel-color);border-radius:0}.personal-accordion--contact .personal-accordion__panel{border-radius:0 12px 12px 0}.personal-accordion__toolbar{top:calc(var(--mobile-site-masthead-height,62px) + var(--personal-mobile-rail-size));min-height:46px;padding:3px 10px}.personal-accordion__content{min-height:0;overflow-x:auto}.personal-library.tools-hero,.personal-library{min-height:0;padding-right:14px;padding-bottom:34px;padding-left:14px}.personal-library .home-library__header{top:calc(var(--mobile-site-masthead-height,62px) + var(--personal-mobile-rail-size))}}@media (prefers-reduced-motion:reduce){.personal-accordion__rail,.personal-accordion__back,.home-library__card{transition:none}}}@layer overrides{body.personal-accordion-page[data-personal-chrome="compact"]{--personal-shell-canvas:#f9f9fa;--personal-shell-border:rgba(9,31,59,.12);--personal-shell-shadow:0 16px 40px rgba(9,31,59,.12);background:var(--personal-shell-canvas)}body.personal-accordion-page .personal-accordion a{text-decoration:none}body.personal-accordion-page .personal-accordion__rail,body.personal-accordion-page .personal-accordion__rail:is(:hover,:focus-visible){color:#ffffff}body.personal-accordion-page .personal-accordion__back{color:color-mix(in srgb,var(--panel-color) 80%,#091f3b 20%)}body.personal-accordion-page .personal-accordion__back:is(:hover,:focus-visible){color:#ffffff}body.personal-accordion-page .personal-library a.home-library__card{color:#091f3b}body.personal-accordion-page[data-personal-chrome="compact"] :is( .speed-dial,.mobile-site-dock ){display:none !important}body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-hero{padding:clamp(1.75rem,4vh,2.7rem) 0;border-bottom-color:color-mix(in srgb,#091f3b 10%,transparent);background:#ffffff}body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-hero .wrapper,body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-body > .wrapper{width:min(100%,1120px);max-width:1120px;padding-inline:clamp(18px,3.4vw,40px)}body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-hero h1{font-size:clamp(2rem,4vw,3.15rem);line-height:1.04;overflow-wrap:break-word;text-wrap:balance}body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-hero h1::after{width:min(150px,34vw);margin-top:10px;background:linear-gradient(90deg,#155dfc 0%,rgba(21,93,252,.24) 72%,transparent 100%)}body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-body{background:#ffffff}body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact :is( .project-star,.project-demo-shell,.project-section,.project-link ){box-shadow:none}body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-resources--flat{border:0;border-top:1px solid #dce3ec;border-radius:0;background:transparent}body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-link{border-color:color-mix(in srgb,#155dfc 22%,#cbd5e1 78%);background:#f8fafc}body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-link:is(:hover,:focus-visible){border-color:#155dfc;background:color-mix(in srgb,#155dfc 5%,#ffffff 95%);box-shadow:none}@media (min-width:769px){body.personal-accordion-page[data-personal-chrome="compact"] .nav .wrapper{max-width:min(1500px,calc(100vw - 28px));padding-inline:28px}body.personal-accordion-page[data-personal-chrome="compact"] #primary-menu{display:flex;flex:0 0 220px;align-items:center;justify-content:flex-end;gap:0;min-width:44px;max-width:220px;transition:flex-basis .22s ease,max-width .22s ease}body.personal-accordion-page[data-personal-chrome="compact"] #primary-menu:has(.nav-search.nav-search-is-enhanced:not(.is-expanded)){flex-basis:44px;max-width:44px}body.personal-accordion-page[data-personal-chrome="compact"] #primary-menu > :not(.nav-search){display:none !important}body.personal-accordion-page[data-personal-chrome="compact"] .nav-search{width:220px;transition:width .22s ease}body.personal-accordion-page[data-personal-chrome="compact"] .nav-search.nav-search-is-enhanced{width:44px}body.personal-accordion-page[data-personal-chrome="compact"] .nav-search.nav-search-is-enhanced.is-expanded{width:220px}body.personal-accordion-page[data-personal-chrome="compact"] .nav-search-input{min-height:44px;border-radius:10px}body.personal-accordion-page[data-personal-chrome="compact"] .nav-search.nav-search-is-enhanced:not(.is-expanded) .nav-search-input{opacity:0;pointer-events:none}body.personal-accordion-page[data-personal-chrome="compact"] .nav-search.nav-search-is-enhanced.is-expanded .nav-search-input{opacity:1;pointer-events:auto}body.personal-accordion-page[data-personal-chrome="compact"] .nav-search-button{right:0;width:44px;height:44px;min-height:44px;border:1px solid rgba(9,31,59,.18);border-radius:10px;color:#091f3b;background:#ffffff}body.personal-accordion-page[data-personal-chrome="compact"] .nav-search-button:focus-visible{outline:3px solid #155dfc;outline-offset:2px}}@media (min-width:960px) and (min-height:620px){html:has(body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"]){height:100svh;overflow:hidden}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"]{box-sizing:border-box;height:100svh;min-height:100svh;overflow:hidden}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] > .personal-accordion{box-sizing:border-box;flex:1 1 auto;width:100%;min-height:0;padding:14px;background:var(--personal-shell-canvas)}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] .personal-accordion__shell{width:min(1500px,100%);height:100%;min-height:0;margin-inline:auto;overflow:hidden;border:1px solid var(--personal-shell-border);border-radius:12px;background:#ffffff;box-shadow:var(--personal-shell-shadow)}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] .personal-accordion__rails{position:static;align-self:stretch;height:100%;min-height:0}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] .personal-accordion__panel{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] .personal-accordion__toolbar{position:static;flex:0 0 var(--personal-toolbar-size);min-height:var(--personal-toolbar-size)}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] .personal-accordion__content{flex:1 1 auto;height:auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] .personal-library .home-library__header{top:0}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] > .footer.footer-classic.footer--personal-compact{flex:0 0 var(--personal-footer-block-size,48px)}}@media (max-width:959px),(max-height:619px){html:has(body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"]),body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"]{height:auto;min-height:100svh;overflow-x:clip;overflow-y:visible}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] > .personal-accordion{flex:0 0 auto;min-height:0;padding:0;background:#ffffff}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] .personal-accordion__shell{height:auto;min-height:0;overflow:visible;border:0;border-radius:0;box-shadow:none}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] .personal-accordion__panel{display:block;height:auto;overflow:visible}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] .personal-accordion__content{height:auto;min-height:0;overflow:visible;overscroll-behavior:auto;scrollbar-width:none}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] .personal-accordion__content::-webkit-scrollbar{display:none}body.personal-accordion-page[data-personal-chrome="compact"][data-personal-fit="viewport"] .personal-library .home-library__header{position:static}}@media (max-width:768px){body.has-mobile-site-masthead.personal-accordion-page[data-personal-chrome="compact"]{padding-top:var(--mobile-site-masthead-height,62px) !important}body.has-mobile-site-masthead.personal-accordion-page[data-personal-chrome="compact"] #combined-header-nav{display:none}body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-hero{padding:22px 0 18px}body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-hero .wrapper,body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-body > .wrapper{width:100%;max-width:1120px;padding-inline:14px}body.personal-accordion-page[data-personal-chrome="compact"] .project-main--compact .project-hero h1{font-size:clamp(1.75rem,8vw,2.35rem);line-height:1.04;overflow-wrap:break-word;text-wrap:balance}}@media (prefers-reduced-motion:reduce){body.personal-accordion-page[data-personal-chrome="compact"] :is( #primary-menu,.nav-search,.nav-search-input ){transition:none}}}body.personal-accordion-page[data-personal-fit="document"]{box-sizing:border-box;height:auto;min-height:100svh;overflow-x:clip;overflow-y:visible}body.personal-accordion-page[data-personal-fit="immersive"]{overflow-x:clip;overflow-y:visible}body.personal-accordion-page[data-tools-layout] .personal-accordion__content > #main{width:100%;max-width:100%;margin-inline:0}body.personal-accordion-page .footer.footer-classic.footer--personal-compact{min-height:var(--personal-footer-block-size,48px);margin-top:0;padding:0}body.personal-accordion-page[data-personal-item="project-starfall"] .project-starfall-shell{min-height:0}body.personal-accordion-page[data-personal-item="project-starfall"] .project-starfall-shell .wrapper{box-sizing:border-box;width:100%;max-width:var(--starfall-stage-max-width,1280px);padding-inline:16px}body.personal-accordion-page[data-personal-item="project-starfall"] .project-starfall-stage-panel{max-width:100%}body.personal-accordion-page[data-personal-item="project-starfall"] .footer.footer--personal-compact .footer-inner{display:flex;max-width:var(--wrapper-max,1180px);padding-block:0}body.personal-accordion-page[data-personal-item="probability-engine"] .personal-accordion__panel,body.personal-accordion-page[data-personal-item="probability-engine"] .personal-accordion__content{color:var(--text,#f4f7ff);background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.05),transparent 45%),radial-gradient(circle at 78% 0%,rgba(255,255,255,.04),transparent 35%),linear-gradient(160deg,var(--bg-1,#06152d),var(--bg-2,#170c2f))}body.personal-accordion-page[data-personal-item="probability-engine"] :is( .app-shell,#offline-modal ) :is(h1,h2,h3,h4){color:var(--text,#f5dfc4)}body.personal-accordion-page:is( [data-personal-item="probability-engine"],[data-personal-item="roulette"],[data-personal-item="stellar-dogfight"] ){padding:var(--nav-height,72px) 0 0}body.personal-accordion-page[data-personal-item="probability-engine"]:has(#offline-modal:not(.hidden)) .personal-accordion__panel{z-index:12}body.personal-accordion-page[data-personal-item="roulette"]{padding-right:0;padding-bottom:0;padding-left:0}body.personal-accordion-page[data-personal-item="roulette"] .personal-accordion__panel,body.personal-accordion-page[data-personal-item="roulette"] .personal-accordion__content{color:#f8f5e9;background:radial-gradient(70% 55% at 50% 0%,rgba(16,71,44,.55) 0%,rgba(6,23,15,0) 70%),radial-gradient(95% 120% at 90% 110%,rgba(101,64,12,.22) 0%,rgba(8,16,13,0) 65%),linear-gradient(160deg,#040a07 0%,#09170f 48%,#050d09 100%)}body.personal-accordion-page[data-personal-item="roulette"] .personal-accordion__content{padding:clamp(14px,2.4vw,24px)}body.personal-accordion-page[data-personal-item="stormbreak"] .personal-accordion__panel,body.personal-accordion-page[data-personal-item="stormbreak"] .personal-accordion__content{color:var(--sb-ivory,#f6f0dd);background:var(--sb-night,#07111e)}body.personal-accordion-page[data-personal-item="stormbreak"] .footer{display:block !important}body.personal-accordion-page[data-personal-item="stellar-dogfight"]{min-height:100svh;color:#091f3b;background:#ffffff}body.personal-accordion-page[data-personal-item="stellar-dogfight"] .personal-accordion{--personal-stellar-height:calc(100dvh - var(--nav-height,72px));height:var(--personal-stellar-height);min-height:0;overflow:hidden}body.personal-accordion-page[data-personal-item="stellar-dogfight"] .personal-accordion__shell,body.personal-accordion-page[data-personal-item="stellar-dogfight"] .personal-accordion__panel{height:100%;min-height:0}body.personal-accordion-page[data-personal-item="stellar-dogfight"] .personal-accordion__rails{position:static;height:100%;min-height:0}body.personal-accordion-page[data-personal-item="stellar-dogfight"] .personal-accordion__panel,body.personal-accordion-page[data-personal-item="stellar-dogfight"] .personal-accordion__content{overflow:hidden}body.personal-accordion-page[data-personal-item="stellar-dogfight"] .personal-accordion__content{height:calc(100% - var(--personal-toolbar-size));min-height:0;padding:var(--page-pad,18px);color:var(--text,#f5f9ff);background:#070b13}body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-playing .personal-accordion__content{padding:0}body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-playing .footer--personal-compact{display:none}body.personal-accordion-page[data-personal-item="stellar-dogfight"] .mission-shell{--viewport-height:calc(var(--personal-stellar-height) - var(--personal-toolbar-size) - (var(--page-pad,18px) * 2));width:100%;max-width:100%;min-height:var(--viewport-height)}body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-playing .mission-shell{--viewport-height:calc(var(--personal-stellar-height) - var(--personal-toolbar-size))}body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-hangar{height:auto;min-height:100svh;overflow-x:clip;overflow-y:visible}body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-hangar .personal-accordion{height:auto;min-height:var(--personal-stellar-height);overflow:visible}body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-hangar .personal-accordion__shell,body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-hangar .personal-accordion__panel,body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-hangar .personal-accordion__content{height:auto;min-height:0;overflow:visible}body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-hangar .personal-accordion__rails{position:sticky;height:var(--personal-stellar-height)}body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-hangar .mission-shell{height:auto;min-height:var(--viewport-height);overflow:visible}@media (max-width:959px),(max-height:619px){body.personal-accordion-page:is( [data-personal-item="probability-engine"],[data-personal-item="roulette"],[data-personal-item="stellar-dogfight"] ){padding-top:var(--mobile-site-masthead-height,62px)}body.personal-accordion-page[data-personal-item="probability-engine"] .app-shell{padding-top:clamp(12px,3vw,20px)}body.personal-accordion-page[data-personal-item="stellar-dogfight"] .personal-accordion{--personal-stellar-height:calc(100dvh - var(--mobile-site-masthead-height,62px))}body.personal-accordion-page[data-personal-item="stellar-dogfight"] .personal-accordion__rails{position:static;height:var(--personal-mobile-rail-size)}body.personal-accordion-page[data-personal-item="stellar-dogfight"] .personal-accordion__panel{height:calc(var(--personal-stellar-height) - var(--personal-mobile-rail-size))}body.personal-accordion-page[data-personal-item="stellar-dogfight"] .mission-shell{--viewport-height:calc(var(--personal-stellar-height) - var(--personal-mobile-rail-size) - var(--personal-toolbar-size) - (var(--page-pad,18px) * 2))}body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-playing .mission-shell{--viewport-height:calc(var(--personal-stellar-height) - var(--personal-mobile-rail-size) - var(--personal-toolbar-size))}body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-hangar .personal-accordion__panel,body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-hangar .personal-accordion__content{height:auto}body.personal-accordion-page[data-personal-item="stellar-dogfight"].is-hangar .personal-accordion__rails{position:sticky;height:var(--personal-mobile-rail-size)}}@media (max-width:640px){body.personal-accordion-page[data-personal-item="project-starfall"] .footer.footer--personal-compact .footer-inner{flex-direction:column}}