/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{margin:.67em 0;font-size:2em}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace;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}img{border-style:none}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:100%;line-height:1.15}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring{outline:1px dotted buttontext}[type=button]:-moz-focusring{outline:1px dotted buttontext}[type=reset]:-moz-focusring{outline:1px dotted buttontext}[type=submit]:-moz-focusring{outline:1px dotted buttontext}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;white-space:normal;max-width:100%;padding:0;display:table}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template,[hidden]{display:none}@font-face{font-family:Titilium;font-weight:400;src:url(/assets/TitilliumWeb-Regular-BvE-xINM.ttf)}@font-face{font-family:Titilium;font-style:italic;font-weight:400;src:url(/assets/TitilliumWeb-Italic-B4e0mtoR.ttf)}@font-face{font-family:Titilium;font-style:italic;font-weight:500;src:url(/assets/TitilliumWeb-SemiBoldItalic-C8to8ln2.ttf)}@font-face{font-family:Titilium;font-weight:500;src:url(/assets/TitilliumWeb-SemiBold-A5pA7shG.ttf)}@font-face{font-family:Titilium;font-weight:700;src:url(/assets/TitilliumWeb-Bold-BBoV4Xl7.ttf)}@font-face{font-family:Inter;font-weight:300;src:url(/assets/Inter-Light-slnt_0-Cz07TYht.ttf)}@font-face{font-family:Inter;font-weight:700;src:url(/assets/Inter-Bold-slnt_0-ClsDwGZQ.ttf)}:root{--header-color-home:#93b0ff;--header-color-home-gradient:linear-gradient(135deg, #93b0ff 0%, #7a96e6 100%);--header-color-projects:#ff4b2b;--header-color-projects-gradient:linear-gradient(135deg, #ff4b2b 0%, #e63e23 100%);--header-color-resume:#c8ffd2;--header-color-resume-gradient:linear-gradient(135deg, #c8ffd2 0%, #a8e6b3 100%);--header-text-color:#fff;--header-overlay:rgba(0,0,0,.2);--header-overlay-hover:rgba(0,0,0,.3);--text-color:#1a1a1a;--text-color-secondary:#4a4a4a;--alt-text-color:#3a5743;--bg-color:#fff;--bg-color-secondary:#f8f9fa;--bg-color-elevated:#fff;--card-bg:#fff;--card-shadow:0 2px 8px rgba(0,0,0,.08);--card-shadow-hover:0 8px 24px rgba(0,0,0,.15);--tag-type-bg:#dc0073;--tag-language-bg:#f5b700;--tag-library-bg:#00a1e4;--border-color:#e0e0e0;--divider-color:rgba(0,0,0,.1);--link-color:#00a1e4;--link-hover-color:#0081b8;--focus-ring:0 0 0 3px rgba(0,161,228,.4);--resume-jobs-color:#f5b700;--resume-jobs-color-light:#ffd54f;--resume-jobs-gradient:linear-gradient(135deg, #f5b700 0%, #ffa726 100%);--resume-supporting-color:#00a1e4;--resume-supporting-color-light:#42b8f0;--resume-supporting-gradient:linear-gradient(135deg, #00a1e4 0%, #0288d1 100%);--resume-education-color:#dc0073;--resume-education-color-light:#e91e8c;--resume-education-gradient:linear-gradient(135deg, #dc0073 0%, #c2185b 100%);--footer-bg:var(--bg-color-secondary);--footer-text:var(--text-color-secondary)}[data-theme=dark]{--header-color-home:#7a96e6;--header-color-home-gradient:linear-gradient(135deg, #7a96e6 0%, #6780cc 100%);--header-color-projects:#e63e23;--header-color-projects-gradient:linear-gradient(135deg, #e63e23 0%, #cc351d 100%);--header-color-resume:#a8e6b3;--header-color-resume-gradient:linear-gradient(135deg, #a8e6b3 0%, #8fcc99 100%);--header-text-color:#f0f0f0;--header-overlay:rgba(0,0,0,.3);--header-overlay-hover:rgba(0,0,0,.45);--text-color:#e8e8e8;--text-color-secondary:#b0b0b0;--alt-text-color:#8fc199;--bg-color:#1a1a1a;--bg-color-secondary:#242424;--bg-color-elevated:#2a2a2a;--card-bg:#252525;--card-shadow:0 2px 8px rgba(0,0,0,.4);--card-shadow-hover:0 8px 24px rgba(0,0,0,.6);--tag-type-bg:#e01a7a;--tag-language-bg:#ffc320;--tag-library-bg:#1ab0f0;--border-color:#404040;--divider-color:rgba(255,255,255,.1);--link-color:#4db8f0;--link-hover-color:#6ec5f3;--focus-ring:0 0 0 3px rgba(77,184,240,.4);--resume-jobs-color:#ffc320;--resume-jobs-color-light:#ffd966;--resume-jobs-gradient:linear-gradient(135deg, #ffc320 0%, #ffab00 100%);--resume-supporting-color:#1ab0f0;--resume-supporting-color-light:#4fc3f7;--resume-supporting-gradient:linear-gradient(135deg, #1ab0f0 0%, #0288d1 100%);--resume-education-color:#e01a7a;--resume-education-color-light:#ec407a;--resume-education-gradient:linear-gradient(135deg, #e01a7a 0%, #c2185b 100%);--footer-bg:var(--bg-color-secondary);--footer-text:var(--text-color-secondary)}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media only screen{html,body{width:100%;height:100%;color:var(--text-color);background-color:var(--bg-color);margin:0;padding:0;transition:background-color .3s,color .3s;overflow:hidden}.container{grid-template:"header""scrollable"1fr/100%;gap:0;width:100vw;max-width:100%;height:100vh;display:grid;overflow-x:hidden}.container header{z-index:100;grid-area:header;position:relative}.container #main-content{grid-area:scrollable;max-width:100%;min-height:0;overflow-x:hidden;overflow-y:auto}.container #main-content article{max-width:100%}.container #main-content footer{flex-shrink:0}}*{box-sizing:border-box;font-family:Titilium,sans-serif}a{color:var(--link-color);font-weight:500;text-decoration:none;transition:color .2s,text-shadow .2s}a:hover{color:var(--link-hover-color);text-shadow:0 0 8px rgba(255,255,255,.15)}a:focus-visible{box-shadow:var(--focus-ring), 0 0 8px 1px rgba(255,255,255,.2);border-radius:2px;outline:none}.shift-right-enter-active,.shift-right-leave-active,.shift-left-enter-active,.shift-left-leave-active{transition:transform .4s,opacity .4s,filter .4s}.shift-right-enter-active,.shift-left-enter-active{transition-timing-function:cubic-bezier(.16,1,.3,1)}.shift-right-leave-active,.shift-left-leave-active{transition-timing-function:cubic-bezier(.7,0,.84,0)}.shift-right-enter-from{opacity:0;filter:blur(8px);transform:translate(100%)scale(.95)}.shift-right-leave-to{opacity:0;filter:blur(4px);transform:translate(-30%)scale(.98)}.shift-left-enter-from{opacity:0;filter:blur(8px);transform:translate(-100%)scale(.95)}.shift-left-leave-to{opacity:0;filter:blur(4px);transform:translate(30%)scale(.98)}@media (prefers-reduced-motion:reduce){.shift-right-enter-from,.shift-right-leave-to,.shift-left-enter-from,.shift-left-leave-to{filter:none;transform:none}}.error-boundary[data-v-78890f03]{--bg:#1a1a1a;--text:#e8e8e8;--accent-r:255;--accent-g:75;--accent-b:43;--button-bg:#2a2a2a;width:100%;min-height:100vh;color:var(--text);background:var(--bg);justify-content:center;align-items:center;padding:20px;font-family:Titilium,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex}.error-boundary[data-theme=light][data-v-78890f03]{--bg:#fff;--text:#1a1a1a;--button-bg:#f0f0f0}.error-content[data-v-78890f03]{text-align:center;max-width:500px}.error-title[data-v-78890f03]{color:rgb(var(--accent-r) var(--accent-g) var(--accent-b));text-shadow:0 0 4px rgba(255,255,255,.8), 0 0 8px rgb(var(--accent-r) var(--accent-g) var(--accent-b) / 90%), 0 0 20px rgb(var(--accent-r) var(--accent-g) var(--accent-b) / 50%), 0 0 40px rgb(var(--accent-r) var(--accent-g) var(--accent-b) / 25%);margin:0 0 16px;font-size:max(1.5rem,min(5vw,2.5rem));font-weight:700;line-height:1.2}.error-message[data-v-78890f03]{opacity:.9;margin:0 0 32px;font-size:1.1rem;line-height:1.6}.reload-button[data-v-78890f03]{color:var(--text);cursor:pointer;background:var(--button-bg);border:2px solid rgb(var(--accent-r) var(--accent-g) var(--accent-b) / 60%);border-radius:8px;padding:12px 32px;font-family:inherit;font-size:1rem;font-weight:500;transition:transform .2s,box-shadow .2s,border-color .2s}.reload-button[data-v-78890f03]:hover{border-color:rgb(var(--accent-r) var(--accent-g) var(--accent-b));box-shadow:0 0 12px rgb(var(--accent-r) var(--accent-g) var(--accent-b) / 30%);transform:translateY(-2px)}.reload-button[data-v-78890f03]:focus-visible{box-shadow:0 0 0 3px rgb(var(--accent-r) var(--accent-g) var(--accent-b) / 40%);outline:none}@media (prefers-reduced-motion:reduce){.reload-button[data-v-78890f03]{transition:none}}
