:root{--font-display: "Plus Jakarta Sans", "Helvetica Neue", Arial, sans-serif;--font-body: var(--font-display);--font-mono: "IBM Plex Mono", "Fira Code", Consolas, monospace;--font-serif: var(--font-display);--font-sans: var(--font-body);--font-size-sm: .875rem;--font-size-base: 1.125rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-size-3xl: 2.5rem;--line-height-body: 1.7;--line-height-heading: 1.2;--content-width: 68rem;--u: min(1vw, calc(var(--content-width) / 100));--prose: 72ch;--page-padding: clamp(1rem, 3vw, 3rem);--radius: 14px;--radius-sm: 8px;--color-text: #1f2d2b;--color-text-muted: #5f6e6a;--color-bg: #f6f1e7;--color-bg-alt: #ece6d8;--color-card: #fffaf1;--color-accent: #2f7d75;--color-accent-hover: #236058;--color-border: #e0d8c6;--color-calm-soft: #dcebe0;--color-pop: #ee6a4d;--color-logo: #143a35;--color-note: #1f5f58;--color-pop-soft: #fbdcd0;--color-sun: #f4b942;--color-sun-soft: #fbeac0;--shadow: 0 1px 2px rgba(31, 45, 43, .06), 0 8px 24px -16px rgba(31, 45, 43, .25);--grid-minor: rgba(47, 125, 117, .07);--grid-major: rgba(47, 125, 117, .13);--color-lime: var(--color-sun);--color-badge-type: var(--color-pop);--color-badge-type-text: var(--color-text);--color-badge-lang: var(--color-accent);--color-badge-lang-text: #fff;--color-badge-pub: var(--color-accent);--color-badge-pub-text: #fff;--color-badge-talk: var(--color-pop);--color-badge-talk-text: var(--color-text);--color-badge-poster: var(--color-pop-soft);--color-badge-poster-text: var(--color-text);--color-badge-ongoing: var(--color-sun);--color-badge-ongoing-text: var(--color-text);--color-badge-status: var(--color-bg-alt);--color-badge-status-text: var(--color-text-muted);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--spacing-2xl: 5rem;--transition-fast: .15s ease}[data-theme=dark]{--color-text: #fffdf6;--color-text-muted: #cddbd6;--color-bg: #111a1a;--color-bg-alt: #1c2a29;--color-card: #192524;--color-accent: #5fc7b8;--color-accent-hover: #86d8cc;--color-border: #2b3b39;--color-calm-soft: #1b3431;--color-pop: #ff8a6b;--color-logo: var(--color-accent);--color-note: var(--color-sun);--color-pop-soft: #3d2620;--color-sun: #f6c65b;--color-sun-soft: #39301a;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px -16px rgba(0, 0, 0, .6);--grid-minor: rgba(95, 199, 184, .06);--grid-major: rgba(95, 199, 184, .11);--color-badge-type: var(--color-pop);--color-badge-type-text: #1a0f0b;--color-badge-lang: var(--color-accent);--color-badge-lang-text: #0f1a19;--color-badge-pub: var(--color-accent);--color-badge-pub-text: #0f1a19;--color-badge-talk: var(--color-pop);--color-badge-talk-text: #1a0f0b;--color-badge-poster: var(--color-pop-soft);--color-badge-poster-text: #ffd9cc;--color-badge-ongoing: var(--color-sun);--color-badge-ongoing-text: #1a1608;--color-badge-status: var(--color-bg-alt);--color-badge-status-text: var(--color-text-muted)}*,*:before,*:after{box-sizing:border-box}html{font-size:clamp(100%,.45vw + 9.5px,175%)}body{margin:0;font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-body);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease,color .3s ease}img,picture,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;line-height:var(--line-height-heading)}h1{font-size:var(--font-size-3xl);margin-block:0 var(--spacing-md)}h2{font-size:var(--font-size-2xl);margin-block:var(--spacing-xl) var(--spacing-md)}h3{font-size:var(--font-size-xl);margin-block:var(--spacing-lg) var(--spacing-sm)}h4{font-size:var(--font-size-lg);margin-block:var(--spacing-lg) var(--spacing-sm)}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover);text-decoration:underline}code{font-family:var(--font-mono);font-size:var(--font-size-sm);background-color:var(--color-bg-alt);border-radius:6px;padding:.15em .4em}pre{font-family:var(--font-mono);font-size:var(--font-size-sm);background-color:var(--color-bg-alt);border-radius:var(--radius);padding:var(--spacing-md);overflow-x:auto}pre code{background:none;padding:0}blockquote{border-left:4px solid var(--color-sun);padding-left:var(--spacing-md);margin-left:0;font-style:italic;color:var(--color-text-muted)}hr{border:none;border-top:1px solid var(--color-border);margin-block:var(--spacing-xl)}.container{max-width:var(--content-width);margin-inline:auto;padding-inline:var(--page-padding)}.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}.full-col{max-width:none}.prose-col{max-width:var(--prose);margin-inline:auto}.page-header{padding-block:clamp(.75rem,3svh,2.5rem) var(--spacing-md);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-lg)}.page-header h1{font-family:var(--font-display);font-size:clamp(2rem,5vw,4rem);font-weight:800;letter-spacing:-.03em;line-height:1;margin:0 0 var(--spacing-sm)}.page-description{color:var(--color-text-muted);font-size:1rem;margin:0;max-width:var(--prose)}.search-trigger,.theme-toggle{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.search-trigger:hover,.theme-toggle:hover{background:#00000014}[data-theme=dark] .search-trigger:hover,[data-theme=dark] .theme-toggle:hover{background:#ffffff1a}.search-overlay{position:fixed;inset:0;z-index:1000;background:#00000080;display:flex;justify-content:center;padding-top:15vh;backdrop-filter:blur(4px)}.search-modal{width:min(560px,90vw);max-height:70vh;background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 16px 48px #0003;display:flex;flex-direction:column;overflow:hidden}.search-input-wrapper{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-bottom:1px solid var(--color-border)}.search-input-icon{flex-shrink:0;color:var(--color-text-muted)}.search-input{flex:1;border:none;background:none;font-family:var(--font-serif);font-size:1rem;color:var(--color-text);outline:none}.search-input::placeholder{color:var(--color-text-muted)}.search-kbd{font-family:var(--font-sans);font-size:.65rem;padding:.2em .5em;border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-muted);background:var(--color-bg-alt)}.search-results{flex:1;overflow-y:auto;padding:var(--spacing-sm) 0}.search-empty{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center;padding:var(--spacing-lg);margin:0}.search-result{display:block;padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;color:var(--color-text);transition:background var(--transition-fast)}.search-result:hover{text-decoration:none;color:var(--color-text)}.search-result--selected{background:var(--color-bg-alt)}.search-result-category{font-family:var(--font-sans);font-size:.65rem;letter-spacing:.05em;text-transform:uppercase;color:var(--color-accent)}.search-result-title{display:block;font-family:var(--font-serif);font-size:.95rem;font-weight:600;margin-top:.1rem}.search-result-subtitle{display:block;font-size:.8rem;color:var(--color-text-muted);margin-top:.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hamburger{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border:none;border-radius:6px;background:transparent;cursor:pointer;padding:0}.hamburger-icon{display:block;width:1.25rem;height:2px;background:var(--color-text);position:relative;transition:background .2s ease}.hamburger-icon:before,.hamburger-icon:after{content:"";position:absolute;left:0;width:1.25rem;height:2px;background:var(--color-text);transition:transform .2s ease}.hamburger-icon:before{top:-6px}.hamburger-icon:after{bottom:-6px}.hamburger-icon--open{background:transparent}.hamburger-icon--open:before{top:0;transform:rotate(45deg)}.hamburger-icon--open:after{bottom:0;transform:rotate(-45deg)}.mobile-menu-overlay{position:fixed;inset:0;z-index:200;background:#0006;backdrop-filter:blur(2px)}.mobile-menu{position:fixed;top:0;left:0;right:0;padding-top:60px;background:var(--color-bg);border-bottom:1px solid var(--color-border);box-shadow:0 8px 24px #00000026;max-height:85vh;overflow-y:auto;z-index:201;animation:menu-slide-down .2s ease}@keyframes menu-slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.mobile-menu-top{padding:var(--spacing-md);border-bottom:1px solid var(--color-border)}.mobile-search-row{display:flex;align-items:center;gap:var(--spacing-sm)}.mobile-search-input-wrapper{flex:1;display:flex;align-items:center;gap:var(--spacing-sm);background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:8px;padding:.5rem .75rem}.mobile-search-icon{flex-shrink:0;color:var(--color-text-muted)}.mobile-search-input{flex:1;border:none;background:none;font-family:var(--font-serif);font-size:.9rem;color:var(--color-text);outline:none;min-width:0}.mobile-search-input::placeholder{color:var(--color-text-muted)}.mobile-theme-toggle{display:flex;align-items:center;justify-content:center;width:2.375rem;height:2.375rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-alt);color:var(--color-text);cursor:pointer;flex-shrink:0}.mobile-search-results{margin-top:var(--spacing-sm);max-height:50vh;overflow-y:auto}.mobile-search-empty{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center;padding:var(--spacing-md) 0;margin:0}.mobile-search-result{display:block;padding:var(--spacing-sm) 0;text-decoration:none;color:var(--color-text);border-bottom:1px solid var(--color-border)}.mobile-search-result:last-child{border-bottom:none}.mobile-search-result:hover{text-decoration:none;color:var(--color-text)}.mobile-search-result-category{font-family:var(--font-sans);font-size:.6rem;letter-spacing:.05em;text-transform:uppercase;color:var(--color-accent)}.mobile-search-result-title{display:block;font-family:var(--font-serif);font-size:.9rem;font-weight:600;margin-top:.1rem}.mobile-search-result-subtitle{display:block;font-size:.75rem;color:var(--color-text-muted);margin-top:.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-nav-links{display:flex;flex-direction:column}.mobile-nav-link{display:block;padding:var(--spacing-md);font-family:var(--font-serif);font-size:1.05rem;font-weight:500;color:var(--color-text);text-decoration:none;border-bottom:1px solid var(--color-border);transition:background var(--transition-fast)}.mobile-nav-link:last-child{border-bottom:none}.mobile-nav-link:hover{background:var(--color-bg-alt);text-decoration:none;color:var(--color-text)}.mobile-nav-link--active{color:var(--color-accent)}.site-header[data-astro-cid-5hce7sga]{position:sticky;top:0;z-index:100;padding-block:.8rem;background-color:color-mix(in srgb,var(--color-bg) 88%,transparent);backdrop-filter:blur(10px)}.nav-pill[data-astro-cid-5hce7sga]{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:.5rem .6rem .5rem 1.2rem}.nav-brand[data-astro-cid-5hce7sga]{display:block;margin-right:auto}.nav-logo[data-astro-cid-5hce7sga]{display:block;width:5.4rem;height:2.7rem;background:var(--color-logo);-webkit-mask:url(/nav-logo.png) 0 42.5% / 100% auto no-repeat;mask:url(/nav-logo.png) 0 42.5% / 100% auto no-repeat}.nav-links[data-astro-cid-5hce7sga]{display:flex;gap:.15rem;list-style:none;margin:0;padding:0}.nav-links[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]{display:block;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;padding:.55rem .95rem;border-radius:var(--radius-sm);color:var(--color-text-muted)}.nav-links[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga]:hover{color:var(--color-text);background:var(--color-calm-soft);text-decoration:none}.nav-links[data-astro-cid-5hce7sga] a[data-astro-cid-5hce7sga].active{background:var(--color-accent);color:var(--color-bg)}.nav-actions[data-astro-cid-5hce7sga]{display:flex;align-items:center;gap:var(--spacing-sm)}main[data-astro-cid-5hce7sga]{padding-block:clamp(1rem,2.5svh,2.5rem) var(--spacing-xl);min-height:60vh}main[data-astro-cid-5hce7sga].no-top-padding{padding-top:0}.site-footer[data-astro-cid-5hce7sga]{margin-top:var(--spacing-2xl);padding-block:var(--spacing-lg);border-top:1px solid var(--color-border)}.site-footer[data-astro-cid-5hce7sga] p[data-astro-cid-5hce7sga]{font-family:var(--font-mono);font-size:.76rem;letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-muted);text-align:center;margin:0}.mobile-only[data-astro-cid-5hce7sga]{display:none}@media(max-width:900px){.desktop-only[data-astro-cid-5hce7sga]{display:none}.mobile-only[data-astro-cid-5hce7sga]{display:block}}
