#navbar{position:fixed;min-height:60px;left:50%;transform:translate(-50%);width:100%;max-width:fit-content;z-index:1000}#navbar ul{display:flex;justify-content:center;padding:15px 30px;margin-top:30px;gap:15px;list-style-type:none;border:1px solid rgba(255,255,255,.2);background-color:#1a1a1a80;backdrop-filter:blur(100px);-webkit-backdrop-filter:blur(10px);border-radius:50px}#navbar ul li a{color:#ffffffb3;text-decoration:none;font-weight:500;transition:color .2s ease,opacity .2s ease;cursor:pointer}#navbar ul li a:hover,#navbar ul li a.active{color:#fff;opacity:1}@media(max-width:768px){#navbar{width:100%;max-width:calc(100% - 40px);padding:0;bottom:10px;left:50%;transform:translate(-50%)}#navbar ul{height:36px;flex-wrap:wrap;align-items:center;justify-content:space-around;padding:10px 20px;margin-top:20px;gap:20px;border-radius:25px}#navbar ul li a{font-size:.85rem}}@media(max-width:480px){#navbar{max-width:calc(100% - 30px)}#navbar ul{padding:10px 15px;margin-top:15px;gap:12px}#navbar ul li a{font-size:1.05rem}}#about{display:flex;flex-direction:column;justify-content:center;max-width:400px;min-height:calc(100vh - 120px);padding-top:0}#about>*{transform:translateY(-60px)}#about h1,#about h3,#about p{width:100%;max-width:400px;display:flex;flex-direction:column;text-align:left;margin:5px}#about p{max-width:400px}@media(max-width:768px){#about{min-height:100vh;padding:0 20px}#about h1{width:100%;max-width:80%}#about h2{font-size:1.75rem}#about p{font-size:.95rem}}@media(max-width:480px){#about h2{font-size:1.5rem}}#portfolio{display:flex;flex-direction:column;align-items:center;padding-bottom:300px}#portfolio h2{margin:0}#portfolio .categories{display:flex;gap:14px;margin:20px 0 30px;flex-wrap:wrap;justify-content:center}#portfolio .categories p{font-size:12px;margin:0;padding:7px 10px;border-radius:15px;border:1px solid rgba(255,255,255,.2);transition:all .2s ease}#portfolio .categories p:hover{color:#fff;border:1px solid rgba(255,255,255,.5);cursor:pointer}#portfolio .categories p.active{color:#fff;border:1px solid rgba(255,255,255,.5)}.projects-grid{display:grid;grid-template-columns:1fr 1fr 1fr;width:100%;gap:25px}.project-card{display:flex;flex-direction:column;padding:25px;background-color:#1a1a1a;border-radius:8px;overflow:hidden}.project-card h3{margin:20px 0 0;color:#e7e5e4}.project-card p{margin-top:5px}.project-card img{width:100%;height:200px;object-fit:cover;border-radius:8px}.project-card .project-description{color:#fff9;font-size:14px;margin-bottom:20px}.project-card .project-card-bottom{display:flex;margin-top:auto;gap:10px}.project-card .tech-stack{width:70%;display:flex;flex-wrap:wrap;gap:10px}.project-card .tech-tag{font-size:13px;height:20px;color:#fff9;background-color:#ffffff0d;padding:7px 14px;margin-top:auto;border-radius:8px;border:1px solid rgba(255,255,255,.3)}.project-card a{margin-left:auto;margin-top:auto;background:#2563eb;color:#fff;border-radius:6px;padding:8px 20px;font-size:14px;font-weight:600;transition:background .2s ease}.project-card a:hover{background:#1e4fdb}@media(max-width:768px){.section{padding:0 20px}.section h2{font-size:1.75rem}.categories{flex-wrap:wrap;gap:10px;justify-content:center}.categories p{font-size:.9rem;padding:8px 16px}.projects-grid{grid-template-columns:1fr;gap:20px}.project-card{max-width:100%}.project-card img{height:200px}.project-description{font-size:.9rem}.tech-stack{flex-wrap:wrap}.tech-tag{font-size:.75rem;padding:4px 8px}}@media(max-width:480px){.section{padding:0 15px}.section h2{font-size:1.5rem}.categories p{font-size:.85rem;padding:6px 12px}.project-card h3{font-size:1.1rem}.project-description{font-size:.85rem}}.footer-container{color:#fff}.footer-content{position:relative;display:flex;justify-content:space-around;flex-wrap:wrap;padding:50px;background-image:url(contact_bg.jpg);background-size:cover;background-position:center;z-index:1}.footer-content:before{content:"";position:absolute;inset:0;background-color:#0a0a0a99;z-index:-1;background-image:linear-gradient(to bottom,#0a0a0ae6,#0a0a0a00 50%)}.contact-info,.social-links{margin:20px;max-width:400px}.contact-info p{margin-bottom:20px;line-height:1.6}.email-link{color:#fff;text-decoration:none;font-weight:700;font-size:1.1rem;display:inline-block;padding:8px 15px;border:1px solid #2563EB;border-radius:5px;transition:background-color .3s}.email-link:hover{background-color:#2563eb;color:#fff}.social-links ul{list-style:none;padding:0}.social-links li{margin-bottom:10px}.social-links a{color:#fff;text-decoration:none;transition:color .3s}.social-links a:hover{color:#2563eb}.copyright p{color:#8d8d8d;margin-top:0;font-size:.9rem;border-top:1px solid #272727;padding-top:15px;text-align:center}@media(max-width:768px){footer{padding:30px 20px;flex-direction:column;gap:20px;text-align:center}.footer-content{padding:0}.footer-links{flex-direction:column;gap:15px}.footer-social{justify-content:center}}.section.blog-page{min-height:100vh;max-width:900px}.blog-header{margin:40px 0 24px}.blog-title{margin:0;font-size:clamp(2rem,3.2vw,3rem);letter-spacing:-.02em}.blog-subtitle{margin:10px 0 0;color:#ffffffad}.blog-grid{display:flex;flex-direction:column;gap:16px;margin-top:40px}.blog-grid>a{color:inherit;text-decoration:none}.post-card{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:12px 16px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#60a5fa0d;transition:border-color ease,background ease;position:relative;overflow:hidden}.post-card:before{content:"";position:absolute;inset:0;background:radial-gradient(700px circle at 50% 50%,rgba(168,85,247,.1),transparent 80%);opacity:0;transition:opacity .3s ease;pointer-events:none}.blog-grid>a:hover .post-card:before{opacity:1}.post-card h2{text-align:left;font-size:1rem;line-height:1.25;letter-spacing:-.01em}.post-meta time{color:#ffffff7a}.post-cta{margin-top:auto;display:inline-flex;gap:8px;align-items:center;font-weight:600;color:#ffffffd9}@media(max-width:900px){.blog-grid>a{grid-column:span 12}}@media(max-width:480px){.post-card{padding:16px 14px 14px}.post-card h2{font-size:1.1rem}}.section.blog-post{min-height:100vh;max-width:900px;margin-bottom:100px}.blog-post-header{margin-bottom:80px}.blog-post-title{margin:10px 0;text-align:center;line-height:1.2;letter-spacing:-.03em;text-wrap:balance}.blog-post-meta{margin-top:40px;text-align:center;color:#ffffff8c;font-size:.95rem}.blog-article{padding-top:40px;border-top:1px solid #ffffff35}.blog-article a{color:#60a5faf2;text-decoration:underline;text-decoration-color:#60a5fa59;text-underline-offset:3px}.blog-article a:hover{text-decoration-color:#60a5fab3}.blog-article p{font-size:16px;color:#ffffffc2;margin-top:12px}.blog-article h2,.blog-article h3,.blog-article h4,.blog-article h5,.blog-article h6{margin-top:48px;margin-bottom:0;text-wrap:balance}.blog-article h1{font-size:2rem;line-height:1.15;color:#ffffffeb}.blog-article h2{font-size:1.65rem;line-height:1.2;color:#ffffffeb}.blog-article h3{font-size:1.35rem;line-height:1.25;color:#ffffffeb}.blog-article h4{font-size:1.15rem;line-height:1.3;color:#ffffffeb}.blog-article h5{font-size:1.05rem;line-height:1.35;color:#ffffffeb}.blog-article h6{font-size:.95rem;line-height:1.4;color:#ffffffeb}.blog-article ul,.blog-article ol{margin:0 0 1.05em}.blog-article li{margin:.35em 0;color:#ffffffd6}.blog-article blockquote{margin:1.35em 0;padding:12px 14px;border-left:3px solid rgba(96,165,250,.8);background:#60a5fa14;color:#ffffffe0;border-radius:12px}.blog-article code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.92em;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:8px}.blog-article pre{padding:14px;overflow:auto;border-radius:12px;background:#0006;border:1px solid rgba(255,255,255,.1);margin:1.2em 0}.blog-article pre code{background:transparent;border:0;padding:0}.pt-code{margin:1.2em 0}.pt-code pre[class*=language-]{background:#00000073}.pt-code pre code{white-space:pre-wrap;overflow-wrap:anywhere}.pt-image{margin:1.2em 0}.pt-image img{width:100%;height:auto;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.pt-image figcaption{margin-top:8px;font-size:.9rem;color:#fff9;text-align:center}.skeleton-card{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:18px 16px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#ffffff08;position:relative;overflow:hidden}.skeleton-title{height:18px;width:60%;border-radius:6px;background:linear-gradient(90deg,#ffffff0a 25%,#ffffff1f,#ffffff0a 75%);background-size:200% 100%;animation:skeleton-shimmer 1.6s ease-in-out infinite}.skeleton-meta{height:14px;width:80px;border-radius:6px;background:linear-gradient(90deg,#ffffff0a 25%,#ffffff1f,#ffffff0a 75%);background-size:200% 100%;animation:skeleton-shimmer 1.6s ease-in-out infinite}.blog-post-skeleton{display:flex;flex-direction:column;gap:16px;margin-top:40px}.skeleton-line{border-radius:6px;background:linear-gradient(90deg,#ffffff0a 25%,#ffffff1f,#ffffff0a 75%);background-size:200% 100%;animation:skeleton-shimmer 1.6s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.blog-state-msg{text-align:center;padding:60px 20px;color:#ffffffa6}.blog-state-msg button{margin-top:16px;background:#2563eb;color:#fff;border:none;padding:8px 18px;border-radius:8px;cursor:pointer;font-weight:500;transition:background .2s ease}.blog-state-msg button:hover{background:#1d4ed8}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}:root{line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#07070a;background-image:radial-gradient(900px circle at 20% 10%,rgba(59,130,246,.12),transparent 55%),radial-gradient(800px circle at 80% 30%,rgba(168,85,247,.1),transparent 60%),radial-gradient(700px circle at 50% 90%,rgba(16,185,129,.06),transparent 55%),linear-gradient(180deg,#060609,#0a0a0f 40%,#07070a);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}#portfolio,#contact,#about{scroll-margin-top:100px}a{font-weight:500;text-decoration:inherit}body{font-family:Inter,sans-serif;font-size:16px;line-height:1.5;margin:0;display:flex;justify-content:center;width:100%;min-width:320px;overflow-x:hidden}h1,h2,h3{font-family:Poppins,"sans-serif"}h1{font-size:3rem;font-weight:700;letter-spacing:-2px;line-height:1.1}h2{font-size:2em}h3{font-size:1.35rem}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{width:100%;max-width:100vw;overflow-x:hidden}.app-content{padding-top:120px}.section{max-width:1280px;width:100%;padding:0 50px;margin:0 auto;box-sizing:border-box}@media(max-width:768px){.section{padding:0 20px;width:100%}.app-content{padding-top:20px}}@media(max-width:480px){.section{padding:0 15px}}@media(max-width:768px){h1{font-size:2rem;letter-spacing:-1px}h2{font-size:1.5rem}h3{font-size:1.1rem}body{font-size:15px}}@media(max-width:480px){h1{font-size:1.75rem}h2{font-size:1.35rem}body{font-size:14px}}
