:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}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}}.body{margin:0;font-family:Arial,Helvetica,sans-serif;background:linear-gradient(135deg,#f8fafc,#e2e8f0)}.login-container{height:100vh;width:100vw;display:flex;justify-content:center;align-items:center}.login-card{background:#fff;padding:40px;width:350px;border-radius:16px;box-shadow:0 10px 30px #0000001a;text-align:center;animation:fadeIn .4s ease-in-out}.login-card h2{margin-bottom:10px}.subtitle{font-size:14px;color:#64748b;margin-bottom:25px}.form-group{text-align:left;margin-bottom:20px}.form-group label{display:block;font-size:14px;margin-bottom:6px;color:#334155}.form-group input{width:100%;padding:10px;border-radius:8px;border:1px solid #cbd5e1;font-size:14px;transition:border .2s ease}.form-group input:focus{outline:none;border-color:#3b82f6}.password-wrapper{display:flex}.password-wrapper input{flex:1}.toggle-btn{margin-left:8px;padding:10px;border:none;background:#e2e8f0;border-radius:8px;cursor:pointer;font-size:12px}.toggle-btn:hover{background:#cbd5e1}.error{color:#ef4444;font-size:13px;margin-bottom:15px}.login-btn{width:100%;padding:12px;border:none;border-radius:8px;background:#3b82f6;color:#fff;font-size:15px;cursor:pointer;transition:background .2s ease}.login-btn:hover{background:#2563eb}.login-btn:disabled{background:#93c5fd;cursor:not-allowed}.guest-text{margin-top:20px;font-size:13px;color:#64748b}.guest-text{color:#3b82f6;text-decoration:none}.guest-text:hover{text-decoration:underline;cursor:pointer;-webkit-user-select:none;user-select:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.spinner{display:flex;justify-content:center;align-items:center;height:100%}.spinner-child{width:50px;height:50px;border:6px solid #eee;border-top:6px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin:50px auto}.application{height:100vh;background:#f7f8fc;width:100vw}.header{width:100%;height:70px;background:#fff;border-bottom:1px solid #eee;box-shadow:0 4px 20px #0000000d;border-radius:15px}.header-content{display:flex;justify-content:space-between;align-items:center;padding:18px 40px}.logo{font-size:22px;font-weight:600;color:#222;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.nav{display:flex;gap:32px}.nav-link{text-decoration:none;color:#444;font-size:16px;font-weight:500;position:relative;transition:.2s ease}.nav-link:after{content:"";position:absolute;left:0;bottom:-6px;width:0%;height:2px;background:#4f46e5;transition:.25s ease}.nav-link:hover{color:#000}.nav-link:hover:after{width:100%}.about-page{background-color:#fafafa;min-height:100vh}.about-content{max-width:760px;margin:0 auto;padding:60px 20px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#333}.about-body{height:calc(100vh - 70px);overflow-y:auto}.about-hero{margin-bottom:40px;text-align:center}.about-hero h1{font-size:2.8rem;font-weight:800;color:#111;margin-bottom:10px;letter-spacing:-.5px}.about-hero .subtitle{font-size:1.2rem;color:#666;font-weight:500}.about-details p{font-size:1.1rem;line-height:1.8;color:#4a4a4a;margin-bottom:24px}.highlight-box{background-color:#fff;border:1px solid #eaeaea;border-radius:12px;padding:30px;margin:40px 0;box-shadow:0 4px 6px #00000005}.highlight-box h3{font-size:1.3rem;color:#111;margin-top:0;margin-bottom:15px}.highlight-box ul{padding-left:20px;margin-bottom:0}.highlight-box li{font-size:1.05rem;line-height:1.6;color:#4a4a4a;margin-bottom:10px}.skills-section{margin:40px 0}.skills-section h3{font-size:1.2rem;color:#111;margin-bottom:20px;text-align:center}.skills-grid{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.skills-grid span{background-color:#f1f3f5;color:#495057;padding:8px 16px;border-radius:20px;font-size:.95rem;font-weight:600;border:1px solid #e9ecef;transition:all .2s ease}.skills-grid span:hover{background-color:#e9ecef;transform:translateY(-2px)}.cv-download-section{text-align:center;margin-top:50px;padding-top:40px;border-top:1px solid #eaeaea}.btn-download{display:inline-flex;align-items:center;gap:10px;background-color:#111;color:#fff;padding:14px 28px;border-radius:8px;font-size:1.1rem;font-weight:600;text-decoration:none;transition:background-color .2s ease,transform .2s ease}.btn-download:hover{background-color:#333;transform:translateY(-2px);color:#fff}@media(max-width:600px){.about-hero h1{font-size:2.2rem}.about-content{padding:40px 20px}.highlight-box{padding:20px}}.article-body{display:flex;height:100%;flex-direction:column;overflow-y:hidden}.article-body-parent{display:flex;justify-content:center;align-items:center;height:100%}.article-body-content{display:flex;background:#a8adaf;width:50vw;height:calc(100vh - 70px);box-shadow:0 19px 25px #0000004d;align-items:center;flex-direction:column;overflow-y:auto;overflow-x:hidden}.article-body-content-page-last{margin-bottom:15px}.article-body-content-page{display:flex;flex-direction:column;width:95%;height:auto;margin-left:15px;margin-top:15px;margin-right:15px;background-color:#fff;border-radius:8px;box-shadow:0 10px 25px #0000004d}.article-body-content-page-title{margin:15px;font-size:21px;font-weight:800;background-color:#000;-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:1px}.article-body-content-page-description{margin-top:5px;margin-bottom:5px;margin-left:15px;font-size:15px;font-weight:500;color:#6d6d6d;letter-spacing:1px}.article-body-content-page-tag{margin:15px}.article-tag{display:inline-flex;padding:5px;margin-right:5px;background:#f8fafc;border-radius:8px}.article-tag:hover{background:linear-gradient(5deg,#f8fafc,#e2e8f0);cursor:pointer}.article-tag-link{display:flex;color:inherit}.article-tag-img{width:25px;height:25px;margin-right:5px}.article-page-buffer{display:flex;height:100%;box-shadow:0 19px 25px #0000004d;justify-content:center;overflow-y:auto}.article-page-buffer-content{max-width:1050px}.article-page-buffer-iframe{width:1050px;height:100%;box-shadow:0 10px 30px #0000001a;border:none}.projects{display:flex;margin:10px;height:100%;width:100%}.projects-children{display:flex;background-color:#fff;height:280px;width:280px;box-shadow:0 10px 30px #0000001a;flex-direction:column;align-items:center;border-radius:8px;transition:all .4s ease;margin:10px}.projects-children-description{font-size:21px;font-weight:800;-webkit-background-clip:text;margin:10px}.projects-children-image{height:140px;width:140px;border:2px solid black;border-radius:8px}.projects-children:hover{cursor:pointer;background:linear-gradient(90deg,#4facfe,#00f2fe)}.project-body{display:flex;height:100%;flex-direction:column}.project-body-component{height:100%}*{margin:0;padding:0;box-sizing:border-box}.notfound-container{font-family:Roboto,sans-serif;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;height:100vh;width:100vw;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);color:#333;animation:fadeIn 1s ease-in-out}.notfound-container h1{font-size:10rem;font-weight:700;color:#ff6b6b;animation:pulse 2s infinite}.notfound-container p{font-size:1.5rem;margin-bottom:30px;color:#555}.home-btn{display:inline-block;padding:12px 30px;font-size:1rem;color:#fff;background-color:#6c63ff;text-decoration:none;border-radius:30px;transition:all .3s ease}.home-btn:hover{background-color:#5952d4;transform:translateY(-3px)}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.notfound-container h1{font-size:6rem}.notfound-container p{font-size:1.2rem}}
