.nav__list{display:flex;margin-right:1.5em}.nav__list-item{margin-left:1.5em}.app .nav__hamburger{display:none}.nav__theme{margin-top:.4em}@media (max-width:600px){.nav__list{align-items:center;display:none;flex-direction:column;height:100%;inset:0;justify-content:center;position:fixed;width:100%;z-index:2}.nav__list-item{margin:.5em 0}.app .nav__hamburger{display:flex;margin-left:.8em;z-index:2}}ul li{list-style:none;margin:0;padding:0}.dropdown{position:relative}.dropdown-menu{border-radius:.5rem;display:none;left:0;list-style:none;min-width:100px;padding:.5rem 0;position:absolute;top:100%;z-index:1000}.dropdown-menu li{padding:.5rem 1rem}.dropdown-menu li a{color:inherit;display:block;text-decoration:none}.dropdown:hover .dropdown-menu{display:block}.header{height:8em;justify-content:space-between;margin:0 auto;max-width:1100px;width:95%}@media (max-width:600px){.header{height:6em}}.about{flex-direction:column;margin-top:3em}.about__name{color:var(--clr-primary)}.about__role{margin-top:1.2em}.about__desc{font-size:1rem;max-width:600px}.about__contact,.about__desc{margin-top:2.4em}.about .link--icon{margin-right:.8em}.about .btn--outline{margin-right:1em}@media (max-width:600px){.app .about{align-items:flex-start;margin-top:2em}}.about__header{align-items:center;display:flex;gap:1.5rem;margin-bottom:1.5rem}.about__picture{border-radius:70%;box-shadow:0 4px 10px rgba(0,0,0,.15);height:180px;object-fit:cover;width:180px}.about__intro{display:flex;flex-direction:column}.project{box-shadow:var(--shadow);margin:0 auto;padding:2em;text-align:center;transition:transform .2s linear}.project:hover{transform:translateY(-7px)}.project__description{margin-top:1em}.project__stack{display:flex;flex-wrap:wrap;justify-content:center;margin:1.2em 0}.project__stack-item{color:var(--clr-fg-alt);font-size:.8rem;font-weight:500;margin:.5em}.project .link--icon{margin-left:.5em}.projects__grid{grid-gap:2em;display:grid;grid-template-columns:repeat(auto-fit,minmax(18em,1fr));margin:0 auto;max-width:1100px}.skills__list{justify-content:center;margin:0 auto;max-width:100%;width:95%}.skills__list-item{margin:.5em}.skills__grid{display:flex;flex-direction:column;gap:.5rem}.skills__row{align-items:center;border-bottom:1px solid;display:flex;justify-content:flex-start;padding-bottom:1rem}.skills__category{color:#38bdf8;flex:0 0 200px;font-weight:600;padding-right:1.5rem;text-align:right}.skills__items{flex:1 1}.skills__list{display:flex;flex-wrap:wrap;gap:.5rem}.scroll-top{background-color:initial;bottom:2em;position:fixed;right:4em}@media (max-width:900px){.scroll-top{display:none}}.contact{flex-direction:column}.footer{margin-top:4em;padding:3em 0;text-align:center}.footer__link{color:var(--clr-fg);font-size:.9rem;font-weight:600}@media (max-width:600px){.footer{margin-top:3em;padding:2em}}.blog-ul{display:block;list-style-type:disc;margin:1rem 0;padding-left:2.5rem}.blog-ul li{list-style-type:disc;margin-bottom:.5rem;padding-left:.5rem}.inline-code{background-color:#e0e0e0;border-radius:3px;color:#c7254e;font-family:monospace;padding:.2rem .4rem}.books-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.1);margin-top:1rem;padding:1.5rem}.books-search{border:1px solid #ddd;border-radius:8px;font-size:1rem;margin-bottom:15px;outline:none;padding:10px 14px;transition:border .2s ease;width:100%}.books-search:focus{border-color:#4f46e5;box-shadow:0 0 0 2px rgba(79,70,229,.2)}.table-scroll-x{-webkit-overflow-scrolling:touch;overflow-x:auto}.books-table{border-collapse:collapse;min-width:100%;width:-webkit-max-content;width:max-content}.books-table td,.books-table th{word-wrap:break-word;border:1px solid #ddd;max-width:300px;padding:8px;text-align:left;vertical-align:top;white-space:normal}.books-table thead{background-color:#4f46e5;color:#fff}.books-table tbody tr:nth-child(2n){background-color:#fafafa}.books-table tbody tr:hover{background-color:#f1f1ff;cursor:pointer}.selected-row{background-color:#dbeafe!important}.no-results{color:#666;font-style:italic;padding:20px;text-align:center}.pagination{align-items:center;display:flex;justify-content:space-between;margin-top:15px}.pagination button{background:#4f46e5;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:6px 12px}.pagination button:disabled{background:#ccc;cursor:not-allowed}.books-table td a{color:#1d4ed8;text-decoration:none}.books-table td a:hover{text-decoration:underline}.blog-container{border:2px solid;border-radius:1rem;box-shadow:0 4px 12px rgba(0,0,0,.08);display:flex;flex-direction:column;font-family:Inter,sans-serif;gap:2rem;line-height:1.7;margin:2rem auto;padding:2rem}.blogpost-image{border-radius:1rem;height:300px;margin-bottom:1.5rem;overflow:hidden;width:100%}.blogpost-image img{height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.blogpost-image img:hover{transform:scale(1.05)}.blogpost-title{font-size:2.5rem;font-weight:700;margin-bottom:.5rem;text-align:center}.blogpost-meta{display:flex;font-size:.95rem;justify-content:space-between}.blogpost-author{font-weight:500}.blogpost-date{display:block;text-align:center}.blogpost-content{font-size:1.25rem;margin-bottom:2rem}.blogpost-tags{margin-bottom:2rem;text-align:center}.blogpost-tag{background-color:#e0e7ff;border-radius:.5rem;color:#4f46e5;display:inline-block;font-size:.9rem;margin-bottom:.25rem;margin-right:.5rem;padding:.25rem .6rem;text-decoration:none;transition:background-color .2s,color .2s}.blogpost-text-label{font-weight:800;margin-right:.75rem}.blogpost-tag:hover{background-color:#c7d2fe;color:#3730a3}.blogpost-back{margin-top:2rem;text-align:center}.blogpost-back a{color:#4f46e5;font-weight:500;text-decoration:none;transition:color .2s}.blogpost-back a:hover{color:#6366f1}.blogpost-notfound{color:#ef4444;font-size:1.5rem;padding:5rem;text-align:center}.blog-card{border:1px solid;border-radius:1.5rem;box-shadow:0 4px 12px rgba(0,0,0,.1);box-shadow:0 2px 4px rgba(0,0,0,.05);cursor:pointer;display:flex;flex-direction:column;margin:1rem 1rem 1.5rem;overflow:hidden;padding:1.5rem;position:relative;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease;width:100%}.blog-card h2{margin:0 0 .5rem}.blog-card:hover{box-shadow:0 15px 25px rgba(0,0,0,.25);transform:translateY(-5px) scale(1.02)}.blog-meta{display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:1rem}.summary{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;margin-bottom:1rem;overflow:hidden}.blog-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{background-color:#f0f0f0;border-radius:4px;color:#333;font-size:.8rem;padding:.2rem .6rem;text-decoration:none;transition:background-color .2s}.tag:hover{background-color:#ddd}.blogpost-divider{align-items:center;border-bottom:2px solid;display:flex;margin:1px 0;position:relative;text-align:center}.blogpost-divider:after{content:"✦🌸✦";font-size:1rem;left:50%;padding:0 .5rem;position:absolute;transform:translateX(-50%)}.career__grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit);width:100%}.career-card{border:1px solid var(--clr-primary);border-radius:.75rem;box-shadow:0 4px 12px rgba(0,0,0,.25);cursor:pointer;margin:1rem 0 1.5rem;padding:1.5rem;transition:transform .2s ease,box-shadow .3s ease}.career-card:hover{transform:translateY(-5px)}.career-header{align-items:center;display:flex;justify-content:space-between}.career-title{color:#38bdf8;font-size:1.2rem;font-weight:700}.career-company{font-size:1rem;font-weight:500;margin:.25rem 0 .75rem}.career-date{color:var(--clr-fg-alt);font-size:.9rem;font-style:italic;margin-bottom:.5rem}.career-list{display:block;list-style-type:disc!important;margin:.5rem 0 1rem;padding-left:1.5rem!important}.career-list li{display:list-item;line-height:1.5;margin-bottom:.5rem}.career-description{line-height:1.5;margin:.5rem 0 1rem}.career-skills{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.skill-tag{background:#334155;border-radius:9999px;color:#e2e8f0;font-size:.85rem;font-weight:500;padding:.35rem .75rem}.career-empty{color:#94a3b8;font-style:italic;margin:2rem 0;text-align:center}.app{background-color:var(--clr-bg);color:var(--clr-fg);display:flex;flex-direction:column;font-family:Poppins,sans-serif;line-height:1.5;min-height:100vh}.main-content{flex:1 1}.light{--clr-bg:#fcfcfc;--clr-bg-alt:#fff;--clr-fg:#555;--clr-fg-alt:#444;--clr-primary:#2978b5;--shadow:hsla(240,5%,41%,.2) 0px 7px 29px 0px}.dark{--clr-bg:#23283e;--clr-bg-alt:#2a2f4c;--clr-fg:#bdbddd;--clr-fg-alt:#cdcdff;--clr-primary:#90a0d9;--shadow:rgba(0,0,0,.16) 0px 10px 36px 0px,rgba(0,0,0,.06) 0px 0px 0px 1px}main{margin:0 auto;max-width:1100px;width:95%}.section{margin-top:5em}.section__title{margin-bottom:1em;text-align:center;text-transform:uppercase}.center{align-items:center;display:flex}.link{padding:0 0 .3em;position:relative}.link,.link:hover{color:var(--clr-primary)}.link:before{background-color:var(--clr-primary);bottom:0;content:"";display:inline;height:.2em;position:absolute;transition:width .2s ease-in;width:0}.link:focus:before,.link:hover:before{width:100%}.link--nav{font-weight:500;text-transform:lowercase}.link--icon,.link--nav{color:var(--clr-fg)}.btn{cursor:pointer;display:block;font-size:.9rem;font-weight:500;padding:.8em 1.4em;text-transform:lowercase;transition:transform .2s ease-in-out}.btn--outline{border:2px solid var(--clr-primary);color:var(--clr-primary);overflow:hidden;position:relative;z-index:1}.btn--outline:focus,.btn--outline:hover{color:var(--clr-bg)}.btn--outline:before{background-color:var(--clr-primary);bottom:0;content:"";left:0;position:absolute;right:100%;top:0;transition:right .2s ease-in-out;z-index:-1}.btn--outline:focus:before,.btn--outline:hover:before{right:0}.btn--plain{background-color:var(--clr-bg-alt);border:0;box-shadow:0 3px 3px 0 rgba(0,0,0,.15);text-transform:none}.btn--plain:hover{transform:translateY(-4px)}.btn--icon{padding:0}.btn--icon:focus,.btn--icon:hover{color:var(--clr-primary)}.btn--icon:active{transform:translateY(-5px)}@media (max-width:600px){.section{margin-top:4em}}*{background-color:inherit;border:0;box-shadow:none;box-sizing:border-box;color:inherit;font-family:inherit;font-size:inherit;margin:0;outline:0;padding:0}html{scroll-behavior:smooth}h1,h2,h3,h4{color:var(--clr-fg-alt);line-height:1.2}h1{font-size:4rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.3rem}ul{list-style-type:none}a{text-decoration:none}button{cursor:pointer}@media (max-width:900px){h1{font-size:2.6rem}}
/*# sourceMappingURL=main.10932cb0.css.map*/