@import"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&family=Playfair+Display:wght@400..900&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@100..900&family=JetBrains+Mono:wght@100..800&display=swap";body{position:relative;min-height:100vh;height:fit-content;overflow-x:hidden}.App{width:100%;min-height:100vh;transition:all .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,var(--background-color) 0%,var(--background-secondary) 100%);color:var(--primary-text-color);position:relative}.App:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(120,119,198,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,119,198,.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(120,219,255,.1) 0%,transparent 50%);pointer-events:none;z-index:-1}[data-theme=dark] .App:before{background:radial-gradient(circle at 20% 80%,rgba(99,102,241,.15) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(139,92,246,.15) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(96,165,250,.15) 0%,transparent 50%)}a{text-decoration:none;color:var(--link-color);font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}.projects{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:2rem;padding:2rem 0}footer{padding:3rem 2rem 2rem;display:flex;justify-content:center;align-items:center;border-top:1px solid var(--post-border);gap:2rem;background:rgba(var(--background-secondary),.8);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);margin-top:4rem;position:relative}footer:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:100px;height:1px;background:linear-gradient(90deg,transparent,var(--accent-color),transparent)}footer p{font-size:.875rem;color:var(--secondary-text-color);font-weight:400}footer img{width:2rem;height:2rem;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:var(--border-radius-sm);padding:.25rem;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}footer img:hover{transform:translateY(-4px) scale(1.1);box-shadow:0 8px 25px var(--shadow-color);background:var(--accent-color)}footer a{display:flex;align-items:center;justify-content:center}footer a:after{display:none}@media only screen and (max-width: 768px){footer{flex-direction:column;gap:1.5rem;padding:2rem 1rem 1.5rem}.projects{grid-template-columns:1fr;gap:1.5rem;padding:1rem 0}}@media only screen and (max-width: 480px){.projects{grid-template-columns:1fr}footer{padding:1.5rem 1rem}}nav{padding:1rem 2rem;border-bottom:1px solid var(--post-border);position:sticky;top:0;z-index:100;background:rgba(var(--background-color),.85);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:all .3s cubic-bezier(.4,0,.2,1)}nav:before{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:200px;height:1px;background:linear-gradient(90deg,transparent,var(--accent-color),transparent);opacity:.6}nav ul{padding:0;display:flex;justify-content:center;align-items:center;gap:3rem;list-style:none;max-width:1200px;margin:0 auto}nav li{list-style:none;position:relative}nav a{font-size:1.125rem;font-weight:500;color:var(--primary-text-color);padding:.75rem 1.5rem;border-radius:var(--border-radius);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;display:inline-block;text-transform:uppercase;letter-spacing:.5px;font-size:.875rem}nav a:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--border-radius);background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));opacity:0;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:-1}nav a:after{display:none}nav a:hover{color:#fff;transform:translateY(-2px);box-shadow:0 8px 25px var(--shadow-hover)}nav a:hover:before{opacity:1}nav a.active{color:#fff;background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));box-shadow:0 4px 15px var(--shadow-color)}@media only screen and (max-width: 768px){nav{padding:1rem}nav ul{gap:1.5rem;flex-wrap:wrap;justify-content:center}nav a{font-size:.8125rem;padding:.625rem 1.25rem}}@media only screen and (max-width: 480px){nav ul{flex-direction:column;gap:1rem;padding:.5rem 0}nav a{width:200px;text-align:center;font-size:.875rem}}nav a[href^="mailto:"]{background:linear-gradient(135deg,var(--success-color),#059669);color:#fff;box-shadow:0 2px 8px #10b9814d}nav a[href^="mailto:"]:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 8px 25px #10b98166}nav a[href^="mailto:"]:before{display:none}.switch-super-container{display:flex;justify-content:flex-end;align-items:center;width:100%;padding:1rem 2rem;position:relative}.switch-container{position:relative;display:flex;align-items:center;gap:.75rem}.switch{opacity:0;position:absolute;pointer-events:none}.switch+label{display:flex;align-items:center;font-size:1.25rem;cursor:pointer;color:var(--primary-text-color);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;gap:.75rem}.switch+label:before{content:"";height:1.5rem;width:2.75rem;border-radius:2rem;background:linear-gradient(135deg,var(--toggle-bg),rgba(var(--toggle-bg),.8));border:2px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:inset 0 2px 4px #0000001a,0 2px 8px var(--shadow-color)}.switch+label:after{content:"";height:1.25rem;width:1.25rem;border-radius:50%;background:linear-gradient(135deg,var(--toggle-fg),rgba(var(--toggle-fg),.9));position:absolute;left:.125rem;top:50%;transform:translateY(-50%);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0003,0 0 0 1px #ffffff1a}.switch:checked+label:before{background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));border-color:#ffffff4d;box-shadow:inset 0 2px 4px #0000001a,0 2px 12px var(--shadow-hover)}.switch:checked+label:after{transform:translateY(-50%) translate(1.25rem);background:linear-gradient(135deg,#fff,#f8fafc);box-shadow:0 4px 8px #0000004d,0 0 0 1px #fff3}.switch+label:hover:before{transform:scale(1.05);box-shadow:inset 0 2px 4px #0000001a,0 4px 12px var(--shadow-hover)}.switch:checked+label:hover:before{background:linear-gradient(135deg,var(--accent-hover),var(--accent-color))}.switch+label{font-size:1.5rem;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 2px 4px var(--shadow-color))}.switch:checked+label{filter:drop-shadow(0 2px 8px rgba(255,193,7,.3))}.switch:focus+label:before{outline:2px solid var(--accent-color);outline-offset:2px}@media only screen and (max-width: 768px){.switch-super-container{padding:.75rem 1rem}.switch+label{font-size:1.125rem}.switch+label:before{height:1.25rem;width:2.25rem}.switch+label:after{height:1rem;width:1rem}.switch:checked+label:after{transform:translateY(-50%) translate(1rem)}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#1e1e1e;color:#dcdcdc}.hljs-keyword,.hljs-literal,.hljs-symbol,.hljs-name{color:#569cd6}.hljs-link{color:#569cd6;text-decoration:underline}.hljs-built_in,.hljs-type{color:#4ec9b0}.hljs-number,.hljs-class{color:#b8d7a3}.hljs-string,.hljs-meta .hljs-string{color:#d69d85}.hljs-regexp,.hljs-template-tag{color:#9a5334}.hljs-subst,.hljs-function,.hljs-title,.hljs-params,.hljs-formula{color:#dcdcdc}.hljs-comment,.hljs-quote{color:#57a64a;font-style:italic}.hljs-doctag{color:#608b4e}.hljs-meta,.hljs-meta .hljs-keyword,.hljs-tag{color:#9b9b9b}.hljs-variable,.hljs-template-variable{color:#bd63c5}.hljs-attr,.hljs-attribute{color:#9cdcfe}.hljs-section{color:gold}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-bullet,.hljs-selector-tag,.hljs-selector-id,.hljs-selector-class,.hljs-selector-attr,.hljs-selector-pseudo{color:#d7ba7d}.hljs-addition{background-color:#144212;display:inline-block;width:100%}.hljs-deletion{background-color:#600;display:inline-block;width:100%}h1{padding-top:1em;text-align:center}.posts{display:flex;flex-direction:column;align-items:center;min-height:70vh}.loading{font-size:2em;color:var(--secondary-text-color);margin-top:2em}.post{margin:2em 0;padding:1em;border-bottom:1px solid var(--post-border);width:50%;min-width:30em}.post:last-child{border-bottom:none}pre{padding:1em;overflow-x:auto}code{font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.5;border-radius:5px}:not(pre)>code{background-color:var(--bg-code);padding:2px 4px;border-radius:3px;color:#e83e8c}p,code{word-break:break-word}.container{max-width:800px;margin:0 auto;padding:2em}.blog-container a:hover{color:var(--accent-hover)}.blog-container a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--accent-color),var(--accent-hover));transition:width .3s cubic-bezier(.4,0,.2,1)}.blog-container a:hover:after{width:100%}@media only screen and (max-width: 480px){.post{min-width:70%}}.errorPage{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:space-evenly;gap:5em}.errorPage img{width:8vw;animation:orbit infinite ease-in-out 6s;position:absolute;top:35%}.error-container{position:relative}.error-container h1{position:relative;z-index:2;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}@keyframes orbit{0%{left:-50%;z-index:1;scale:.7;transform:translateY(-50%)}25%{scale:.3;transform:translate(-100%,-50%)}50%{left:120%;z-index:1}50.001%{z-index:3}75%{scale:1}to{left:-50%;transform:translateY(-50%);z-index:3;scale:.72}}.error-message{color:red;font-size:12px;margin-top:-10px;margin-bottom:10px}@media only screen and (max-device-width: 768px){aside{min-width:30vw}.newConv input,.newConv button{min-width:100%}}.card{display:flex;flex-direction:column;width:100%;max-width:420px;height:450px;background:var(--background-color);border:1px solid var(--post-border);border-radius:var(--border-radius);box-shadow:0 4px 12px var(--shadow-color);cursor:pointer;transition:all .3s ease;overflow:hidden}.closed:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--shadow-hover);border-color:var(--accent-color)}.card h3{padding:1.5rem 1.5rem 1rem;font-size:1.375rem;font-weight:600;color:var(--primary-text-color);text-align:center;margin:0}.card img{width:calc(100% - 2rem);height:200px;object-fit:cover;border-radius:var(--border-radius-sm);margin:0 1rem}.card p{padding:1rem 1.5rem;color:var(--secondary-text-color);line-height:1.5;flex-grow:1;margin:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.card h5{padding:1.5rem 1.5rem 1rem;font-size:.8rem;font-weight:300;color:var(--primary-text-color);align-self:end}.open{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:80vw;height:80vh;max-width:800px;background:var(--background-color);border:1px solid var(--post-border);border-radius:var(--border-radius);box-shadow:0 20px 60px #0000004d;z-index:1000;padding:2rem;overflow-y:auto;opacity:0;visibility:hidden;transition:all .3s ease;gap:20px}.show{opacity:1;visibility:visible;cursor:default}.show button{position:absolute;top:1rem;right:1rem;width:2rem;height:2rem;border:none;background:var(--error-color);color:#fff;border-radius:50%;cursor:pointer;font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.show button:hover{background:#dc2626;transform:scale(1.1)}.open h3{font-size:2rem;color:var(--primary-text-color)}.open img{width:100%;height:auto;object-fit:cover;border-radius:var(--border-radius-sm)}.open p{overflow:auto;line-height:1.5;color:var(--secondary-text-color)}.tech-stack{font-weight:600;color:var(--primary-text-color);background:rgba(var(--accent-color),.1);padding:.75rem 1rem;border-radius:var(--border-radius-sm);border-left:4px solid var(--accent-color)}.links{display:flex;gap:1rem}.links a{padding:.75rem 1.5rem;background:var(--accent-color);color:#fff;text-decoration:none;border-radius:var(--border-radius-sm);font-weight:500;transition:all .2s ease}.links a:hover{background:var(--accent-hover);transform:translateY(-1px)}.links a:first-child{background:var(--success-color)}.links a:first-child:hover{background:#059669}* Backdrop blur effect */ body:has(.open) > #root{filter:blur(8px);pointer-events:none}body:has(.open):before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999}@media (max-width: 768px){.card{max-width:100%;height:400px}.card img{height:160px}.open{width:90vw;height:85vh;padding:1.5rem}.open h3{font-size:1.5rem;margin-right:2rem}.links{flex-direction:column}}@media (max-width: 480px){.card{height:350px}.card h3{font-size:1.25rem;padding:1rem}.card img{height:140px}.open{width:95vw;height:95vh;padding:1rem}.open p{line-height:1.3}.show button{top:.5rem;right:.5rem;width:1.75rem;height:1.75rem;font-size:.875rem}}main{padding:4rem 2rem;max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:6rem}.hero{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;min-height:60vh;position:relative}.hero:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:300px;height:300px;background:radial-gradient(circle,rgba(99,102,241,.1) 0%,transparent 70%);border-radius:50%;z-index:-1}.hero h1{font-family:Playfair Display,serif;font-weight:700;font-size:clamp(3rem,8vw,5rem);line-height:1.1;background:linear-gradient(135deg,var(--primary-text-color),var(--accent-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem}.hero article{display:flex;flex-direction:column;gap:2rem}.hero h2{font-size:2.5rem;font-weight:600;color:var(--primary-text-color);margin-bottom:1rem}.hero p{font-size:1.25rem;line-height:1.7;color:var(--secondary-text-color);max-width:500px}fieldset{border:1px solid var(--post-border);border-radius:var(--border-radius);padding:3rem 2rem;background:rgba(var(--background-secondary),.5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}fieldset:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent-color),transparent)}legend{font-size:1.5rem;font-weight:600;color:var(--primary-text-color);padding:0 2rem;background:var(--background-color);border-radius:var(--border-radius-sm);border:1px solid var(--post-border)}.tech{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;padding:2rem 0;justify-items:center}.tech p{font-size:1.5rem;font-weight:600;cursor:pointer;padding:1.5rem 2rem;border-radius:var(--border-radius);background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.tech p:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,var(--shine-overlay),transparent);transition:left .6s cubic-bezier(.4,0,.2,1)}.tech p:hover:before{left:100%}.tech p:hover{transform:translateY(-8px) scale(1.05);box-shadow:0 20px 40px var(--shadow-hover)}.ruby:hover{background:linear-gradient(135deg,#c00,#e60c0c);color:#fff;box-shadow:0 20px 40px #cc00004d}.javascript:hover{background:linear-gradient(135deg,#f7df1e,#ffd000);color:#333;box-shadow:0 20px 40px #f7df1e4d}.react:hover{background:linear-gradient(135deg,#61dafb,#21d4fd);color:#333;box-shadow:0 20px 40px #61dafb4d}@media only screen and (max-width: 768px){main{padding:2rem 1rem;gap:4rem}.hero{grid-template-columns:1fr;gap:3rem;text-align:center;min-height:auto}.hero h1{font-size:clamp(2.5rem,10vw,4rem)}.hero h2{font-size:2rem}.hero p{font-size:1.125rem;max-width:none}fieldset{padding:2rem 1rem}.tech{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.tech p{font-size:1.25rem;padding:1rem 1.5rem}.projects{grid-template-columns:1fr;gap:1.5rem}}@media only screen and (max-width: 480px){main{padding:1rem .5rem}.hero h2{font-size:1.75rem}.tech{grid-template-columns:1fr 1fr}legend{font-size:1.25rem;padding:0 1rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero,fieldset{animation:fadeInUp .8s cubic-bezier(.4,0,.2,1) forwards}fieldset:nth-child(3){animation-delay:.2s}fieldset:nth-child(4){animation-delay:.4s}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,sans-serif}:root{--background-color: #ffffff;--background-secondary: #f8fafc;--foreground-color: #3b82f6;--primary-text-color: #1e293b;--secondary-text-color: #64748b;--accent-color: #6366f1;--accent-hover: #4f46e5;--toggle-bg: #e2e8f0;--toggle-fg: #6366f1;--bg-code: #f1f5f9;--link-color: #3b82f6;--post-border: #e2e8f0;--shadow-color: rgba(0, 0, 0, .1);--shadow-hover: rgba(0, 0, 0, .15);--border-radius: 12px;--border-radius-sm: 8px;--success-color: #10b981;--warning-color: #f59e0b;--error-color: #ef4444;--shine-overlay: rgba(0, 0, 0, .1)}[data-theme=dark]{--background-color: #0f172a;--background-secondary: #1e293b;--foreground-color: #60a5fa;--primary-text-color: #f1f5f9;--secondary-text-color: #94a3b8;--accent-color: #6366f1;--accent-hover: #8b5cf6;--toggle-bg: #334155;--toggle-fg: #60a5fa;--bg-code: #1e293b;--link-color: #60a5fa;--post-border: #334155;--shadow-color: rgba(0, 0, 0, .3);--shadow-hover: rgba(0, 0, 0, .4);--success-color: #34d399;--warning-color: #fbbf24;--error-color: #f87171;--shine-overlay: rgba(255, 255, 255, .1)}body{position:relative;min-height:100vh;background:linear-gradient(135deg,var(--background-color) 0%,var(--background-secondary) 100%);transition:all .3s cubic-bezier(.4,0,.2,1)}.App{width:100%;min-height:100vh;background-color:transparent;color:var(--primary-text-color);transition:all .3s cubic-bezier(.4,0,.2,1)}a{text-decoration:none;color:var(--link-color);transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.projects{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;padding:2rem 0}footer{height:auto;padding:2rem 0;display:flex;justify-content:center;align-items:center;border-top:1px solid var(--post-border);gap:2rem;background:var(--background-secondary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-top:4rem}footer img{width:2rem;height:2rem;transition:all .2s cubic-bezier(.4,0,.2,1);border-radius:var(--border-radius-sm)}footer img:hover{transform:translateY(-2px) scale(1.1);filter:brightness(1.2)}footer p{font-size:.875rem;color:var(--secondary-text-color)}@media only screen and (max-width: 768px){.projects{grid-template-columns:1fr;gap:1.5rem}footer{flex-direction:column;gap:1rem;padding:1.5rem 0}}@media only screen and (max-width: 480px){.projects{grid-template-columns:1fr;padding:1rem 0}}
