@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/InterVariable.woff2) format("woff2")}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(../assets/fonts/InterVariable-Italic.woff2) format("woff2")}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(../assets/fonts/FiraCode-VF.woff2) format("woff2");font-feature-settings:"liga" 1,"calt" 1}:root,[data-theme=light]{--outer-space-bg: linear-gradient(180deg, #001 0%, #1a1a2e 60%, #2a3a5e 85%, #4a5f7a 100%);--atmosphere-bg: linear-gradient( 180deg, rgba(74, 95, 122, 0) 0%, #4a5f7a 10%, #87ceeb 40%, #b8d4f0 80%, #c8e6ff 100% );--ocean-top-color: #4682b4;--ocean-bg: linear-gradient(180deg, var(--ocean-top-color) 0%, #191970 100%);--crust-top-color: #8b4513;--crust-bg: linear-gradient(180deg, var(--crust-top-color) 0%, #704214 50%, #5c4033 100%);--content-bg: rgba(255, 255, 255, .9);--content-text: #333;--content-subtext: #666;--nav-dot: rgba(255, 255, 255, .5);--nav-dot-active: white;--cloud-color: white;--star-color-1: #eee;--star-color-2: #fff;--star-color-3: #ddd;--body-bg: #fff;--space-overlap: 20dvh;--atmosphere-overlap: 15dvh;--z-comets: 0;--z-meteors: 0;--z-stars: 10;--z-celestial: 10;--z-video-sphere: 15;--z-video-controls: 16;--z-cirrus-clouds: 21;--z-alto-clouds: 22;--z-cumulus-clouds: 23;--z-terrain: 30;--z-mountains: 31;--z-bathymetry: 32;--z-content: 40;--z-nav: 100;--z-theme-toggle: 1000;--z-floating-toc: 1002;--z-floating-toc-restore: 1003;--z-tooltips: 1006}[data-theme=dark]{--outer-space-bg: linear-gradient(180deg, #000 0%, #0a0a0a 60%, #1a1a2e 85%, #16213e 100%);--atmosphere-bg: linear-gradient( 180deg, rgba(22, 33, 62, 0) 0%, #16213e 10%, #1a1a2e 40%, #1f2a3e 80%, #253040 100% );--ocean-top-color: #0f2536;--ocean-bg: linear-gradient(180deg, var(--ocean-top-color) 0%, #0c1426 100%);--crust-top-color: #3d2817;--crust-bg: linear-gradient(180deg, var(--crust-top-color) 0%, #5a2c0a 50%, #4a2c2a 100%);--content-bg: rgba(26, 26, 46, .9);--content-text: #e0e0e0;--content-subtext: #b0b0b0;--nav-dot: rgba(224, 224, 224, .5);--nav-dot-active: #e0e0e0;--cloud-color: #4a4a6a;--star-color-1: #fff;--star-color-2: #eee;--star-color-3: #ddd;--body-bg: #000}*{margin:0;padding:0;box-sizing:border-box}html{overflow-x:hidden;font-size:clamp(16px,.8vw + 14px,18px)}body{font-family:Inter,sans-serif;font-optical-sizing:auto;font-feature-settings:"liga" 1,"calt" 1;overflow-x:hidden;transition:background-color .5s ease;background:var(--body-bg);min-height:100vh}.layer{position:relative;width:100%;display:flex;align-items:center;justify-content:center}.content{position:relative;z-index:var(--z-content);text-align:center;background:var(--content-bg);padding:2rem;border-radius:10px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);max-width:clamp(600px,85vw,1200px);margin:0 2rem;transition:background-color .5s ease}.content h2{font-size:2.5rem;margin-bottom:1rem;color:var(--content-text);transition:color .5s ease}.content p{font-size:1.1rem;line-height:1.6;color:var(--content-subtext);transition:color .5s ease;margin-bottom:1rem}.content p:last-child{margin-bottom:0}#land .content p{text-align:left}#land .content a,#land .content a:visited{color:#3498db;text-decoration:none;transition:color .3s ease}#land .content a:hover{text-decoration:underline}#resources .content{text-align:left}#ocean .content{max-width:clamp(1000px,90vw,1600px);text-align:left}#resources .content{max-width:clamp(900px,85vw,1400px)}#resources .content h2{text-align:center;margin-bottom:2rem}#resources .content h3{font-size:1.4rem;margin:1.5rem 0 .5rem;color:var(--content-text);transition:color .5s ease}#resources .content ul.indented-list{list-style:none;padding-left:0;margin-bottom:1.5rem}#resources .content ul.indented-list li{margin-bottom:.8rem;padding-left:1rem;position:relative;color:var(--content-text);transition:color .5s ease}#resources .content ul.indented-list li:before{content:"•";color:var(--content-text);position:absolute;left:0;transition:color .5s ease}#resources .content ul.indented-list ul.indented-list{margin-top:.5rem;padding-left:1rem}#resources .content a,#resources .publications-content a{color:#3498db;text-decoration:none;transition:color .3s ease}#resources .publications-content a:hover,#resources .content a:hover{text-decoration:underline}#resources .publications-content{text-align:left;margin-bottom:3rem}#resources .publications-content h2{text-align:center;margin-bottom:2rem}#resources .publications-content ol.publications-list{list-style:decimal;padding-left:2rem;margin-bottom:1.5rem}#resources .publications-content ol.publications-list li{margin-bottom:1.5rem;line-height:1.6;color:var(--content-text);transition:color .5s ease}#resources .publications-content ol.publications-list li b{color:var(--content-text);transition:color .5s ease}#resources .publications-content ol.publications-list li i{color:var(--content-subtext);transition:color .5s ease}#resources .publications-content a.publication-button{display:inline-block;background:var(--nav-dot-active);color:var(--content-text);padding:.1rem .4rem;margin:.2rem .3rem .2rem 0;border-radius:4px;border:1px solid rgba(0,0,0,.15);text-decoration:none;font-size:.85rem;font-weight:700;transition:all .3s ease}#resources .publications-content a.publication-button:hover{background:var(--content-text);color:var(--content-bg);transform:translateY(-1px)}[data-theme=dark] #resources .publications-content a.publication-button{background:#e0e0e026;color:var(--content-text);border:1px solid rgba(224,224,224,.3)}[data-theme=dark] #resources .publications-content a.publication-button:hover{background:#e0e0e040;border-color:#e0e0e080}.theme-toggle{position:fixed;top:30px;right:30px;z-index:var(--z-theme-toggle);background:var(--content-bg);border:2px solid var(--nav-dot-active);border-radius:50%;width:60px;height:60px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.theme-toggle:hover{transform:scale(1.1);box-shadow:0 4px 20px #0003}.theme-toggle:focus{outline:2px solid var(--nav-dot-active);outline-offset:2px}.theme-toggle:focus-visible{outline:2px solid var(--nav-dot-active);outline-offset:2px}.toggle-icon{font-size:1.5rem;transition:transform .3s ease}[data-theme=dark] .toggle-icon{transform:rotate(180deg)}
