@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;--tw-tracking:initial;--tw-duration:initial;--tw-ease: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-100:#f4f4f5;--color-zinc-200:#e4e4e7;--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-zinc-900:#18181b;--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);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--ease-in-out:cubic-bezier(.4,0,.2,1);--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-100:lab(96.1634% .0993311 -.364041);--color-zinc-200:lab(90.6853% .399232 -1.45452);--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);--color-zinc-900:lab(8.30603% .618205 -2.16572)}}}@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{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.-inset-px{inset:-1px}.start{inset-inline-start:var(--spacing)}.\!end{inset-inline-end:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.z-10{z-index:10}.col-start-1{grid-column-start:1}.row-start-1{grid-row-start:1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.block{display:block}.flex{display:flex}.grid{display:grid}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.table{display:table}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.h-10{height:calc(var(--spacing)*10)}.h-auto{height:auto}.h-full{height:100%}.w-10{width:calc(var(--spacing)*10)}.w-full{width:100%}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-baseline{align-items:baseline}.items-center{align-items:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-8{gap:calc(var(--spacing)*8)}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:3.40282e38px}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-zinc-200{border-color:var(--color-zinc-200)}.bg-white{background-color:var(--color-white)}.p-6{padding:calc(var(--spacing)*6)}.font-mono{font-family:var(--font-mono)}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.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)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-600{color:var(--color-zinc-600)}.text-zinc-900{color:var(--color-zinc-900)}.uppercase{text-transform:uppercase}.opacity-0{opacity:0}.opacity-50{opacity:.5}.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-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.hover\:border-zinc-300:hover{border-color:var(--color-zinc-300)}.hover\:underline:hover{text-decoration-line:underline}}@media (min-width:48rem){.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}}@media (min-width:64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-color-scheme:dark){.dark\:border-zinc-700{border-color:var(--color-zinc-700)}.dark\:border-zinc-800{border-color:var(--color-zinc-800)}.dark\:bg-zinc-900\/50{background-color:#18181b80}@supports (color:color-mix(in lab, red, red)){.dark\:bg-zinc-900\/50{background-color:color-mix(in oklab,var(--color-zinc-900)50%,transparent)}}.dark\:text-zinc-100{color:var(--color-zinc-100)}.dark\:text-zinc-400{color:var(--color-zinc-400)}@media (hover:hover){.dark\:hover\:border-zinc-700:hover{border-color:var(--color-zinc-700)}}}}:root{--bg-page:#fff;--bg-surface:#fff;--bg-hover:#f4f4f5;--text-strong:#09090b;--text-main:#3f3f46;--text-muted:#71717a;--border-light:#e4e4e7;--border-strong:#d4d4d8;--active-blue:#09090b;--status-live:#10b981;--status-dev:#f59e0b;--font-ui:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono",Courier,monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:9999px;--transition:all .3s cubic-bezier(.4,0,.2,1);--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}[data-theme=dark]{--bg-page:#09090b;--bg-surface:#0c0c0e;--bg-hover:#18181b;--text-strong:#fafafa;--text-main:#a1a1aa;--text-muted:#52525b;--border-light:#18181b;--border-strong:#27272a;--active-blue:#fff}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body,.pro-theme{background-color:var(--bg-page);color:var(--text-main);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}.theme-transition,.theme-transition *{transition:background-color .4s,border-color .4s,color .4s,box-shadow .4s!important}.text-mono{font-family:var(--font-mono)}.muted{color:var(--text-muted)}.page-wrapper{max-width:720px;margin:0 auto;padding:6rem 1.5rem 8rem}.page-wrapper-wide{max-width:1200px;margin:0 auto;padding:6rem 1.5rem 8rem}@media (max-width:768px){.page-wrapper,.page-wrapper-wide{padding:4rem 1.25rem 5rem}}.top-nav{z-index:100;transition:var(--transition);padding:1.5rem 0;position:fixed;top:0;left:0;right:0}.nav-container{justify-content:space-between;align-items:center;max-width:1000px;margin:0 auto;padding:0 1.5rem;display:flex}.logo{color:var(--text-strong);letter-spacing:-.04em;font-size:1.25rem;font-weight:700;text-decoration:none}.logo span{color:var(--text-muted)}.nav-links{align-items:center;gap:1.5rem;display:flex}.nav-links a{color:var(--text-muted);transition:var(--transition);font-size:.9rem;font-weight:500;text-decoration:none}.nav-links a:hover{color:var(--text-strong)}.icon-btn{border:1px solid var(--border-light);background:0 0;background-color:var(--bg-surface);border-radius:var(--radius-sm);cursor:pointer;width:34px;height:34px;color:var(--text-muted);transition:var(--transition);justify-content:center;align-items:center;display:flex}.icon-btn:hover{color:var(--text-strong);background-color:var(--bg-hover);border-color:var(--border-strong)}@media (min-width:1024px){.top-nav{pointer-events:none}.nav-links{pointer-events:auto;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-light);border-radius:var(--radius-pill);box-shadow:var(--shadow-md);background-color:#fffc;padding:.5rem 1.5rem}[data-theme=dark] .nav-links{background-color:#0c0c0ecc;box-shadow:0 8px 32px #0006}}.constellation-canvas{z-index:1;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0}.hero-fullscreen{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100vh;padding:2rem 1.5rem;display:flex;position:relative;overflow:hidden}.hero-center-content{z-index:10;flex-direction:column;align-items:center;gap:1.5rem;max-width:600px;display:flex;position:relative}.avatar-container{margin-bottom:.5rem;position:relative}.profile-avatar-centered{object-fit:cover;border:4px solid var(--bg-surface);width:130px;height:130px;box-shadow:0 0 0 1px var(--border-light),var(--shadow-md);transition:var(--transition);border-radius:50%}.profile-avatar-centered:hover{box-shadow:0 0 0 1px var(--border-strong),0 12px 40px #0000001a;transform:scale(1.02)}.mobius-loop-badge{background:var(--bg-surface);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);border-radius:50%;padding:4px;display:flex;position:absolute;bottom:4px;right:4px}.hero-center-subtitle{color:var(--text-muted);letter-spacing:-.01em;font-size:1.25rem;font-weight:500}.status-badge{font-size:.75rem;font-family:var(--font-mono);color:var(--text-muted);background-color:var(--bg-hover);border:1px solid var(--border-light);border-radius:var(--radius-pill);align-items:center;gap:.5rem;padding:.25rem .75rem;display:inline-flex}.status-badge .badge-dot{background-color:var(--status-live);width:8px;height:8px;box-shadow:0 0 10px var(--status-live);border-radius:50%;animation:2s infinite pulse}@keyframes pulse{50%{opacity:.5}}.hero-bio{color:var(--text-main);text-align:center;max-width:500px;font-size:1rem;line-height:1.7}.social-icons-row{justify-content:center;align-items:center;gap:1.5rem;margin-top:.5rem;display:flex}.social-icon-link{color:var(--text-muted);transition:var(--transition);justify-content:center;align-items:center;font-size:1.5rem;display:inline-flex}.social-icon-link:hover{color:var(--text-strong);transform:translateY(-2px)}.tech-stack-row{flex-direction:column;align-items:center;gap:.5rem;margin-top:1rem;display:flex}.stack-label{color:var(--text-muted);letter-spacing:.5px;text-transform:uppercase;font-size:.7rem;font-weight:600}.tech-tags-list{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.tech-tag{font-size:.75rem;font-family:var(--font-mono);background-color:var(--bg-hover);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-muted);transition:var(--transition);padding:.15rem .5rem}.tech-tag:hover{border-color:var(--border-strong);color:var(--text-strong)}.projects-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem;display:grid}@media (max-width:768px){.projects-grid{grid-template-columns:1fr}}.project-card{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-md);transition:var(--transition);flex-direction:column;gap:1rem;height:100%;padding:1.75rem;display:flex}.project-card:hover{border-color:var(--border-strong);transform:translateY(-4px);box-shadow:0 12px 30px #0000000a}[data-theme=dark] .project-card{background:#12121466}[data-theme=dark] .project-card:hover{background:#18181b99;box-shadow:0 12px 40px #00000080}.project-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.project-card-title{color:var(--text-strong);font-size:1.1rem;font-weight:600;text-decoration:none}.project-card-tech{font-size:.7rem;font-family:var(--font-mono);color:var(--text-muted);background:var(--bg-hover);border-radius:var(--radius-sm);padding:.1rem .4rem}.project-card-description{color:var(--text-main);font-size:.9rem;line-height:1.6}.project-card-footer{margin-top:auto;padding-top:.5rem}.experience-item-wrapper{border-bottom:1px solid var(--border-light);padding:2rem 0}.exp-logo-container{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;transition:opacity .5s;display:flex;overflow:hidden}.exp-logo-container.loading{opacity:0}.exp-logo-container.loaded{opacity:1}.blogs-list{flex-direction:column;display:flex}.blog-item{border-bottom:1px solid var(--border-light);transition:var(--transition);padding:1rem 0;text-decoration:none;display:block}.blog-item:hover .blog-title{color:var(--text-strong)}.blog-item:hover{opacity:.85}.blog-meta{color:var(--text-muted);font-size:.7rem;font-family:var(--font-mono);margin-bottom:.2rem}.blog-title{color:var(--text-strong);transition:var(--transition);margin-bottom:.2rem;font-size:1rem;font-weight:600}.blog-excerpt{color:var(--text-muted);font-size:.8rem;line-height:1.5}.footer-bottom{text-align:center;color:var(--text-muted);border-top:1px solid var(--border-light);margin-top:1rem;padding:2rem 0;font-size:.75rem}.tooltip{position:relative}.tooltip:hover:after{content:attr(data-tooltip);background:var(--text-strong);color:var(--bg-surface);border-radius:var(--radius-sm);white-space:nowrap;z-index:10;padding:2px 6px;font-size:.65rem;font-weight:500;position:absolute;bottom:120%;left:50%;transform:translate(-50%)}.tooltip-bottom:hover:after{top:120%;bottom:auto}.fade-in-up{opacity:0;transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);transform:translateY(10px)}.fade-in-up.visible{opacity:1;visibility:visible;transform:translateY(0)}.project-link{color:var(--text-strong);width:fit-content;transition:var(--transition);align-items:center;gap:.25rem;font-size:.8rem;font-weight:500;text-decoration:none;display:inline-flex}.project-link:hover{color:var(--text-muted)}.section{z-index:10;margin-top:3.5rem;padding:0;position:relative}.section:first-of-type{margin-top:0}.section-heading{color:var(--text-strong);letter-spacing:-.02em;border-bottom:1px solid var(--border-light);margin-bottom:1.25rem;padding-bottom:.5rem;font-size:1.25rem;font-weight:700}@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}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
