@import"https://fonts.googleapis.com/css2?family=Kode+Mono:wght@400&display=swap";:root{color-scheme:light;--font-mono: "Kode Mono", monospace;--font-serif: "Charter", "Iowan Old Style", "Palatino Linotype", "Book Antiqua", "Georgia", serif;--font-primary: var(--font-serif);--font-secondary: var(--font-mono);--bg-primary: #ffffff;--bg-dark: #000000;--text-primary: #000000;--text-muted: #666666;--accent-blue: #000000;--grid-line: #e5e5e5;--glass-bg: rgba(255, 255, 255, .98);--glass-bg-navbar: rgba(255, 255, 255, .98);--glass-border: rgba(0, 0, 0, .12);--box-shadow: 0 1px 0 0 rgba(0, 0, 0, .08);--current-bg: var(--bg-primary);--current-text: var(--text-primary);--current-text-secondary: var(--text-muted);--current-theme-accent: var(--accent-blue);--current-theme-accent-hover: var(--accent-blue);--current-link-color: var(--accent-blue);--current-icon-color: var(--accent-blue);--current-glass-bg: var(--glass-bg);--current-glass-bg-navbar: var(--glass-bg-navbar);--current-glass-border: var(--glass-border);--current-box-shadow: var(--box-shadow);--current-bg-grid: linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);--border-radius-main: 6px;--border-radius-small: 4px;--transition-speed: .25s}.research-statement-toggle{font-family:var(--font-mono);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;padding:8px 16px;cursor:pointer;border:1px solid var(--text-primary);background:transparent;color:var(--text-primary);list-style:none;display:inline-block;margin-bottom:1.5rem}.research-statement-toggle::-webkit-details-marker{display:none}.research-statement-toggle:before{content:"+ "}details[open]>.research-statement-toggle:before{content:"- "}.research-statement-toggle:hover{background:var(--bg-dark);color:var(--bg-primary)}html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}body{font-family:var(--font-primary);margin:0;padding:0;background-color:var(--current-bg);color:var(--current-text);line-height:1.7;transition:background-color var(--transition-speed) ease,color var(--transition-speed) ease;overflow-x:hidden;background-image:var(--current-bg-grid);background-size:40px 40px;background-attachment:scroll;width:100%;min-height:100vh}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;line-height:inherit;cursor:pointer}h1,h2,h3,h4,h5,h6{font-family:var(--font-secondary);color:var(--current-text);margin-top:1.5em;margin-bottom:.7em;font-weight:400;text-transform:uppercase;letter-spacing:-.05em}h1{font-size:5rem;text-align:center}h2{font-size:2em;padding-bottom:.3em;border-bottom:2px solid var(--current-theme-accent);margin-bottom:1em}h3{font-size:1.6em;color:var(--current-text)}h4{font-size:1.3em}p{margin-bottom:1.2em;color:var(--current-text)}a{color:var(--current-link-color);text-decoration:underline;text-decoration-color:#00000059;text-underline-offset:2px;transition:color var(--transition-speed) ease,opacity .2s ease-out;word-break:break-word;overflow-wrap:break-word}a:hover,a:focus{color:var(--current-theme-accent-hover);opacity:1;text-decoration-color:var(--current-theme-accent)}i.fas,i.fab,i.far,i.fal{color:var(--current-icon-color)!important}.btn i.fas,.btn i.fab{color:currentColor!important}.btn-icon i.fas,.btn-icon i.fab{color:var(--current-icon-color)!important}.btn-icon:hover i.fas,.btn-icon:hover i.fab{color:var(--current-bg)!important}ul,ol{margin-bottom:1em;padding-left:20px}li{margin-bottom:.5em}img{max-width:100%;height:auto;border-radius:var(--border-radius-small)}header{position:sticky;top:0;z-index:1000;padding:10px 0;height:auto}nav{max-width:900px;margin:0 auto;padding:.8em 1.5em;position:relative;background:var(--current-glass-bg-navbar);border:1px solid var(--current-glass-border);border-radius:var(--border-radius-main);box-shadow:none;display:flex;justify-content:space-between;align-items:center;transition:background var(--transition-speed) ease,border var(--transition-speed) ease,box-shadow var(--transition-speed) ease}nav .logo a{font-family:var(--font-secondary);font-size:1.6em;font-weight:700;color:var(--current-text);text-decoration:none;white-space:nowrap;transition:transform .3s ease,color var(--transition-speed) ease}nav .logo a .logo-icon{width:32px;height:32px;margin-right:8px;display:inline-block;vertical-align:middle}nav .logo a:hover{transform:scale(1.03);color:var(--current-theme-accent-hover)}header>nav>ul{list-style:none;padding:0;margin:0;display:flex}header>nav>ul li{margin-left:20px}header>nav>ul li a{color:var(--current-text);text-decoration:none;font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:.85em;padding:.4em .6em;border-radius:var(--border-radius-small);transition:color var(--transition-speed) ease,background-color var(--transition-speed) ease,transform .2s ease;position:relative}body[data-page=home] nav a[href="/"],body[data-page=home] .mobile-menu-links a[href="/"],body[data-page=publications] nav a[href="/publications"],body[data-page=publications] .mobile-menu-links a[href="/publications"],body[data-page=education-experience] nav a[href="/education-experience"],body[data-page=education-experience] .mobile-menu-links a[href="/education-experience"],body[data-page=blogs] nav a[href="/blogs"],body[data-page=blogs] .mobile-menu-links a[href="/blogs"],body[data-page=contact] nav a[href="/contact"],body[data-page=contact] .mobile-menu-links a[href="/contact"]{color:var(--current-theme-accent)}body[data-page=home] header>nav a[href="/"]:after,body[data-page=publications] header>nav a[href="/publications"]:after,body[data-page=education-experience] header>nav a[href="/education-experience"]:after,body[data-page=blogs] header>nav a[href="/blogs"]:after,body[data-page=contact] header>nav a[href="/contact"]:after{width:100%;left:0}header>nav>ul li a:after{content:"";position:absolute;width:0;height:2px;bottom:-3px;left:50%;background-color:var(--current-theme-accent);transition:width .3s ease,left .3s ease,background-color var(--transition-speed) ease}header>nav>ul li a:hover:after{width:100%;left:0}header>nav>ul li a:hover{color:var(--current-theme-accent)}#mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;width:36px;height:36px;position:relative}.hamburger,.hamburger:before,.hamburger:after{display:block;width:20px;height:2px;background:var(--current-text);border-radius:1px;transition:all .3s ease;position:absolute;left:8px}.hamburger{top:17px}.hamburger:before{content:"";top:-6px}.hamburger:after{content:"";top:6px}#mobile-menu-toggle.open .hamburger{background:transparent}#mobile-menu-toggle.open .hamburger:before{top:0;transform:rotate(45deg)}#mobile-menu-toggle.open .hamburger:after{top:0;transform:rotate(-45deg)}#mobile-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:998;opacity:0;transition:opacity .3s ease;pointer-events:none}#mobile-overlay.open{opacity:1;pointer-events:auto}#mobile-menu{position:fixed;top:0;right:0;width:280px;max-width:80vw;height:100vh;height:100dvh;background:var(--bg-primary);z-index:999;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);pointer-events:none;display:flex;flex-direction:column;border-left:1px solid var(--grid-line)}#mobile-menu.open{transform:translate(0);pointer-events:auto}.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--grid-line)}.mobile-menu-title{font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}#mobile-menu-close{background:none;border:none;font-size:1.5rem;line-height:1;color:var(--text-muted);cursor:pointer;padding:4px 8px;transition:color .2s ease}#mobile-menu-close:hover{color:var(--text-primary)}.mobile-menu-links{display:flex;flex-direction:column;flex:1;padding:.5rem 0}.mobile-menu-links a{display:block;padding:.9rem 1.5rem;font-family:var(--font-mono);font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-primary);text-decoration:none;border-bottom:1px solid var(--grid-line);transition:background .15s ease,padding-left .15s ease}.mobile-menu-links a:hover{background:#00000008;padding-left:2rem}.mobile-menu-footer{padding:1rem 1.5rem 2rem;border-top:1px solid var(--grid-line);display:flex;flex-wrap:wrap;gap:.75rem}.mobile-menu-footer a{font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);text-decoration:none;transition:color .15s ease}.mobile-menu-footer a:hover{color:var(--text-primary)}main{max-width:900px;margin:2.5em auto 1em;padding:0 5% 5%;overflow-x:hidden;width:100%;box-sizing:border-box}.card-style,.content-section{background:#fff;border:1px solid var(--grid-line);padding:2rem 2.5rem;margin-bottom:1.5em;border-radius:var(--border-radius-main);box-shadow:none;overflow-wrap:break-word;word-wrap:break-word}.card-style:hover{transform:none;box-shadow:none}.hero-section{text-align:left;padding:2rem 2.5rem;margin-top:-1.5em;color:var(--current-text);border:none;background:transparent;margin-bottom:0}.hero-section h1{color:var(--current-text);font-family:var(--font-mono);font-weight:400;font-size:clamp(3.5rem,10vw,7rem);line-height:.9;letter-spacing:-.05em;text-transform:uppercase;margin-bottom:.2em;text-shadow:none;text-align:left}.hero-section .subtitle,.hero-section .location{font-family:var(--font-serif);font-size:1.05rem;margin-bottom:.5em;color:var(--text-muted)}.hero-section .location{font-size:1em;margin-bottom:1.5em}.hero-section .profile-pic{width:140px;height:140px;border-radius:50%;object-fit:cover;margin-bottom:1em;border:3px solid var(--current-glass-border);box-shadow:0 0 15px #0000001a}.social-links{margin-top:1.5em;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:12px}.social-links .btn,.btn{background-color:transparent;color:var(--current-text);padding:.55em .95em;border-radius:0;text-decoration:none;font-family:var(--font-mono);font-weight:600;text-transform:uppercase;letter-spacing:.08em;transition:all .25s ease;border:1px solid var(--current-text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:5px;box-shadow:none;font-size:clamp(.7rem,2vw,.8rem);min-height:36px;min-width:fit-content;flex-shrink:0;white-space:nowrap;backdrop-filter:none;-webkit-backdrop-filter:none}.social-links .btn:hover,.btn:hover{background-color:var(--current-text);color:var(--current-bg);text-decoration:none;border-color:var(--current-text);transform:none;box-shadow:none}.btn-svg-icon{width:14px;height:14px;vertical-align:-2px;fill:currentColor}.btn-icon{padding:.4em .75em;background-color:transparent;color:var(--current-text);border:1px solid var(--current-text);border-radius:0;transition:all .25s ease;display:inline-flex;align-items:center;justify-content:center;gap:5px;font-family:var(--font-mono);font-size:clamp(.7rem,1.8vw,.8rem);text-transform:uppercase;letter-spacing:.08em;min-height:34px;white-space:nowrap;text-decoration:none;flex-shrink:0;touch-action:auto;-webkit-tap-highlight-color:rgba(0,0,0,.1);cursor:pointer}.btn-icon:hover{background-color:var(--current-text);color:var(--current-bg);border-color:var(--current-text);transform:none;text-decoration:none;box-shadow:none}.btn-icon:hover i{color:var(--current-bg)!important}.news-list li{border-left:3px solid var(--current-theme-accent);padding-left:15px;margin-bottom:1em}.news-list .date{font-weight:700;color:var(--current-text-secondary);display:block;font-size:.9em}#publication-update .publication-item-home{padding:10px 0}#publication-update .publication-title-home{font-size:1.3em;color:var(--current-text);margin-bottom:.4em;word-break:break-word;overflow-wrap:break-word}#publication-update .publication-authors-home{font-style:italic;color:var(--current-text-secondary);margin-bottom:.4em;font-size:.95em;word-break:break-word;overflow-wrap:break-word}#publication-update .publication-authors-home strong{color:var(--current-text);font-weight:700}#publication-update .publication-venue-home{margin-bottom:.8em;font-size:.9em}#publication-update .publication-links-home{display:flex;flex-wrap:wrap;gap:10px;align-items:center}#publication-update .publication-links-home .btn,#publication-update .publication-links-home .btn-icon{font-size:.9em;padding:.5em 1em}.publication-item{margin-bottom:2em;padding-bottom:1.5em;border-bottom:1px dashed var(--current-glass-border)}.publication-item:last-child{border-bottom:none}.publication-title{font-size:1.4em;margin-bottom:.3em;color:var(--current-text);word-break:break-word;overflow-wrap:break-word}.publication-authors{font-style:italic;color:var(--current-text-secondary);margin-bottom:.3em;word-break:break-word;overflow-wrap:break-word}.publication-authors strong{color:var(--current-text);font-weight:700}.publication-venue{margin-bottom:.5em;word-break:break-word;overflow-wrap:break-word}.interest-list li{margin-bottom:.8em}.entry{margin-bottom:2em;position:relative;padding-left:25px}.entry:before{content:"";position:absolute;left:0;top:8px;width:12px;height:12px;background:var(--current-theme-accent);border-radius:50%;border:2px solid var(--current-bg)}.entry h3{margin-top:0;margin-bottom:.2em;font-size:1.3em;color:var(--current-theme-accent)}.entry .institution{font-weight:700;color:var(--current-text-secondary);margin-bottom:.2em}.entry .dates{font-size:.9em;color:var(--current-theme-accent);margin-bottom:.5em}.entry ul{padding-left:15px;list-style-type:disc}.entry ul li{font-size:.95em}.project-entry .tech-stack{font-style:italic;color:var(--current-text-secondary);margin-bottom:.5em}.project-entry .project-date{float:right;font-size:.9em;color:var(--current-theme-accent)}.blog-post-summary{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.blog-post-summary:hover{transform:translateY(-2px);box-shadow:0 6px 20px 0 var(--current-box-shadow)}.blog-post-summary h3{margin-top:0;color:var(--current-theme-accent);transition:color .3s ease}.blog-post-summary:hover h3{color:var(--current-theme-accent-hover)}.reading-progress{position:fixed;top:0;left:0;width:0;height:4px;background:linear-gradient(90deg,#000,#000);z-index:1001;transition:width .1s ease}.reading-progress-bar{width:100%;height:100%;background:inherit}.blog-content-wrapper,.blog-content-body{width:100%;max-width:none}.blog-content-body .table-wrapper{max-width:100%}.blog-controls{display:flex;flex-wrap:wrap;gap:20px;align-items:stretch;margin-bottom:30px;padding:25px;background:var(--current-glass-bg);-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--current-glass-border);border-radius:12px;box-shadow:var(--current-box-shadow)}.search-container{position:relative;flex:1 1 280px;min-width:280px;max-width:450px}.search-container input{width:100%;padding:14px 18px 14px 50px;border:1px solid var(--current-glass-border);border-radius:10px;background:var(--current-bg);font-size:14px;transition:all .3s ease;color:var(--current-text);box-sizing:border-box}.search-container input:focus{outline:none;border-color:var(--current-theme-accent);box-shadow:0 0 0 3px #0000001f}.search-container i{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:var(--current-text-secondary);font-size:14px}.clear-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--current-text-secondary);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;font-size:14px}.clear-search:hover{background:#0000001f;color:var(--current-theme-accent)}.sort-container{flex:0 1 220px;min-width:220px;max-width:280px}.sort-container select{width:100%;padding:14px 18px;border:1px solid var(--current-glass-border);border-radius:10px;background:var(--current-bg);font-size:14px;cursor:pointer;transition:all .3s ease;color:var(--current-text);box-sizing:border-box}.sort-container select:focus{outline:none;border-color:var(--current-theme-accent);box-shadow:0 0 0 3px #0000001f}.blog-meta{display:flex;flex-wrap:wrap;gap:25px;align-items:center;margin:25px 0;padding:18px 25px;background:var(--current-glass-bg);border:1px solid var(--current-glass-border);border-radius:10px;border-left:4px solid var(--current-theme-accent);font-size:14px;color:var(--current-text-secondary)}.meta-item{display:flex;align-items:center;gap:8px}.meta-item i{color:var(--current-theme-accent);font-size:14px}.reading-time{font-weight:600;color:var(--current-theme-accent)}.math-indicator{background:#0000001f;color:var(--current-theme-accent);padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500}.blog-keywords{margin:20px 0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.blog-keywords i{color:var(--current-theme-accent);font-size:14px}.keyword{background:#0000001f;color:var(--current-theme-accent);padding:6px 12px;border-radius:20px;font-size:12px;font-weight:500;border:1px solid rgba(0,0,0,.2)}.blog-actions{display:flex;justify-content:center;gap:20px;margin:2em 0;padding:2em 0;border-top:2px solid #e5e5e5;flex-wrap:wrap}.action-button{display:flex;align-items:center;gap:10px;padding:12px 24px;background:var(--current-glass-bg);border:1px solid var(--current-text);color:var(--current-text);border-radius:10px;cursor:pointer;transition:all .3s ease;font-size:14px;text-decoration:none;font-weight:600;text-transform:uppercase;letter-spacing:.08em;box-shadow:var(--current-box-shadow)}.action-button:hover{background:var(--current-text);color:var(--current-bg);transform:translateY(-2px);box-shadow:0 10px 24px #0003;text-decoration:none}.action-button i{font-size:14px}.blog-content-body{line-height:1.8;font-size:16px;max-width:100%;margin:0 auto;position:relative;z-index:1}.blog-content-body{word-wrap:break-word;overflow-wrap:break-word}.blog-content-body *:not(pre):not(code){text-rendering:optimizeLegibility}.blog-content-body h1{color:var(--current-text);margin-top:2em;margin-bottom:1em;scroll-margin-top:120px;font-size:3rem;line-height:.95;letter-spacing:-.05em;position:relative;z-index:1}.blog-content-body h2,.blog-content-body h3,.blog-content-body h4{color:var(--current-text);margin-top:2.5em;margin-bottom:1em;scroll-margin-top:120px;position:relative;z-index:1}.blog-content-body h2{padding-bottom:.3em;border-bottom:2px solid var(--current-theme-accent)}.blog-content-body pre,.blog-content-body code,.blog-content-body blockquote,.blog-content-body p,.blog-content-body ul,.blog-content-body ol{position:relative;z-index:1}.blog-content-body pre{background-color:var(--bg-primary);padding:1.2em;border-radius:8px;overflow-x:auto;border:1px solid #e5e5e5;margin:1.5em 0;position:relative;z-index:1;color:var(--text-primary);font-family:Courier New,Courier,monospace;line-height:1.5;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;transform:translateZ(0)}.blog-content-body code{background-color:var(--bg-primary);padding:.2em .4em;border-radius:4px;font-family:Courier New,Courier,monospace;position:relative;z-index:1;color:var(--text-primary);font-size:.9em;border:1px solid #e5e5e5}.blog-content-body pre code{background-color:transparent;padding:0;color:inherit}.blog-content-body details{background:#f7f1e8b3;border:1px solid #e5e5e5;border-radius:8px;margin:1.5em 0;padding:0;position:relative;z-index:1}.dark-mode .blog-content-body details{background:#2d3436b3;border-color:#ffffff26}.blog-content-body summary{background:#0000001a;border-bottom:1px solid #e5e5e5;border-radius:8px 8px 0 0;color:#000;cursor:pointer;font-weight:600;padding:12px 18px;-webkit-user-select:none;user-select:none;transition:all .3s ease}.dark-mode .blog-content-body summary{background:#0003;border-bottom-color:#ffffff26;color:#000}.blog-content-body summary:hover{background:#00000026}.dark-mode .blog-content-body summary:hover{background:#0000004d}.blog-content-body details[open] summary{border-radius:8px 8px 0 0}.blog-content-body details>*:not(summary){padding:15px 18px}.blog-content-body details pre{margin:0;border-radius:0 0 8px 8px}.blog-content-body table{width:100%;border-collapse:collapse;margin:1.5em 0;background:#f7f1e8b3;border:1px solid #e5e5e5;border-radius:8px;overflow:hidden;position:relative;z-index:1;font-size:.95em;display:table}.blog-content-body .table-wrapper{overflow-x:auto;margin:1.5em 0;border-radius:8px;border:1px solid #e5e5e5;background:#f7f1e8b3;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;transform:translateZ(0)}.blog-content-body .table-wrapper{position:relative}.blog-content-body .table-wrapper::-webkit-scrollbar{height:8px}.blog-content-body .table-wrapper::-webkit-scrollbar-track{background:#0000001a;border-radius:4px}.blog-content-body .table-wrapper::-webkit-scrollbar-thumb{background:#000;border-radius:4px;border:2px solid rgba(0,0,0,.1)}.blog-content-body .table-wrapper::-webkit-scrollbar-thumb:hover{background:#000}.blog-content-body .table-wrapper:before,.blog-content-body .table-wrapper:after{content:"";position:absolute;top:0;bottom:0;width:20px;pointer-events:none;z-index:2;transition:opacity .3s ease}.blog-content-body .table-wrapper:before{left:0;background:linear-gradient(to right,rgba(247,241,232,.8),transparent)}.blog-content-body .table-wrapper:after{right:0;background:linear-gradient(to left,rgba(247,241,232,.8),transparent)}.dark-mode .blog-content-body .table-wrapper:before{background:linear-gradient(to right,rgba(45,52,54,.8),transparent)}.dark-mode .blog-content-body .table-wrapper:after{background:linear-gradient(to left,rgba(45,52,54,.8),transparent)}.blog-content-body .table-wrapper:not(.scrollable):before,.blog-content-body .table-wrapper:not(.scrollable):after{opacity:0}.blog-content-body .table-wrapper table{margin:0;border:none;background:transparent;min-width:600px}.dark-mode .blog-content-body table{background:#2d3436b3;border-color:#ffffff26}.blog-content-body th,.blog-content-body td{padding:12px 16px;text-align:left;border-bottom:1px solid #e5e5e5;vertical-align:top;position:relative;z-index:1}.dark-mode .blog-content-body th,.dark-mode .blog-content-body td{border-bottom-color:#ffffff26}.blog-content-body td,.blog-content-body th{word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.blog-content-body td mjx-container,.blog-content-body th mjx-container{white-space:nowrap}.floating-action-button{position:fixed;bottom:30px;right:30px;z-index:1000;display:none;transition:transform .3s ease}.fab-main{width:60px;height:60px;background:linear-gradient(135deg,#000,#000);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;cursor:pointer;box-shadow:0 4px 20px #0006;transition:all .3s ease;border:none}.fab-main:hover{transform:scale(1.1);box-shadow:0 6px 25px #00000080}.fab-menu{position:absolute;bottom:70px;right:0;display:flex;flex-direction:column;gap:15px;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s ease}.floating-action-button.active .fab-menu{opacity:1;visibility:visible;transform:translateY(0)}.floating-action-button.active .fab-main{transform:rotate(45deg)}.fab-item{width:50px;height:50px;background:#000000e6;border:none;border-radius:50%;color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 2px 10px #0003}.fab-item:hover{background:#000;transform:scale(1.1)}.code-block-wrapper{position:relative;margin:1.5em 0}.copy-code-btn{position:absolute;top:10px;right:10px;background:#000000b3;border:none;color:#fff;padding:8px 12px;border-radius:4px;cursor:pointer;font-size:12px;opacity:0;transition:all .3s ease;z-index:10}.code-block-wrapper:hover .copy-code-btn{opacity:1}.copy-code-btn:hover{background:#000000e6}.copy-code-btn.copied{background:#28a745;transform:scale(1.1)}.reading-line{position:fixed;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,#000000,transparent);pointer-events:none;z-index:999;display:none;opacity:.7}.highlighted-paragraph{background:linear-gradient(120deg,#ffff004d,#ffff001a);padding:.5em;border-radius:4px;transition:all .3s ease;position:relative}.highlighted-paragraph:before{content:"✨";position:absolute;left:-25px;top:50%;transform:translateY(-50%);opacity:.7}.focus-mode header,.focus-mode .blog-actions,.focus-mode .reading-progress{opacity:.3;transition:opacity .3s ease}.focus-mode header:hover,.focus-mode .blog-actions:hover{opacity:1}.focus-mode .blog-content-body{font-size:18px;line-height:1.9;max-width:70ch;margin:0 auto}.highlight-mode{cursor:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><rect x="2" y="2" width="16" height="16" fill="yellow" opacity="0.5"/></svg>'),auto}.notification{position:fixed;top:100px;right:30px;background:#000000f2;color:#fff;padding:12px 20px;border-radius:25px;font-size:14px;z-index:1001;opacity:0;transform:translate(100%);transition:all .3s ease;box-shadow:0 4px 20px #0003}.notification.show{opacity:1;transform:translate(0)}.fade-in{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.about-facts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:22px;margin-top:1em}.fact-item{display:grid;grid-template-columns:42px 1fr;align-items:flex-start;gap:12px;padding:18px 18px 16px;background:var(--current-glass-bg);border:1px solid var(--current-glass-border);border-radius:var(--border-radius-small);min-height:120px;box-shadow:0 4px 18px #00000012;transition:transform .25s ease,box-shadow .3s ease,background .3s ease;overflow:hidden}.fact-item i{font-size:1.4em;color:var(--current-theme-accent);flex-shrink:0;margin-top:2px}.fact-item .label{font-size:.7em;text-transform:uppercase;letter-spacing:.6px;font-weight:600;color:var(--current-text-secondary);margin-bottom:4px}.fact-item .value{word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;min-width:0}.fact-item .value a{text-decoration:none;word-break:break-all}.fact-item:hover{transform:translateY(-4px);box-shadow:0 10px 28px #4a90e22e}@media(max-width:420px){.about-facts-grid{grid-template-columns:1fr;gap:16px}.fact-item{padding:14px 16px;grid-template-columns:36px 1fr;gap:10px}.contact-details-grid{grid-template-columns:1fr;gap:16px}.contact-detail-item{padding:14px 16px;grid-template-columns:36px 1fr;gap:10px}}.contact-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:22px;margin-top:1.2em}.contact-detail-item{display:grid;grid-template-columns:40px 1fr;gap:14px;padding:18px 20px;background:var(--current-glass-bg);border:1px solid var(--current-glass-border);border-radius:var(--border-radius-small);box-shadow:0 4px 18px #0000000f;transition:transform .25s ease,box-shadow .3s ease;overflow:hidden}.contact-detail-item i{font-size:1.3em;color:var(--current-theme-accent);margin-top:2px}.contact-detail-item:hover{transform:translateY(-4px);box-shadow:0 10px 30px #4a90e22e}.contact-detail-item .label{font-size:.7em;text-transform:uppercase;letter-spacing:.5px;font-weight:600;color:var(--current-text-secondary);margin-bottom:4px}.contact-detail-item .value{word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;min-width:0}.contact-detail-item .value a{text-decoration:none;word-break:break-all}button:focus,a:focus,input:focus{outline:2px solid var(--current-theme-accent);outline-offset:2px;border-radius:4px}body,header,nav,.card-style,.content-section,.modern-footer,.footer-section{transition:background-color .3s ease,color .3s ease,border-color .3s ease}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--current-glass-bg);border-radius:10px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--current-theme-accent),#000000);border-radius:10px;border:2px solid var(--current-glass-bg)}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#000000,var(--current-theme-accent))}@media screen and (max-width:768px){:root{--border-radius-main: 12px;--border-radius-small: 8px}body{padding-top:10px;font-size:16px;line-height:1.6;background-attachment:scroll!important}header{padding:10px 0}nav{margin:0 10px;padding:.6em 1em;flex-direction:row;justify-content:space-between;align-items:center}nav .logo a{font-size:1.3em}nav .logo svg{width:24px;height:24px;margin-right:6px}header>nav>ul{display:none}#mobile-menu-toggle{display:block!important}#mobile-overlay{display:block}main{margin:1em auto;padding:0 15px;max-width:100%}.card-style,.content-section{padding:20px 18px;margin-bottom:1.5em;border-radius:var(--border-radius-main)}.card-style:hover{transform:none}h1{font-size:2em!important;line-height:1.2;margin-bottom:.5em}h2{font-size:1.6em!important;line-height:1.3;margin-top:1em}h3{font-size:1.3em!important;line-height:1.4}h4{font-size:1.1em!important}p{font-size:1em;line-height:1.6;margin-bottom:1em}.hero-section{padding:1.5em 1em;text-align:center}.hero-section h1{font-size:2.2em!important;margin-bottom:.3em}.hero-section .subtitle{font-size:1.1em!important;margin-bottom:.5em;line-height:1.4}.hero-section .location{font-size:.95em!important;margin-bottom:1.2em}.social-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;justify-content:center;max-width:340px;margin:1.5em auto 0}.social-links .btn{padding:.5em .9em;font-size:clamp(.75rem,2.5vw,.85rem);text-align:center;justify-content:center;white-space:nowrap;min-height:40px;display:flex;align-items:center;margin:.2em;cursor:pointer;touch-action:auto;-webkit-tap-highlight-color:rgba(0,0,0,.1)}.btn{padding:.5em .9em;font-size:clamp(.75rem,2.5vw,.85rem);min-height:40px;touch-action:auto;-webkit-tap-highlight-color:rgba(0,0,0,.1)}.social-links .btn i{margin-right:4px;font-size:1em}.publication-item,.publication-item-home{padding-bottom:1.2em;margin-bottom:1.5em}.publication-title,.publication-title-home{font-size:1.2em!important;line-height:1.3;margin-bottom:.5em}.publication-authors,.publication-authors-home{font-size:.9em;line-height:1.4;margin-bottom:.5em}.publication-venue,.publication-venue-home{font-size:.85em;margin-bottom:.8em}.publication-links,.publication-links-home{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.publication-links .btn-icon,.publication-links-home .btn-icon,.publication-links .btn,.publication-links-home .btn{font-size:clamp(.85rem,2.8vw,.95rem);padding:.7em 1em;flex:1;min-width:80px;min-height:44px;text-align:center;justify-content:center;touch-action:auto;-webkit-tap-highlight-color:rgba(0,0,0,.1);cursor:pointer}.news-list li{padding-left:12px;margin-bottom:1.2em;border-left-width:2px}.news-list .date{font-size:.85em;display:block;margin-bottom:.3em}.blog-content-body table,table{font-size:.85em;display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.blog-content-body .table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:8px;margin:1em 0}.blog-content-body th,.blog-content-body td,th,td{padding:8px 12px;min-width:120px}.interest-list li{margin-bottom:1em;font-size:.95em;line-height:1.5}.blog-content-body pre,pre{padding:1em;font-size:.85em;overflow-x:auto;-webkit-overflow-scrolling:touch}.blog-content-body code,code{font-size:.85em;padding:.2em .3em}input,select,textarea{font-size:16px!important;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--border-radius-small)}.blog-controls{flex-direction:column;gap:15px;padding:20px}.search-container,.sort-container{min-width:100%;max-width:100%}.blog-meta{flex-direction:column;gap:15px;padding:15px 20px;font-size:.9em}.meta-item{justify-content:center}.entry{padding-left:20px;margin-bottom:1.5em}.entry:before{left:0;width:8px;height:8px;top:10px}.entry h3{font-size:1.2em!important;line-height:1.3}.entry .institution{font-size:.95em;line-height:1.4}.entry .dates{font-size:.85em}.entry ul{font-size:.9em;line-height:1.5}.project-entry .project-date{float:none;display:block;margin-bottom:.5em}}@media screen and (min-width:769px)and (max-width:1024px){nav{margin:0 20px;padding:.7em 1.3em}main{margin:1.5em auto;padding:0 30px;max-width:100%}.card-style,.content-section{padding:22px 25px}.social-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:600px;margin:1.5em auto 0}.social-links .btn{flex:1;min-width:120px;padding:.5em .95em;font-size:clamp(.75rem,2vw,.85rem);min-height:38px;touch-action:auto;-webkit-tap-highlight-color:rgba(0,0,0,.1)}.btn{padding:.5em .95em;font-size:clamp(.75rem,2vw,.85rem);min-height:38px}h1{font-size:2.2em!important}h2{font-size:1.8em!important}.hero-section h1{font-size:2.6em!important}}@media screen and (max-width:480px){body{font-size:15px}nav{margin:0 5px;padding:.5em .8em}nav .logo a{font-size:1.2em}main{padding:0 10px}.card-style,.content-section{padding:15px;margin-bottom:1.2em}.hero-section{padding:1.2em .8em}.hero-section h1{font-size:1.8em!important}.hero-section .subtitle{font-size:1em!important}.social-links{grid-template-columns:1fr;gap:10px;max-width:280px}.social-links .btn{padding:.55em .95em;font-size:clamp(.75rem,3vw,.85rem);min-height:42px;touch-action:auto;-webkit-tap-highlight-color:rgba(0,0,0,.1);width:100%;justify-content:center}.btn{padding:.55em .95em;font-size:clamp(.75rem,3vw,.85rem);min-height:42px;touch-action:auto;-webkit-tap-highlight-color:rgba(0,0,0,.1)}.publication-links,.publication-links-home{flex-direction:column;align-items:stretch}.publication-links .btn-icon,.publication-links-home .btn-icon,.publication-links .btn,.publication-links-home .btn{width:100%;margin-bottom:8px;touch-action:auto;-webkit-tap-highlight-color:rgba(0,0,0,.1);min-height:48px;font-size:.9rem}h1{font-size:1.6em!important}h2{font-size:1.4em!important}h3{font-size:1.2em!important}}@media screen and (max-width:320px){nav .logo a{font-size:1.1em}nav .logo svg{width:20px;height:20px}.hero-section h1{font-size:1.6em!important}.social-links{max-width:250px}.card-style,.content-section{padding:12px}}@media screen and (-webkit-min-device-pixel-ratio:2),screen and (min-resolution:192dpi){nav .logo svg,.footer-logo svg{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media screen and (max-width:768px){button,.btn,.btn-icon,a{min-height:44px;min-width:44px}button:focus,a:focus,input:focus{outline:3px solid var(--current-theme-accent);outline-offset:2px}p,li{line-height:1.6}}@media print{.social-links{display:none}#mobile-menu,#mobile-menu-toggle{display:none!important}header>nav>ul{display:flex!important}.card-style{break-inside:avoid;box-shadow:none;border:1px solid #ccc;margin-bottom:1em}}.modern-footer{border-top:1px solid var(--grid-line);padding:3rem 0 2rem;margin-top:4rem;background:transparent}.footer-content{max-width:900px;margin:0 auto;padding:0 5%;display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.footer-brand h3{font-family:var(--font-mono);font-size:1.2rem;text-transform:uppercase;letter-spacing:-.05em;margin:0 0 .5rem;color:var(--current-text)}.footer-tagline{font-family:var(--font-serif);color:var(--text-muted);font-size:.9rem;margin:0}.footer-nav,.footer-social{display:flex;flex-direction:column;gap:.5rem}.footer-nav a,.footer-social a{font-family:var(--font-mono);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);text-decoration:none;transition:color .2s ease}.footer-nav a:hover,.footer-social a:hover{color:var(--text-primary)}.footer-copyright{max-width:900px;margin:2rem auto 0;padding:1.5rem 5% 0;border-top:1px solid var(--grid-line)}.footer-copyright p{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0}@media(max-width:768px){.footer-content{flex-direction:column;gap:2rem}}:root{--vh: 1vh}.touch-active{transform:scale(.98)!important;opacity:.8!important;transition:all .1s ease!important}.ripple-effect{position:absolute;border-radius:50%;transform:scale(0);animation:ripple .6s linear;background-color:#0000004d;pointer-events:none;z-index:10}@keyframes ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}@media(hover:none){.card-style:hover,.btn:hover,.social-icon:hover,.btn-icon:hover{transform:none!important}}button:focus-visible,.btn:focus-visible,.btn-icon:focus-visible,a:focus-visible{outline:3px solid var(--current-theme-accent);outline-offset:2px;border-radius:4px;z-index:10}@media(prefers-contrast:high){.card-style,.content-section{border:2px solid var(--current-text)}.btn,.social-icon,.btn-icon{border:2px solid var(--current-text);background:var(--current-bg);color:var(--current-text)}.btn:hover,.social-icon:hover{background:var(--current-text);color:var(--current-bg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.card-style{animation:none!important}.particle,.floating-action-button{display:none!important}.footer-wave{animation:none!important}.footer-particles{display:none!important}}@media(max-width:768px){::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000080;border-radius:3px}}@supports (padding: max(0px)){body{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right))}header{padding-top:max(20px,env(safe-area-inset-top))}.modern-footer{padding-bottom:max(2em,env(safe-area-inset-bottom))}#mobile-menu{padding-top:max(2em,env(safe-area-inset-top));padding-bottom:max(2em,env(safe-area-inset-bottom))}}@media(max-width:768px){.blog-content-body .table-wrapper{position:relative;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--current-theme-accent) transparent;overscroll-behavior-x:contain;transform:translateZ(0)}.blog-content-body .table-wrapper:after{content:"← Scroll →";position:absolute;bottom:5px;right:10px;font-size:.75em;color:var(--current-text-secondary);opacity:.7;pointer-events:none}.blog-content-body table{min-width:500px;width:auto}}.loading-skeleton{background:linear-gradient(90deg,var(--current-glass-bg) 25%,rgba(0,0,0,.1) 50%,var(--current-glass-bg) 75%);background-size:200% 100%;animation:loading-shimmer 1.5s infinite}@keyframes loading-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media(max-width:768px){*{-webkit-touch-callout:none;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}button,.btn,.btn-icon{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}}@media screen and (max-width:768px){input,textarea,select{font-size:16px!important;transform:translateZ(0)}}@media screen and (max-width:768px)and (max-height:500px){.hero-section{padding:1em}.card-style,.content-section{margin-bottom:1em;padding:15px}.modern-footer{padding:1.5em 0 1em}}@media(max-width:768px){.btn,.social-icon{font-weight:600}p,li{margin-bottom:1em}a{text-decoration:underline;text-decoration-color:#0000004d;text-underline-offset:2px}a:hover{text-decoration-color:var(--current-theme-accent)}}.publication-links,.publication-links-home{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:.8em}.publication-links .btn-icon,.publication-links-home .btn-icon,.publication-links .btn,.publication-links-home .btn{font-size:.9em;padding:.5em 1em;white-space:nowrap;position:relative;z-index:1}[id^=bibtex-entry-]{display:none;margin-top:1em;background-color:var(--current-glass-bg);padding:1em;border-radius:8px;border:1px solid var(--current-glass-border);position:relative;transition:all .3s ease;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}[id^=bibtex-entry-] pre{margin:0;padding:0;background:transparent;border:none;overflow-x:auto;-webkit-overflow-scrolling:touch}[id^=bibtex-entry-] code{background:transparent;border:none;padding:0;color:var(--current-text);font-family:Courier New,Courier,monospace;font-size:.85em;line-height:1.4;word-wrap:break-word;white-space:pre-wrap}.copy-bibtex-btn{position:absolute!important;top:10px!important;right:10px!important;background:#000c!important;color:#fff!important;border:none!important;padding:6px 12px!important;border-radius:4px!important;cursor:pointer!important;font-size:12px!important;transition:all .3s ease!important;display:flex!important;align-items:center!important;gap:5px!important;z-index:10!important;min-height:32px!important;min-width:60px!important}.copy-bibtex-btn:hover{background:#000!important;transform:scale(1.05)!important}.copy-bibtex-btn:active{transform:scale(.95)!important}@media(max-width:768px){.publication-links,.publication-links-home{flex-direction:column;align-items:stretch;gap:8px}.publication-links .btn-icon,.publication-links-home .btn-icon,.publication-links .btn,.publication-links-home .btn{width:100%;text-align:center;justify-content:center;padding:.7em 1em;font-size:.9em;min-height:44px;display:flex;align-items:center;gap:8px}[id^=bibtex-entry-]{margin:1em 0;padding:.8em;border-radius:6px}[id^=bibtex-entry-] code{font-size:.8em;line-height:1.3}.copy-bibtex-btn{position:relative!important;top:auto!important;right:auto!important;margin-top:10px!important;width:100%!important;justify-content:center!important}}@media(max-width:480px){.publication-links .btn-icon,.publication-links-home .btn-icon{font-size:.85em;padding:.6em .8em}[id^=bibtex-entry-]{padding:.6em}[id^=bibtex-entry-] code{font-size:.75em}}.publication-links a:focus,.publication-links-home a:focus{outline:2px solid var(--current-theme-accent);outline-offset:2px;z-index:10}.publication-links a,.publication-links-home a,.copy-bibtex-btn{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.publication-links a,.publication-links-home a{-webkit-tap-highlight-color:rgba(0,0,0,.3)}@media screen and (min-width:1025px){.social-links .btn,.btn{padding:.45em .9em;font-size:clamp(.75rem,1vw,.85rem);min-height:36px;transition:all .25s ease}.btn-icon{padding:.4em .8em;font-size:clamp(.7rem,.95vw,.8rem);min-height:34px}.social-links .btn:hover,.btn:hover,.btn-icon:hover{transform:translateY(-1px)}@media screen and (min-width:1400px){.social-links .btn,.btn{font-size:clamp(.8rem,1vw,.9rem);padding:.5em 1em}.btn-icon{font-size:clamp(.75rem,.95vw,.85rem);padding:.45em .85em}}}@media screen and (min-width:1400px){main{max-width:1000px}nav{max-width:1000px}.footer-content{max-width:1000px}}.papers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:1.5rem}.paper-card{background:var(--current-glass-bg);border:1px solid var(--current-glass-border);border-radius:var(--border-radius-main);padding:2rem;transition:all var(--transition-speed) ease;-webkit-backdrop-filter:blur(var(--backdrop-blur-amount));backdrop-filter:blur(var(--backdrop-blur-amount));box-shadow:var(--current-box-shadow);display:flex;flex-direction:column;gap:1rem}.paper-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px 0 var(--current-glass-border);border-color:var(--current-theme-accent)}.paper-icon{width:60px;height:60px;border-radius:12px;background:linear-gradient(135deg,var(--current-theme-accent),var(--current-theme-accent-hover));display:flex;align-items:center;justify-content:center;margin-bottom:.5rem}.paper-icon i{font-size:28px;color:#fff}.paper-card-title{font-size:1.3rem;font-weight:600;color:var(--current-text);margin:0;line-height:1.3}.paper-card-subtitle{font-size:1rem;color:var(--current-text-secondary);margin:0;font-weight:400;line-height:1.4}.paper-card-authors{font-size:.9rem;color:var(--current-text-secondary);margin:0;line-height:1.5}.paper-card-meta{font-size:.9rem;color:var(--current-theme-accent);font-weight:500;margin:0}.paper-card-description{font-size:.95rem;color:var(--current-text-secondary);line-height:1.6;margin:0;flex-grow:1}.paper-card-actions{display:flex;gap:.75rem;margin-top:.5rem;flex-wrap:wrap}.btn-paper-primary{flex:1;min-width:140px;background:var(--current-theme-accent);color:#fff;padding:.75rem 1.25rem;border-radius:var(--border-radius-small);text-decoration:none;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;transition:all var(--transition-speed) ease;border:2px solid transparent;font-size:.95rem;white-space:nowrap;-webkit-tap-highlight-color:rgba(0,0,0,.1)}.btn-paper-primary:hover{background:var(--current-theme-accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.btn-paper-primary:active{transform:translateY(0);box-shadow:0 2px 6px #0003}.btn-paper-secondary{padding:.75rem 1.25rem;border-radius:var(--border-radius-small);text-decoration:none;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;transition:all var(--transition-speed) ease;background:transparent;border:2px solid var(--current-theme-accent);color:var(--current-theme-accent);cursor:pointer;font-family:var(--font-primary);font-size:.95rem;white-space:nowrap;-webkit-tap-highlight-color:rgba(0,0,0,.1)}.btn-paper-secondary:hover{background:var(--current-theme-accent);color:#fff;transform:translateY(-2px)}.btn-paper-secondary:active{transform:translateY(0);background:var(--current-theme-accent-hover);color:#fff}@media screen and (max-width:768px){.papers-grid{grid-template-columns:1fr;gap:1.25rem}.paper-card{padding:1.5rem}.paper-card-actions{flex-direction:column;gap:.5rem}.btn-paper-primary,.btn-paper-secondary{width:100%;padding:.65rem .9rem;font-size:.85rem;min-height:40px;justify-content:center}.btn-paper-primary i,.btn-paper-secondary i{font-size:.9rem}.paper-card-title{font-size:1.1rem}.paper-card-subtitle{font-size:.9rem}.paper-card-authors,.paper-card-meta{font-size:.8rem}.paper-card-description{font-size:.85rem}}@media screen and (max-width:480px){.paper-card{padding:1.2rem}.paper-card-actions{gap:.5rem}.btn-paper-primary,.btn-paper-secondary{padding:.6rem .85rem;font-size:.8rem;min-height:38px}.btn-paper-primary i,.btn-paper-secondary i{font-size:.85rem}.paper-card-title{font-size:1.05rem;line-height:1.3}.paper-card-subtitle{font-size:.85rem}.paper-icon{width:48px;height:48px}.paper-icon i{font-size:22px}}.spotify-widget{overflow:hidden}.spotify-widget-inner{display:grid;grid-template-columns:120px 1fr;gap:1.5rem;align-items:center}.spotify-album-art-container{position:relative;width:120px;height:120px;flex-shrink:0}.spotify-album-art{width:100%;height:100%;object-fit:cover;border-radius:var(--border-radius-small);border:1px solid var(--current-glass-border);background:var(--grid-line)}.spotify-preview-btn{gap:.3rem;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.spotify-preview-btn.playing{background:#1db954;color:#fff;border-color:#1db954}.spotify-embed-container{overflow:hidden;max-height:0;opacity:0;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s ease,margin-top .3s ease;margin-top:0}.spotify-embed-container.open{max-height:220px;opacity:1;margin-top:1rem}.spotify-embed-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:#1db954}.spotify-embed-header i.fa-headphones{margin-right:.4rem}.spotify-embed-close{background:none;border:1px solid var(--current-glass-border);color:var(--current-text-secondary);width:26px;height:26px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.7rem;transition:background .2s ease,color .2s ease}.spotify-embed-close:hover{background:var(--current-text);color:var(--current-bg)}.spotify-embed-wrapper{border-radius:12px;overflow:hidden}.spotify-track-info{min-width:0}.spotify-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.spotify-header>i.fab.fa-spotify{font-size:1.2rem;color:#1db954!important}.spotify-status-text{font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--current-text-secondary)}.spotify-equalizer{display:inline-flex;align-items:flex-end;gap:2px;height:14px;margin-left:.25rem}.spotify-equalizer span{display:block;width:3px;background:#1db954;border-radius:1px;animation:spotify-eq-bar .8s ease-in-out infinite}.spotify-equalizer span:nth-child(1){height:8px;animation-delay:0s}.spotify-equalizer span:nth-child(2){height:14px;animation-delay:.2s}.spotify-equalizer span:nth-child(3){height:6px;animation-delay:.4s}@keyframes spotify-eq-bar{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}.spotify-track-name{font-family:var(--font-mono);font-size:1.1rem;font-weight:400;color:var(--current-text);text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.2rem;letter-spacing:-.02em}.spotify-track-name:hover{text-decoration:underline;text-decoration-color:var(--current-theme-accent)}.spotify-artist-name{font-family:var(--font-serif);font-size:.9rem;color:var(--current-text-secondary);margin:0 0 .15rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spotify-album-name{font-family:var(--font-serif);font-size:.8rem;color:var(--current-text-secondary);margin:0 0 .75rem;opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:italic}.spotify-progress-container{margin-bottom:.75rem}.spotify-progress-bar{height:3px;background:var(--grid-line);border-radius:2px;overflow:hidden;margin-bottom:.3rem}.spotify-progress-fill{height:100%;background:var(--current-text);border-radius:2px;transition:width 1s linear;width:0%}.spotify-progress-times{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:.65rem;color:var(--current-text-secondary);letter-spacing:.05em}.spotify-actions{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.spotify-widget.not-playing .spotify-album-art{filter:grayscale(40%);opacity:.85}.spotify-widget.loading .spotify-track-info{opacity:.5}@media screen and (max-width:768px){.spotify-widget-inner{grid-template-columns:100px 1fr;gap:1rem}.spotify-album-art-container{width:80px;height:80px}.spotify-track-name{font-size:.95rem}.spotify-artist-name{font-size:.8rem}.spotify-album-name{font-size:.75rem}}@media screen and (max-width:480px){.spotify-widget-inner{grid-template-columns:1fr;text-align:center}.spotify-album-art-container{width:120px;height:120px;margin:0 auto .5rem}.spotify-header,.spotify-actions{justify-content:center}.spotify-track-name,.spotify-artist-name,.spotify-album-name{white-space:normal;text-overflow:unset}}@media(prefers-reduced-motion:reduce){.spotify-equalizer span{animation:none}.spotify-embed-container{transition:none}}.last-updated{display:inline-flex;align-items:center;gap:10px;margin:1.5rem 0 0;padding:.55rem 1.4rem;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--current-text-secondary);border:1px solid var(--grid-line);border-radius:100px;position:relative;overflow:hidden;transition:color .3s ease,border-color .3s ease}.last-updated:before{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,0,0,.06),transparent);animation:stampShimmer 4s ease-in-out infinite}@keyframes stampShimmer{0%{left:-50%}50%{left:100%}to{left:-50%}}.last-updated .stamp-dot{width:6px;height:6px;border-radius:50%;background:var(--current-text-secondary);animation:stampPulse 2.5s ease-in-out infinite;flex-shrink:0}@keyframes stampPulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.4)}}.last-updated:hover{border-color:var(--current-text);color:var(--current-text)}.last-updated:hover .stamp-dot{background:var(--current-text)}@media screen and (max-width:768px){.last-updated{margin:1.2rem auto 0;font-size:.62rem;padding:.5rem 1rem;gap:7px}.hero-section .last-updated{display:flex;justify-content:center;max-width:fit-content;margin:1.2rem auto 0}}@media(prefers-reduced-motion:reduce){.last-updated:before{animation:none}.last-updated .stamp-dot{animation:none;opacity:.6}}
