@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-zinc-300:#d4d4d8;--color-zinc-400:#9f9fa9;--color-zinc-500:#71717b;--color-zinc-600:#52525c;--color-zinc-700:#3f3f46;--color-zinc-800:#27272a;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--font-weight-bold:700;--leading-relaxed:1.625;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-zinc-300:lab(84.9837% .601262 -2.17986);--color-zinc-400:lab(65.6464% 1.53497 -5.42429);--color-zinc-500:lab(47.8878% 1.65477 -5.77283);--color-zinc-600:lab(35.1166% 1.78212 -6.1173);--color-zinc-700:lab(26.8019% 1.35387 -4.68303);--color-zinc-800:lab(15.7305% .613764 -2.16959)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.justify-between{justify-content:space-between}.gap-2{gap:calc(var(--spacing)*2)}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-zinc-800{border-color:var(--color-zinc-800)}.px-2{padding-inline:calc(var(--spacing)*2)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.font-mono{font-family:var(--font-mono)}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-white{color:var(--color-white)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-600{color:var(--color-zinc-600)}.uppercase{text-transform:uppercase}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.group-hover\:border-zinc-700:is(:where(.group):hover *){border-color:var(--color-zinc-700)}.group-hover\:text-zinc-300:is(:where(.group):hover *){color:var(--color-zinc-300)}.group-hover\:text-zinc-400:is(:where(.group):hover *){color:var(--color-zinc-400)}}}:root{--bg-primary:#050505;--bg-secondary:#0a0a0a;--bg-tertiary:#111;--bg-elevated:#161616;--text-primary:#f5f5f5;--text-secondary:#a3a3a3;--text-tertiary:#525252;--border:#ffffff14;--border-hover:#ffffff2e;--accent:#fff;--card-bg:#ffffff06;--card-hover:#ffffff0d;--sidebar-width:200px;--bg-primary-rgb:5,5,5;--content-max-width:860px;--layout-gap:60px}[data-theme=light]{--bg-primary:#fff;--bg-primary-rgb:255,255,255;--bg-secondary:#fafafa;--bg-tertiary:#f0f0f0;--bg-elevated:#fff;--text-primary:#0a0a0a;--text-secondary:#525252;--text-tertiary:#a3a3a3;--border:#0000000f;--border-hover:#00000026;--accent:#0a0a0a;--card-bg:#00000005;--card-hover:#0000000a}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,sans-serif;line-height:1.65;overflow-x:hidden}::selection{background:var(--accent);color:var(--bg-primary)}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:99px}.sidebar{top:0;left:calc(50% - (var(--content-max-width)/2) - var(--sidebar-width) - var(--layout-gap));width:var(--sidebar-width);z-index:100;background:0 0;border-right:none;flex-direction:column;align-items:center;height:100vh;padding:80px 0;transition:all .35s cubic-bezier(.25,1,.5,1);display:flex;position:fixed;overflow:visible}.sidebar-collapse-btn,.sidebar.collapsed{display:none!important}.sidebar-overlay{z-index:90;background:#00000080;display:none;position:fixed;inset:0}.sidebar-overlay.active{display:block}.sidebar-logo{object-fit:contain;flex-shrink:0;width:36px;height:36px;transition:opacity .3s}.brand-role{text-transform:uppercase;letter-spacing:.25em;color:var(--text-tertiary);white-space:nowrap;opacity:.8;text-align:center;width:100%;margin-top:14px;margin-bottom:0;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500}.sidebar.collapsed .brand-role{opacity:0}.sidebar-collapse-btn{width:24px;height:24px;color:var(--text-tertiary);cursor:pointer;z-index:101;background:0 0;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.25,1,.5,1);display:flex;position:absolute;top:50%;right:-28px;transform:translateY(-50%)}.sidebar-collapse-btn:hover{color:var(--text-primary);transform:translateY(-50%)scale(1.2)}.sidebar-collapse-btn svg{transition:transform .35s cubic-bezier(.25,1,.5,1)}.sidebar.collapsed .sidebar-collapse-btn svg{transform:rotate(180deg)}.sidebar.collapsed .social-link span,.sidebar.collapsed .sidebar-footer-text,.sidebar.collapsed .dash{display:none}.theme-toggle,.language-toggle-btn{border:1px solid var(--border);background:var(--bg-elevated);width:38px;height:38px;color:var(--text-tertiary);cursor:pointer;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:1;transition:all .3s cubic-bezier(.23,1,.32,1);display:flex}.theme-toggle:hover,.language-toggle-btn:hover{color:var(--text-primary);border-color:var(--border-hover);background:var(--card-hover);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.theme-toggle svg{width:16px;height:16px}.social-link{width:32px;height:32px;color:var(--text-tertiary);justify-content:center;align-items:center;transition:color .2s;display:flex}.social-link:hover{color:var(--text-primary);transform:scale(1.15)}.sidebar-header{text-align:center;flex-direction:column;align-items:center;width:100%;display:flex}.sidebar-divider{background:var(--text-tertiary);opacity:.2;width:100%;height:1px;margin:40px 0}.sidebar-nav{flex-direction:column;gap:8px;width:100%;margin-bottom:40px;display:flex}.nav-link{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.2em;align-items:center;gap:24px;width:100%;padding:12px 0 12px 28px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;text-decoration:none;transition:all .4s cubic-bezier(.23,1,.32,1);display:flex}.nav-dash{background:var(--text-tertiary);opacity:.5;width:16px;height:1px;transition:all .4s cubic-bezier(.23,1,.32,1)}.nav-link:hover .nav-dash,.nav-link.active .nav-dash{background:var(--accent);opacity:1;width:36px}.nav-link:hover,.nav-link.active{color:var(--text-primary)}.sidebar-footer{flex-direction:column;align-items:center;width:100%;margin-top:auto;display:flex}.social-links{justify-content:center;align-items:center;gap:24px;width:100%;margin:12px 0;display:flex}.toggles-row{justify-content:center;align-items:center;gap:12px;width:100%;margin-bottom:0;display:flex}.logo-dark{display:block!important}.logo-light,[data-theme=light] .logo-dark{display:none!important}[data-theme=light] .logo-light{display:block!important}.sidebar-footer-text{color:var(--text-tertiary);opacity:.6;text-align:center;letter-spacing:.05em;width:100%;margin-top:16px;font-family:JetBrains Mono,monospace;font-size:10px}.social-link svg{width:16px;height:16px}.top-header{background:rgba(var(--bg-primary-rgb),.7);border-bottom:1px solid var(--border);z-index:90;-webkit-backdrop-filter:blur(16px)saturate(180%);backdrop-filter:blur(16px)saturate(180%);justify-content:center;align-items:center;height:64px;padding:0 48px;transition:all .35s cubic-bezier(.25,1,.5,1);display:flex;position:fixed;top:0;left:0;right:0}.sidebar-collapsed-active .top-header{left:var(--sidebar-collapsed)}.header-nav{gap:32px;display:flex}.header-nav a{color:var(--text-tertiary);letter-spacing:.2px;font-size:13px;font-weight:500;transition:color .2s}.header-nav a:hover{color:var(--text-primary)}.main-content{width:100%;min-height:100vh;margin-left:0;padding:120px 0 80px}.sidebar-collapsed-active .main-content{margin-left:var(--sidebar-collapsed)}.content-wrapper{max-width:var(--content-max-width);margin:0 auto;padding-left:40px;position:relative}.content-wrapper:before{content:"";background-image:linear-gradient(#fff3 50%,#0000 50%);background-repeat:repeat-y;background-size:1px 8px;width:1px;position:absolute;top:0;bottom:0;left:-1px}.timeline-progress{background:var(--accent);width:2px;height:0%;box-shadow:0 0 8px var(--accent);opacity:.8;z-index:50;pointer-events:none;position:absolute;top:0;left:-1px;display:block!important}.section{margin-bottom:100px;position:relative}.section-header{align-items:baseline;gap:12px;margin-bottom:36px;display:flex}.section-header h2{letter-spacing:-.03em;font-size:1.5rem;font-weight:700;line-height:1}.section-number{color:var(--text-tertiary);font-family:JetBrains Mono,monospace;font-size:12px}.about-blocks{flex-direction:column;gap:20px;display:flex}.about-block{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;padding:24px 28px;transition:border-color .3s;position:relative;overflow:hidden}.about-block:hover{border-color:var(--border-hover)}.about-info-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}@media (max-width:640px){.about-info-grid{grid-template-columns:1fr;gap:12px}}.about-block-intro{position:relative}.about-block-intro:before{content:"";background:linear-gradient(135deg,transparent 0%,transparent 30%,var(--card-bg)60%,var(--bg-tertiary)100%);pointer-events:none;z-index:1;opacity:.8;border-radius:0 10px 0 0;width:220px;height:220px;position:absolute;top:-1px;right:-1px}.about-block-label{letter-spacing:2.5px;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:14px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.about-block p{color:var(--text-secondary);font-size:15px;line-height:1.7}.about-block strong{color:var(--text-primary);font-weight:600}.experience-card{padding:0;transition:transform .3s}.experience-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.experience-card h3{margin-bottom:2px;font-size:16px;font-weight:700;line-height:1.3}.experience-card .company-info{color:var(--text-tertiary);font-size:13px}.experience-card .period{color:var(--text-tertiary);white-space:nowrap;border:1px solid var(--border);background:var(--card-bg);border-radius:4px;flex-shrink:0;padding:3px 10px;font-family:JetBrains Mono,monospace;font-size:11px}.experience-impacts{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.experience-item{border-bottom:1px solid var(--border);padding:32px 0}.experience-item:first-child{border-top:1px solid var(--border)}.impact-item{color:var(--text-secondary);align-items:flex-start;gap:10px;font-size:14px;line-height:1.6;display:flex}.impact-item svg{width:14px;height:14px;color:var(--text-tertiary);flex-shrink:0;margin-top:4px}.education-card{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;margin-bottom:16px;padding:24px 28px;transition:border-color .3s}.education-card:hover{border-color:var(--border-hover)}.education-card .period{color:var(--text-tertiary);margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:11px}.education-card h3{margin-bottom:4px;font-size:16px;font-weight:700}.education-card .institution{color:var(--text-tertiary);margin-bottom:12px;font-size:13px}.education-card .edu-desc{color:var(--text-secondary);font-size:14px;line-height:1.7}.project-card{background:var(--bg-tertiary);border:1px solid var(--border);cursor:pointer;border-radius:8px;transition:all .35s cubic-bezier(.25,1,.5,1);position:relative;overflow:hidden}.project-card:hover{border-color:var(--border-hover);transform:translateY(-4px)}.project-thumb{aspect-ratio:16/10;object-fit:cover;width:100%;transition:transform .5s;display:block}.project-card:hover .project-thumb{transform:scale(1.05)}.project-thumb-wrapper{aspect-ratio:16/10;background:var(--bg-tertiary);width:100%;position:relative;overflow:hidden}.project-body{padding:20px}.project-body h3{margin-bottom:6px;font-size:16px;font-weight:700;line-height:1.3}.project-body p{color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-bottom:14px;font-size:13px;line-height:1.6;display:-webkit-box;overflow:hidden}.project-tags{flex-wrap:wrap;gap:6px;display:flex}.project-tags span{letter-spacing:1px;text-transform:uppercase;border:1px solid var(--border);color:var(--text-tertiary);border-radius:3px;padding:3px 8px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.blog-card{border-bottom:1px solid var(--border);z-index:1;padding:24px 0;transition:transform .3s,border-color .3s;display:block;position:relative}.blog-card:first-child{border-top:1px solid var(--border)}.blog-card:hover{border-color:var(--border-hover);transform:translate(8px)}.blog-card .blog-meta{color:var(--text-tertiary);gap:16px;margin-bottom:8px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.blog-card h3{margin-bottom:6px;font-size:16px;font-weight:700;line-height:1.4;transition:color .2s}.blog-card:hover h3{color:var(--accent)}.blog-card .blog-excerpt{color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.6;display:-webkit-box;overflow:hidden}.tech-tag{color:var(--text-secondary);background:var(--card-bg);border:1px solid var(--border);border-radius:4px;align-items:center;gap:6px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;transition:border-color .2s;display:inline-flex}.tech-tag:hover{border-color:var(--border-hover);color:var(--text-primary)}.tech-tag .tag-years{color:var(--text-tertiary);border-left:1px solid var(--border);padding-left:6px;font-size:10px}.modal-backdrop{-webkit-backdrop-filter:blur(24px);z-index:99999;opacity:0;pointer-events:none;background:#000000b3;justify-content:center;align-items:center;padding:24px;transition:opacity .3s;display:flex;position:fixed;inset:0}.modal-backdrop.open{opacity:1;pointer-events:auto}.modal-content{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:100%;max-width:840px;max-height:90vh;transition:transform .4s cubic-bezier(.2,1,.3,1);display:flex;overflow:hidden;transform:translateY(20px);box-shadow:0 32px 64px #00000080}.modal-backdrop.open .modal-content{transform:translateY(0)}.modal-header{aspect-ratio:16/7;background:var(--bg-tertiary);flex-shrink:0;width:100%;position:relative;overflow:hidden}.modal-header img{object-fit:cover;opacity:.85;width:100%;height:100%}.modal-header-overlay{background:linear-gradient(to top,var(--bg-secondary)10%,transparent 80%);flex-direction:column;justify-content:flex-end;padding:40px;display:flex;position:absolute;inset:0}.modal-close{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;transition:all .2s cubic-bezier(.4,0,.2,1);color:#fff!important;z-index:9999!important;background:#0009!important;display:flex!important;position:absolute!important;top:24px!important;right:24px!important}.modal-close:hover{background:var(--bg-secondary);border-color:var(--text-primary);transform:scale(1.1)}.modal-divider{background:var(--border);opacity:.6;width:100%;height:1px;margin:32px 0}.modal-body{flex:1;padding:32px;overflow-y:auto}.noise-overlay{pointer-events:none;z-index:100000;opacity:.1;mix-blend-mode:overlay;background:url(/assets/background/h2-bg-noise-1.gif) 0 0/150px 150px;position:fixed;inset:0}.section-float-img{pointer-events:none;z-index:0;opacity:0;position:absolute}@keyframes floatIdle{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-8px)rotate(1deg)}50%{transform:translateY(-4px)rotate(-.5deg)}75%{transform:translateY(-12px)rotate(.5deg)}}.section-float-img{transition:opacity .5s,transform .5s;animation:8s ease-in-out infinite floatIdle}.section-float-img:hover{transform:scale(1.1);opacity:1!important}.blog-page-layout{max-width:720px;margin:0 auto;padding:0 24px}.blog-page-header{border-bottom:1px solid var(--border);margin-bottom:48px;padding-bottom:32px}.blog-page-header h1{letter-spacing:-.03em;margin-bottom:8px;font-size:2rem;font-weight:800}.blog-page-header p{color:var(--text-secondary);font-size:15px}.blog-post-article h1{letter-spacing:-.03em;margin-bottom:16px;font-size:2.2rem;font-weight:800;line-height:1.2}.blog-post-article .post-meta{color:var(--text-tertiary);border-bottom:1px solid var(--border);gap:16px;margin-bottom:40px;padding-bottom:24px;font-family:JetBrains Mono,monospace;font-size:12px;display:flex}.blog-post-article .post-body{color:var(--text-secondary);font-size:16px;line-height:1.8}.blog-post-article .post-body h2{color:var(--text-primary);margin:40px 0 16px;font-size:1.4rem;font-weight:700}.blog-post-article .post-body h3{color:var(--text-primary);margin:32px 0 12px;font-size:1.15rem;font-weight:600}.blog-post-article .post-body p{margin-bottom:20px}.blog-post-article .post-body code{background:var(--card-bg);border:1px solid var(--border);border-radius:4px;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:.9em}.blog-post-article .post-body pre{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;margin:24px 0;padding:20px;font-family:JetBrains Mono,monospace;font-size:13px;line-height:1.6;overflow-x:auto}.blog-post-article .post-body pre code{background:0 0;border:none;padding:0}.blog-post-article .post-body blockquote{border-left:3px solid var(--accent);color:var(--text-tertiary);margin:24px 0;padding-left:20px;font-style:italic}.blog-post-article .post-body ul,.blog-post-article .post-body ol{margin-bottom:20px;padding-left:24px}.blog-post-article .post-body li{margin-bottom:8px}.blog-post-article .post-tags{border-top:1px solid var(--border);flex-wrap:wrap;gap:8px;margin-top:40px;padding-top:24px;display:flex}.header-logo,.mobile-menu-btn{display:none}.back-link{color:var(--text-tertiary);align-items:center;gap:8px;margin-bottom:32px;font-size:13px;transition:color .2s;display:inline-flex}.back-link:hover{color:var(--text-primary)}.projects-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.project-card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;flex-direction:column;height:100%;transition:all .3s cubic-bezier(.25,1,.5,1);display:flex}.project-card:hover{border-color:var(--border-hover);background:var(--card-hover);transform:translateY(-4px)}.project-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.project-title{color:var(--text-primary);font-size:18px;font-weight:700;line-height:1.3}.project-links{gap:12px;display:flex}.project-link{color:var(--text-tertiary);font-family:JetBrains Mono,monospace;font-size:12px;text-decoration:none;transition:color .2s}.project-link:hover{color:var(--text-primary);text-decoration:underline}.project-desc{color:var(--text-secondary);flex:1;margin-bottom:24px;font-size:15px;line-height:1.6}.project-tags{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.project-tags span{color:var(--text-tertiary);background:var(--bg-tertiary);border:1px solid var(--border);text-transform:uppercase;letter-spacing:.5px;border-radius:4px;padding:4px 8px;font-family:JetBrains Mono,monospace;font-size:10px}.section-float-wrapper{pointer-events:auto;animation:8s ease-in-out infinite floatIdle}.section-float-img{width:100%;height:auto;animation:none!important}.experience-item{border-bottom:1px solid var(--border);padding:32px 0;transition:all .3s;position:relative}.experience-item:last-child{border-bottom:none}.blog-section-bg{pointer-events:none;z-index:0;justify-content:center;align-items:center;display:flex;position:absolute;inset:-80px -56px 0 -40px;opacity:1!important}.blog-section-bg img{object-fit:cover;filter:brightness(2)contrast(1.1);mix-blend-mode:soft-light;opacity:.3;width:100%;height:100%}[data-theme=light] .blog-section-bg img{filter:brightness(.9)contrast(1.2);mix-blend-mode:multiply;opacity:.2}@media (max-width:1400px){.sidebar{left:40px}}@media (max-width:1100px){.sidebar{display:none}.main-content{padding-top:80px}}@media (max-width:1024px){.sidebar{background:var(--bg-secondary);z-index:1000;flex-direction:column;width:280px;padding:32px 24px;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);height:100dvh!important}.sidebar.open{background:rgba(var(--bg-primary-rgb),.95);-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);border-right:1px solid var(--border);overflow-y:auto;transform:translate(0);box-shadow:20px 0 50px #00000080;width:280px!important}.top-header{justify-content:space-between;padding:0 20px;left:0}.header-logo{align-items:center;display:flex}.top-header .header-nav{display:none}.mobile-menu-btn{display:flex!important}.main-content{margin-left:0;padding:80px 24px 60px}.sidebar-collapsed-active .main-content{margin-left:0}.sidebar-collapsed-active .top-header{left:0}.content-wrapper{border-left:none;padding-left:24px}.timeline-progress{display:block}.projects-grid{grid-template-columns:1fr}.section-float-img,.section-float-wrapper{display:none!important}.sidebar-collapse-btn{display:none}}@media (max-width:640px){.main-content{padding:72px 16px 48px}.content-wrapper{border-left:none;padding-left:32px}.content-wrapper:before{display:block;left:8px}.timeline-progress{width:2px;display:block;left:8px}.experience-header{flex-direction:column;align-items:flex-start;gap:8px}.experience-card .period{align-self:flex-start;margin-top:4px}.section-header h2{font-size:1.15rem}.section-number{font-size:10px}.blog-placeholder-h2{font-size:32px!important}.top-header{height:56px}.modal-body{padding:20px}.modal-body>div{grid-template-columns:1fr!important}.modal-body>div>div:last-child{border-top:1px solid var(--border);margin-top:8px;padding-top:20px;border-left:none!important;padding-left:0!important}}.not-found-text{color:var(--text-secondary);cursor:pointer;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),color .3s}.not-found-text:hover{color:var(--text-primary);transform:scale(1.15)}.section-float-img:hover{filter:brightness(1.2);transform:scale(1.1);opacity:1!important}.header-nav{flex:1;justify-content:center;gap:32px;display:flex}.sidebar-logo{transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.sidebar-logo:hover{transform:scale(1.1)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}
