:root{--bg-color: #050505;--card-bg: #0f0f0f;--text-main: #e0e0e0;--text-muted: #888888;--accent-color: #00ff9d;--accent-secondary: #00b8ff;--accent-glow: rgba(0, 255, 157, .15);--font-heading: "Syne", sans-serif;--font-body: "Inter", sans-serif;--font-mono: "JetBrains Mono", monospace;--transition-smooth: .6s cubic-bezier(.16, 1, .3, 1);--nav-bg: rgba(5, 5, 5, .8);--nav-border: rgba(255, 255, 255, .05);--input-bg: rgba(255, 255, 255, .05);--input-border: rgba(255, 255, 255, .1);--control-bg: rgba(255, 255, 255, .1);--dot-bg: rgba(255, 255, 255, .2)}body.light-mode{--bg-color: #e0f7fa;--card-bg: #ffffff;--text-main: #1a1a1a;--text-muted: #555555;--accent-color: #00bf7d;--accent-glow: rgba(0, 191, 125, .15);--nav-bg: rgba(224, 247, 250, .85);--nav-border: rgba(0, 191, 125, .1);--input-bg: rgba(255, 255, 255, .6);--input-border: rgba(0, 0, 0, .1);--control-bg: rgba(0, 0, 0, .05);--dot-bg: rgba(0, 0, 0, .2)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{background-color:var(--bg-color);color:var(--text-main);font-family:var(--font-body);overflow-x:hidden;cursor:none}a{text-decoration:none;color:inherit;cursor:none!important}button,.btn,input,select,textarea,label{cursor:none!important}ul{list-style:none}img{max-width:100%;display:block}#data-network{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;opacity:.4}.cursor-dot,.cursor-outline{position:fixed;top:0;left:0;transform:translate(-50%,-50%);border-radius:50%;z-index:9999999;pointer-events:none;display:block!important}.cursor-dot{width:8px;height:8px;background-color:var(--accent-color)}.cursor-outline{width:40px;height:40px;border:1px solid rgba(255,255,255,.3);transition:width .2s,height .2s,background-color .2s,left .1s ease-out,top .1s ease-out}body:hover .cursor-outline{opacity:1}body.hovering .cursor-outline{width:60px;height:60px;background-color:#00ff9d1a;border-color:var(--accent-color);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:700;line-height:1.1}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.section{padding:4rem 0}.btn-primary{display:inline-block;padding:1rem 2rem;background:var(--text-main);color:var(--bg-color);font-family:var(--font-heading);font-weight:600;text-transform:uppercase;letter-spacing:1px;border-radius:2rem;transition:var(--transition-fast);position:relative;overflow:hidden;z-index:1}.btn-primary:before{content:"";position:absolute;top:0;left:0;width:0%;height:100%;background:var(--accent-color);z-index:-1;transition:var(--transition-smooth)}.btn-primary:hover:before{width:100%}.btn-secondary{display:inline-block;padding:1rem 2rem;border:1px solid rgba(255,255,255,.2);color:var(--text-main);border-radius:2rem;margin-left:1rem;transition:var(--transition-fast)}.btn-secondary:hover{border-color:var(--accent-color);color:var(--accent-color)}.btn-lang{background:transparent;color:var(--text-main);border:1px solid rgba(255,255,255,.2);padding:.5rem .8rem;border-radius:.5rem;font-family:var(--font-mono);font-size:.9rem;cursor:pointer;transition:var(--transition-fast);margin-right:1rem}.btn-lang:hover{z-index:10000;transition:var(--transition-fast);background:var(--nav-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--nav-border)}.header{position:fixed;top:1.5rem;left:50%;transform:translate(-50%);width:90%;max-width:1200px;background:var(--nav-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--nav-border);border-radius:50px;z-index:1000;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 10px 30px -10px #00000080;padding:.5rem 0}.header.scrolled{width:95%}.header-container{display:flex;justify-content:space-between;align-items:center}.logo{font-family:var(--font-heading);font-size:1.5rem;font-weight:800}.logo .dot{color:var(--accent-color)}.nav-list{display:flex;gap:1.2rem}.nav-link{font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;position:relative;color:var(--text-muted);transition:var(--transition-fast);white-space:nowrap}.nav-link:hover{color:var(--text-main)}.nav-link:after{content:"";position:absolute;bottom:-5px;left:0;width:0%;height:1px;background:var(--accent-color);transition:var(--transition-fast)}.nav-link:hover:after{width:100%}.hero{min-height:100vh;height:auto;display:flex;align-items:center;justify-content:center;position:relative;overflow:visible;margin:0;padding-top:6rem;padding-bottom:2rem}.hero-container{display:grid;grid-template-columns:60% 40%;align-items:center;width:100%;gap:2rem}.hero-subtitle{display:inline-flex;align-items:center;gap:.5rem;color:var(--accent-color);font-family:var(--font-mono);margin-bottom:1rem;font-size:.9rem;padding:.5rem 1rem;background:#00ff9d1a;border-radius:2rem;border:1px solid rgba(0,255,157,.2)}.hero-title{font-size:clamp(2.5rem,4vw,3.8rem);margin-bottom:1.5rem;margin-top:0;line-height:1.25;max-width:100%}.scramble-text{display:inline-block}.hero-description{font-size:1.15rem;color:var(--text-muted);max-width:600px;margin-top:0;margin-bottom:2rem;line-height:1.7}.mobile-shape-container{display:none!important}.hero-description strong{color:var(--text-main);font-weight:500}.hero-visual{height:500px;display:flex;justify-content:center;align-items:center;perspective:1000px;position:relative;z-index:10;touch-action:none}.data-cube{width:200px;height:200px;position:relative;transform-style:preserve-3d;animation:rotateCube 15s infinite linear;cursor:grab;touch-action:none}.cube-face{position:absolute;width:200px;height:200px;background:#00ff9d0d;border:1px solid var(--accent-color);display:flex;justify-content:center;align-items:center;font-family:var(--font-mono);font-weight:700;font-size:1.5rem;color:var(--accent-color);box-shadow:0 0 20px #00ff9d1a}.front{transform:rotateY(0) translateZ(100px)}.back{transform:rotateY(180deg) translateZ(100px)}.right{transform:rotateY(90deg) translateZ(100px)}.left{transform:rotateY(-90deg) translateZ(100px)}.top{transform:rotateX(90deg) translateZ(100px)}.bottom{transform:rotateX(-90deg) translateZ(100px)}@keyframes rotateCube{0%{transform:rotateX(0) rotateY(0)}to{transform:rotateX(360deg) rotateY(360deg)}}.scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;opacity:.6}.scroll-indicator span{font-size:.8rem;text-transform:uppercase;letter-spacing:2px;font-family:var(--font-mono)}.scroll-indicator .line{width:1px;height:60px;background:linear-gradient(to bottom,var(--accent-color),transparent)}.section-header{display:flex;align-items:center;gap:2rem;margin-bottom:4rem}.section-title{font-size:3rem;white-space:nowrap}.line-separator{width:100%;height:1px;background:linear-gradient(90deg,var(--accent-color),transparent);opacity:.3}.about-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:4rem}.profile-img-container{width:180px;height:180px;float:left;margin-right:2rem;margin-bottom:1rem;perspective:1000px}.profile-flip-card{position:relative;width:100%;height:100%;text-align:center;transition:transform .8s cubic-bezier(.175,.885,.32,1.275);transform-style:preserve-3d}.profile-img-container:hover .profile-flip-card{transform:rotateY(180deg)}.profile-front,.profile-back{position:absolute;width:100%;height:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;background:transparent}#about-profile-img{width:100%;height:100%;object-fit:cover;border-radius:1.5rem!important;border:4px solid var(--accent-color)!important;box-shadow:0 0 25px #00ff9d66!important;display:block;box-sizing:border-box!important;background:var(--card-bg)}.profile-back{background:var(--card-bg);color:var(--accent-color);transform:rotateY(180deg);display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;gap:.5rem;font-weight:700;font-size:1.2rem;border-color:var(--accent-color);box-shadow:0 0 40px #00ff9d4d}.profile-back i{font-size:2rem;margin-bottom:.2rem}.profile-back:hover{background:#00ff9d1a}.about-name{font-size:2.5rem;font-weight:700;color:var(--accent-color);margin-bottom:.5rem;font-family:var(--font-heading)}.about-text .lead{font-size:1.5rem;font-family:var(--font-heading);margin-bottom:1.5rem;color:var(--text-main)}.about-text p{color:var(--text-muted);line-height:1.7;margin-bottom:2rem}.stats-grid{display:flex;gap:3rem;margin-top:3rem;border-top:1px solid rgba(255,255,255,.1);padding-top:2rem;flex-wrap:wrap}.stat-number{display:block;font-size:3rem;font-family:var(--font-mono);font-weight:700;color:var(--accent-color)}.stat-label{font-size:.9rem;color:var(--text-muted)}.certifications-preview{background:var(--card-bg);border:1px solid rgba(255,255,255,.05);border-radius:1rem;padding:2rem}.certifications-preview h3{margin-bottom:1.5rem;font-size:1.2rem;display:flex;align-items:center;gap:.5rem}.cert-list{display:flex;flex-direction:column;gap:1rem}.cert-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff08;border-radius:.5rem;transition:var(--transition-fast)}.cert-item:hover{background:#00ff9d0d;transform:translate(5px)}.cert-item i{font-size:1.5rem;color:var(--accent-secondary)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.skill-category{background:var(--card-bg);padding:2rem;border-radius:1rem;border:1px solid rgba(255,255,255,.05)}.skill-category h3{margin-bottom:1.5rem;font-size:1.2rem;display:flex;align-items:center;gap:.5rem;color:var(--text-main)}.skill-category h3 i{color:var(--accent-color)}.skill-bar-item{margin-bottom:1.2rem}.skill-info{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.9rem;font-family:var(--font-mono)}.progress-bar{width:100%;height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.progress{height:100%;background:var(--accent-color);border-radius:3px;transform:scaleX(0);transform-origin:left;transition:transform 2s cubic-bezier(.4,0,.2,1);box-shadow:0 0 8px #00ff9d66}.skill-tags-cloud{display:flex;flex-wrap:wrap;gap:.8rem}.tech-tag{padding:.5rem 1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;font-size:.85rem;font-family:var(--font-mono);transition:var(--transition-fast)}.tech-tag:hover{border-color:var(--accent-color);color:var(--accent-color);box-shadow:0 0 10px #00ff9d1a}.tech-tag.highlight{border-color:var(--accent-secondary);color:var(--accent-secondary)}.articles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.article-card{background:var(--card-bg);border:1px solid rgba(255,255,255,.05);border-radius:1.5rem;overflow:hidden;transition:var(--transition-fast);display:flex;flex-direction:column}.article-card:hover{border-color:var(--accent-color);transform:translateY(-5px);box-shadow:0 10px 30px #0000004d}.article-image{height:200px;width:100%;overflow:hidden}.article-content{padding:1.5rem;display:flex;flex-direction:column;flex-grow:1}.article-date{font-size:.8rem;color:var(--accent-color);font-family:var(--font-mono);margin-bottom:.5rem}.article-title{font-size:1.2rem;margin-bottom:.8rem;color:var(--text-main);line-height:1.3}.article-summary{font-size:.9rem;color:var(--text-muted);margin-bottom:1.5rem;flex-grow:1}.bento-content p{font-size:.9rem;color:var(--text-muted);margin-bottom:1.5rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-clamp:3}.bento-item.large .bento-content p{-webkit-line-clamp:8;line-clamp:8}.article-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--accent-secondary);font-weight:500;font-size:.9rem;transition:var(--transition-fast)}.article-link:hover{color:var(--accent-color);gap:.8rem}.bento-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:320px;gap:1.5rem}.bento-item{background:var(--card-bg);border-radius:1.5rem;position:relative;overflow:hidden;padding:2rem;display:flex;flex-direction:column;justify-content:space-between;transition:var(--transition-fast);border:1px solid rgba(255,255,255,.05)}.bento-item:hover{border-color:var(--accent-color);transform:translateY(-5px);box-shadow:0 10px 30px -10px #00000080}.bento-item.large{grid-column:span 2;grid-row:span 2}.bento-item.wide{grid-column:span 3}.bento-content{position:relative;z-index:2}.bento-tags span{font-size:.7rem;padding:.3rem .8rem;border-radius:1rem;background:#ffffff1a;margin-right:.5rem;font-family:var(--font-mono);gap:4rem}.bento-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;opacity:.6;transition:var(--transition-smooth)}.bento-bg.is-video{object-fit:cover;opacity:.4}.bento-item:hover .bento-bg{transform:scale(1.05);opacity:.3}.bento-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);z-index:1}.project-actions{margin-top:auto;display:flex;gap:1rem;z-index:3;position:relative}.btn-github,.btn-play{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:var(--text-main);font-size:.85rem;text-decoration:none;transition:var(--transition-fast);cursor:pointer;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.btn-github:hover,.btn-play:hover{background:var(--accent-color);color:#000;border-color:var(--accent-color)}body.light-mode .btn-github,body.light-mode .btn-play{background:#0000000d;border-color:#0000001a;color:var(--text-main)}.project-category-badge{font-family:var(--font-mono);font-size:.75rem;color:var(--accent-color);margin-bottom:.5rem;display:inline-block;text-transform:uppercase;letter-spacing:1px;background:#00ff9d1a;padding:.2rem .6rem;border-radius:4px;border:1px solid rgba(0,255,157,.2)}.timeline-card{background:var(--card-bg);padding:1.5rem;border-radius:1rem;border-left:3px solid var(--accent-color);margin-bottom:1.5rem;position:relative;transition:var(--transition-fast)}.timeline-card:hover{transform:translate(10px);background:#ffffff08}.timeline-year{font-family:var(--font-mono);font-size:.8rem;color:var(--accent-color);margin-bottom:.5rem;display:block}.timeline-card h4{font-size:1.1rem;margin-bottom:.3rem}@media(max-width:968px){.hero-title{font-size:3rem}.hero-container{grid-template-columns:1fr;text-align:center}.hero-visual{display:none}.hero-buttons{justify-content:center}.about-grid,.journey-grid,.contact-wrapper{grid-template-columns:1fr}.bento-grid{grid-template-columns:1fr;grid-auto-rows:auto}.bento-item.large,.bento-item.wide{grid-column:span 1;grid-row:span 1}}.bg-3{background:linear-gradient(135deg,#f90,#fc0)}.bg-4{background:linear-gradient(135deg,#7000ff,#c0f)}.project-nav-controls{display:flex;justify-content:center;align-items:center;gap:1.5rem;margin-top:2.5rem;padding:1rem}.btn-nav-project{padding:.9rem 1.8rem;background:var(--card-bg);border:1px solid var(--accent-color);color:var(--accent-color);border-radius:.75rem;cursor:pointer;transition:all .3s ease;font-size:.95rem;font-weight:500;display:flex;align-items:center;gap:.6rem;box-shadow:0 4px 15px #00ff881a}.btn-nav-project:hover:not(.disabled){background:var(--accent-color);border-color:var(--accent-color);color:#000;transform:translateY(-3px);box-shadow:0 8px 25px #00ff884d}.btn-nav-project.disabled{opacity:.2;cursor:not-allowed;border-color:#ffffff1a;color:#ffffff4d;box-shadow:none}.btn-nav-project.disabled:hover{transform:none;background:var(--card-bg)}.page-indicator{color:var(--text-muted);font-size:.95rem;font-weight:500;padding:.5rem 1rem;background:#ffffff08;border-radius:.5rem}@media(max-width:968px){.project-nav-controls{flex-direction:column;gap:1rem}.btn-nav-project{width:100%;justify-content:center}}.journey-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.column-title{font-size:1.5rem;margin-bottom:2rem;display:flex;align-items:center;gap:.8rem;color:var(--accent-secondary)}.timeline-card{background:linear-gradient(135deg,#ffffff08,#ffffff03);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:1.75rem;border-radius:16px;border:1px solid rgba(255,255,255,.08);margin-bottom:1.5rem;position:relative;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex;flex-direction:column;justify-content:space-between;min-height:220px;box-shadow:0 4px 20px #0003;overflow:hidden}.timeline-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 100%);opacity:0;transition:opacity .4s ease;pointer-events:none}.timeline-card:hover{transform:translateY(-5px) scale(1.02);border-color:var(--accent-color);box-shadow:0 15px 35px #0000004d}.timeline-card:hover:before{opacity:1}.timeline-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.25rem;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:1rem}.timeline-logo{width:56px;height:56px;flex-shrink:0;border-radius:12px;overflow:hidden;background:#0000004d;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.timeline-card:hover .timeline-logo{transform:rotate(5deg);border-color:var(--accent-color)}.timeline-logo-img{width:100%;height:100%;object-fit:cover}.timeline-initial{font-size:1.5rem;font-weight:700;color:var(--accent-color);font-family:var(--font-heading)}.timeline-info{display:flex;flex-direction:column}.timeline-year{font-family:var(--font-mono);font-size:.7rem;color:var(--accent-color);text-transform:uppercase;letter-spacing:1px;margin-bottom:.25rem;opacity:.9}.timeline-card h4{font-size:1.2rem;margin:0;color:var(--text-main);line-height:1.2;font-weight:600;font-family:var(--font-heading)}.institution{font-size:.95rem;color:var(--text-muted);font-weight:400;margin:.2rem 0 0}.desc{margin-top:.25rem;font-size:.9rem;color:var(--text-muted);line-height:1.7;opacity:.85}.timeline-actions{margin-top:1rem;display:flex;gap:.75rem;flex-wrap:wrap}.btn-timeline{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .85rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;font-size:.8rem;color:var(--text-main);text-decoration:none;transition:all .3s ease;font-weight:500}.btn-timeline:hover{background:var(--accent-color);color:#000;border-color:var(--accent-color);transform:translateY(-2px)}.btn-timeline i{font-size:.9rem}input,textarea{width:100%;padding:1rem;background:var(--control-bg);border:1px solid var(--input-border);color:var(--text-main);font-family:var(--font-body);border-radius:.5rem;transition:var(--transition-fast)}input:focus,textarea:focus{outline:none;border-color:var(--accent-color);background:var(--input-bg)}.contact-form input,.contact-form textarea{background:var(--control-bg)!important;border:1px solid var(--input-border)!important;color:var(--text-main)!important}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent-color)!important;background:var(--input-bg)!important}@media(max-width:968px){.hero-title{font-size:3rem}.hero-container{grid-template-columns:1fr;text-align:center}.hero-visual{display:none}.hero-buttons{justify-content:center}.about-grid,.journey-grid,.contact-wrapper{grid-template-columns:1fr}.bento-grid{grid-template-columns:1fr;grid-auto-rows:auto}.bento-item.large,.bento-item.wide{grid-column:span 1;grid-row:span 1}.nav-list{display:none}}.institution{font-size:.9rem;color:var(--text-muted);font-weight:500}.desc{margin-top:.8rem;font-size:.9rem;color:var(--text-muted);line-height:1.5}.contact-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.contact-text h2{font-size:3rem;margin-bottom:1.5rem}.contact-details{margin:2rem 0;display:flex;flex-direction:column;gap:1rem}.contact-link{font-size:1.1rem;display:flex;align-items:center;gap:1rem;color:var(--text-muted);transition:var(--transition-fast)}.contact-link:hover{color:var(--accent-color)}.social-links{display:flex;gap:1.5rem;margin-top:2rem}.social-links a{font-size:1.5rem;color:var(--text-main);transition:var(--transition-fast)}.social-links a:hover{color:var(--accent-color);transform:translateY(-3px)}.form-group{margin-bottom:1.5rem}input,textarea{width:100%;padding:1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);color:var(--text-main);font-family:var(--font-body);border-radius:.5rem;transition:var(--transition-fast)}input:focus,textarea:focus{outline:none;border-color:var(--accent-color);background:#ffffff0d}.footer{padding:2rem 0;text-align:center;border-top:1px solid rgba(255,255,255,.05);color:var(--text-muted);font-size:.9rem;font-family:var(--font-mono)}.footer i{color:#f06}@media(max-width:968px){.hero-title{font-size:3rem}.hero-container{grid-template-columns:1fr;text-align:center}.hero-visual{display:none}.hero-buttons{justify-content:center}.about-grid,.journey-grid,.contact-wrapper{grid-template-columns:1fr}.bento-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:auto}.bento-item{display:flex;flex-direction:column;justify-content:space-between;padding:0!important;min-height:0;overflow:hidden}.bento-content{order:1;position:relative;z-index:2;margin-bottom:.5rem;padding:1rem}.bento-bg{order:2;position:relative!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;height:150px!important;object-fit:cover!important;margin:auto 0 0!important;display:block!important;border-radius:0!important;opacity:1!important;background-color:#000;left:auto!important;right:auto!important}.bento-bg.is-video{width:calc(100% - 1px)!important;margin:auto auto 0!important;border:none!important;outline:none!important;box-shadow:none!important}.bento-bg+div{display:none!important}.bento-item.large,.bento-item.wide{grid-column:span 1;grid-row:span 1}.nav-list{display:none}}.btn-cv{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;padding:1rem 2.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);color:var(--text-main);font-family:var(--font-heading);font-weight:600;text-transform:uppercase;letter-spacing:2px;border-radius:2rem;margin-left:1rem;transition:all .4s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.btn-cv i{font-size:1.1rem;transition:transform .3s ease}.btn-cv:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,255,157,.2),transparent);transition:left .5s ease}.btn-cv:hover{border-color:var(--accent-color);color:var(--accent-color);box-shadow:0 0 30px #00ff9d26;transform:translateY(-3px)}.btn-cv:hover i{transform:translateY(3px)}.btn-cv:hover:before{left:100%}.header-buttons{display:flex;align-items:center;gap:1rem}.header-cv{padding:.8rem 1.5rem;font-size:.9rem;margin-left:0}.project-actions{display:flex;align-items:center;gap:1rem;margin-top:auto}.bento-link{display:inline-flex;justify-content:center;align-items:center;width:40px;height:40px;border-radius:50%;background:var(--control-bg);border:1px solid var(--input-border);color:var(--text-muted);transition:var(--transition-fast)}.bento-link:hover{background:var(--text-main);color:var(--bg-color);border-color:var(--text-main);transform:translateY(-2px)}.btn-play{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:2rem;background:#00ff9d1a;color:var(--accent-color);border:1px solid var(--accent-color);margin-left:0;transition:var(--transition-fast);cursor:pointer;font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase;letter-spacing:1px;font-weight:600}.btn-play:hover{background:var(--accent-color);color:var(--bg-color);box-shadow:0 0 15px #00ff9d66;transform:translateY(-2px)}.cube-wrapper{position:absolute;transform-style:preserve-3d;z-index:1}.hero-visual{position:relative}.data-pyramid{width:200px;height:200px;position:relative;transform-style:preserve-3d;animation:rotateCube 15s infinite linear}.pyramid-face{position:absolute;width:200px;height:200px;background:#00ff9d1a;filter:drop-shadow(0 0 2px var(--accent-color));clip-path:polygon(50% 0%,0% 100%,100% 100%);display:flex;justify-content:center;align-items:flex-end;padding-bottom:20px;font-family:var(--font-mono);font-weight:700;font-size:1rem;color:var(--accent-color);transform-origin:center bottom}.pyramid-face.front{transform:translateZ(100px) rotateX(30deg)}.pyramid-face.back{transform:translateZ(-100px) rotateY(180deg) rotateX(30deg)}.pyramid-face.right{transform:translate(100px) rotateY(90deg) rotateX(30deg)}.pyramid-face.left{transform:translate(-100px) rotateY(-90deg) rotateX(30deg)}.data-sphere{width:200px;height:200px;position:relative;transform-style:preserve-3d;animation:rotateCube 15s infinite linear;border-radius:50%;border:1px solid rgba(0,255,157,.3);background:radial-gradient(circle at 30% 30%,rgba(0,255,157,.1),transparent);box-shadow:0 0 30px #00ff9d33}.sphere-ring{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;border:1px solid rgba(0,255,157,.3)}.sphere-ring:nth-child(1){transform:rotateY(0)}.sphere-ring:nth-child(2){transform:rotateY(60deg)}.sphere-ring:nth-child(3){transform:rotateY(120deg)}.pyramid-face{background-color:transparent!important;border:none!important;filter:none!important;clip-path:none!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200' viewBox='0 0 200 200'%3E%3Cpolygon points='100,2 2,198 198,198' fill='rgba(0, 255, 157, 0.1)' stroke='%2300ff9d' stroke-width='1'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important}@media(max-width:768px){.admin-container{padding-top:80px;padding-left:1rem;padding-right:1rem}.admin-header{flex-direction:column;align-items:flex-start;gap:1rem}.admin-header h1{font-size:2rem}.tabs{overflow-x:auto;white-space:nowrap;padding-bottom:.5rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--accent-color) var(--card-bg)}.tabs::-webkit-scrollbar{height:4px}.tabs::-webkit-scrollbar-track{background:var(--card-bg);border-radius:2px}.tabs::-webkit-scrollbar-thumb{background-color:var(--accent-color);border-radius:2px}.tab-btn{font-size:1rem;padding:.5rem .8rem}.admin-grid{grid-template-columns:1fr}.modal-content{width:95%;padding:1.5rem;margin:10% auto}.header-container{padding:0 1rem}.header .logo{font-size:1.2rem}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10000;display:flex;justify-content:center;align-items:center;padding:2rem}.cert-modal-content,.cert-filters{display:flex;gap:1rem;margin-bottom:1rem}.cert-filters select{padding:.5rem;border-radius:.5rem;background:var(--control-bg);color:var(--text-main);border:1px solid var(--input-border);font-family:var(--font-body);cursor:pointer;outline:none}.cert-filters select:focus{border-color:var(--accent-color)}.cert-filters option{background-color:var(--card-bg);color:var(--text-main)}.cert-list{display:flex;flex-direction:column;gap:1rem;max-height:320px;overflow-y:auto;padding-right:.5rem}.cert-list::-webkit-scrollbar{width:6px}.cert-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.cert-list::-webkit-scrollbar-thumb{background:var(--accent-color);border-radius:3px}.project-filters select{padding:.5rem;border-radius:.5rem;background:var(--control-bg);color:var(--text-main);border:1px solid var(--input-border);font-family:var(--font-body);cursor:pointer;outline:none}.project-filters select:focus{border-color:var(--accent-color)}.project-filters option{background-color:var(--card-bg);color:var(--text-main)}.section-header{display:flex;align-items:center;gap:2rem;margin-bottom:3rem}.section-header .section-title{margin-bottom:0;white-space:nowrap}.section-header .line-separator{flex-grow:1;height:1px;background:linear-gradient(90deg,var(--accent-color),transparent)}.section-header .project-filters{margin-bottom:0;display:flex;gap:1rem}.btn-github{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:2rem;color:var(--text-main);font-size:.9rem;font-weight:500;transition:var(--transition-fast)}.btn-github:hover{background:var(--text-main);color:var(--bg-color);border-color:var(--text-main)}.hamburger{display:none;cursor:pointer}.bar{display:block;width:25px;height:3px;margin:5px auto;transition:all .3s ease-in-out;background-color:var(--text-main)}@media(max-width:768px){.cursor-dot,.cursor-outline,.hamburger{display:none!important}.header-buttons{display:flex!important;gap:.5rem}.header-buttons .btn-primary,.header-buttons .btn-cv{padding:.6rem;font-size:1rem;display:flex;align-items:center;justify-content:center}.btn-primary .btn-text{display:none!important}.btn-cv .btn-text{display:inline-block!important;margin-left:.3rem}.header .container{padding:0 .5rem}.header{width:95%!important}.section-header{flex-direction:column;align-items:flex-start;gap:1rem}.section-header .line-separator{display:none}.section-header .project-filters{width:100%;display:flex;flex-direction:column;gap:.8rem}.filter-select{width:100%;max-width:none}h1,.hero-title{font-size:2.5rem!important}h2,.section-title{font-size:2rem!important}.hero-description{font-size:1rem!important;padding:0 1rem}p{font-size:.95rem;line-height:1.6}.section{padding:3rem 0}}.stats-grid{gap:2rem;justify-content:flex-start}.stat-item{flex:1 1 45%;min-width:140px}.stat-number{font-size:2.5rem}.mobile-menu-overlay{position:fixed;top:0;left:100%;width:100%;height:100vh;background-color:var(--nav-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9990;display:flex;justify-content:center;align-items:center;transition:left .4s cubic-bezier(.77,0,.175,1);opacity:0;visibility:hidden}.mobile-menu-overlay.active{left:0;opacity:1;visibility:visible}.journey-grid{display:flex!important;flex-direction:column!important;gap:3rem!important}.journey-column{width:100%!important;max-width:100%!important}#education-content,#experience-content{display:grid!important;grid-auto-flow:column!important;grid-auto-columns:calc(50% - 1rem)!important;gap:2rem!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;padding-bottom:1.5rem!important;padding-top:.5rem!important;padding-left:2px}.timeline-card{width:100%!important;scroll-snap-align:start!important;margin:0!important;height:100%!important}#education-content::-webkit-scrollbar,#experience-content::-webkit-scrollbar{display:none}#education-content,#experience-content{scrollbar-width:none}@media(max-width:768px){#education-content,#experience-content{grid-auto-columns:calc(100% - 2rem)!important;gap:1rem!important}}.mobile-nav-list{list-style:none;text-align:center;padding:0}.mobile-nav-list li{margin:2rem 0;opacity:0;transform:translateY(20px);transition:all .3s ease-in-out}.mobile-menu-overlay.active .mobile-nav-list li{opacity:1;transform:translateY(0)}.mobile-menu-overlay.active .mobile-nav-list li:nth-child(1){transition-delay:.1s}.mobile-menu-overlay.active .mobile-nav-list li:nth-child(2){transition-delay:.2s}.mobile-menu-overlay.active .mobile-nav-list li:nth-child(3){transition-delay:.3s}.mobile-menu-overlay.active .mobile-nav-list li:nth-child(4){transition-delay:.4s}.mobile-menu-overlay.active .mobile-nav-list li:nth-child(5){transition-delay:.5s}.mobile-nav-link{font-size:2.5rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;text-decoration:none;transition:color .3s;display:block}.mobile-nav-link:hover{color:var(--accent-color)}.admin-select{background:var(--card-bg);color:var(--text-main);border:1px solid var(--nav-border);padding:.5rem;border-radius:.5rem;outline:none;cursor:pointer;font-family:var(--font-body)}.chat-widget{position:fixed;bottom:2rem;right:2rem;z-index:10000;font-family:Space Grotesk,sans-serif;display:flex;flex-direction:column;gap:1rem;align-items:center}.chat-toggle-btn{width:60px;height:60px;border-radius:50%;background:var(--accent-color);color:#000;font-size:1.5rem;border:none;cursor:pointer;box-shadow:0 6px #00b36b,0 15px 20px #0006;transition:all .1s ease;display:flex;align-items:center;justify-content:center;transform:translateY(0)}.chat-toggle-btn:hover{transform:translateY(-2px);box-shadow:0 8px #00b36b,0 20px 25px #0006}.chat-toggle-btn:active{transform:translateY(4px);box-shadow:0 2px #00b36b,0 5px 10px #0006}.chat-window{position:absolute;bottom:80px;right:0;width:350px;height:500px;background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--nav-border);border-radius:1rem;box-shadow:0 10px 40px #0003;display:none;flex-direction:column;overflow:hidden;transform-origin:bottom right;animation:popIn .3s cubic-bezier(.175,.885,.32,1.275)}.chat-window.active{display:flex}@keyframes popIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.chat-header{padding:1rem;background:var(--nav-border);border-bottom:1px solid var(--nav-border);display:flex;justify-content:space-between;align-items:center;color:var(--accent-color);font-weight:700}.chat-header button{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1.2rem;transition:color .2s}.chat-header button:hover{color:#ff4757}.chat-messages{flex:1;padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem;scrollbar-width:thin;scrollbar-color:var(--accent-color) transparent}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background-color:var(--accent-color);border-radius:20px;border:2px solid transparent;background-clip:content-box}.chat-messages::-webkit-scrollbar-thumb:hover{background-color:var(--accent-secondary)}.message{max-width:80%;padding:.8rem;border-radius:.8rem;font-size:.9rem;line-height:1.4}.message.bot{align-self:flex-start;background:var(--nav-border);color:var(--text-main);border-bottom-left-radius:0}.message.user{align-self:flex-end;background:var(--accent-color);color:#000;border-bottom-right-radius:0;font-weight:500}.chat-input-area{padding:1rem;border-top:1px solid var(--nav-border);display:flex;gap:.5rem}.chat-input-area input{flex:1;background:var(--nav-border);border:1px solid var(--nav-border);border-radius:.5rem;padding:.6rem;color:var(--text-main);font-family:inherit}.chat-input-area input:focus{outline:none;border-color:var(--accent-color)}.chat-input-area button{background:var(--accent-color);color:#000;border:none;border-radius:.5rem;width:40px;height:40px;cursor:pointer;transition:opacity .2s}@media(max-width:480px){.chat-window{position:fixed;width:90vw;height:60vh;bottom:100px;left:0;right:0;margin-left:auto;margin-right:auto;transform-origin:bottom center;z-index:10001}}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}@media(max-width:768px){.stats-grid{grid-template-columns:repeat(3,1fr)!important;gap:.5rem!important}.stat-item{min-width:auto!important;padding:.5rem!important}.stat-number{font-size:1.8rem!important}.stat-label{font-size:.8rem!important}}@media(max-width:768px){#projects-grid,#articles-grid,.skills-grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:1rem;padding-bottom:2rem;scrollbar-width:none}#projects-grid::-webkit-scrollbar,#articles-grid::-webkit-scrollbar,.skills-grid::-webkit-scrollbar{display:none}.bento-item,.article-card,.skill-category{min-width:85vw;scroll-snap-align:center;flex-shrink:0;margin-bottom:0!important}.skill-category{background:var(--card-bg);border:1px solid var(--nav-border);padding:1.5rem;border-radius:1rem}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.bento-item,.article-card,.skill-category,.chat-toggle-btn,.cert-item{animation:float 6s ease-in-out infinite;will-change:transform}.bento-item:nth-child(odd){animation-delay:0s}.bento-item:nth-child(2n){animation-delay:-3s}.article-card:nth-child(odd){animation-delay:-1s}.article-card:nth-child(2n){animation-delay:-4s}.skill-category:nth-child(1){animation-delay:-2s}.skill-category:nth-child(2){animation-delay:-5s}.cert-item{animation-delay:-2.5s}.chat-toggle-btn{animation-duration:5s;animation-delay:-1.5s}.cert-item{background:var(--card-bg);border:1px solid var(--nav-border);border-radius:1rem;padding:1.5rem;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.cert-item:hover{transform:translateY(-5px);box-shadow:0 10px 30px var(--accent-glow);border-color:var(--accent-color)}.skill-category{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.skill-category:hover{transform:translateY(-5px);box-shadow:0 10px 30px var(--accent-glow);border-color:var(--accent-color)}.slider-dots{display:none}@media(max-width:768px){.project-nav-controls{display:none!important}.slider-dots{display:flex;justify-content:center;gap:8px;margin-top:1rem;padding-bottom:1rem}.slider-dot{width:8px;height:8px;background:var(--nav-border);border-radius:50%;cursor:pointer;transition:all .3s ease}.slider-dot.active{background:var(--accent-color);width:20px;border-radius:10px}}.hero-description:after{content:"|";animation:blink .7s infinite;margin-left:2px;color:var(--accent-color)}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.mobile-shape-container{display:none;margin:2rem 0;height:120px;align-items:center;justify-content:center}.mobile-scene{perspective:600px}@media(max-width:768px){.mobile-shape-container{display:flex}}.mobile-shape-container .scene{position:relative;width:120px;height:120px;margin:0 auto;transform-style:preserve-3d}.mobile-shape-container .cube,.mobile-shape-container .pyramid,.mobile-shape-container .sphere{position:relative;width:100%;height:100%;transform-style:preserve-3d;animation:rotateCube 10s infinite linear}.mobile-shape-container .cube-face{position:absolute;width:120px;height:120px;border:1px solid var(--accent-color);background:#00ff9d0d;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;color:var(--text-main);backface-visibility:visible}.mobile-shape-container .cube-face.front{transform:rotateY(0) translateZ(60px)}.mobile-shape-container .cube-face.back{transform:rotateY(180deg) translateZ(60px)}.mobile-shape-container .cube-face.right{transform:rotateY(90deg) translateZ(60px)}.mobile-shape-container .cube-face.left{transform:rotateY(-90deg) translateZ(60px)}.mobile-shape-container .cube-face.top{transform:rotateX(90deg) translateZ(60px)}.mobile-shape-container .cube-face.bottom{transform:rotateX(-90deg) translateZ(60px)}.mobile-shape-container .sphere{border-radius:50%;border:1px solid rgba(0,255,157,.3);background:radial-gradient(circle at 30% 30%,rgba(0,255,157,.1),transparent);box-shadow:0 0 20px #00ff9d33;display:flex;align-items:center;justify-content:center}.mobile-shape-container .sphere .sphere-text{color:var(--accent-color);font-family:var(--font-mono);font-weight:700;font-size:.9rem;text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mobile-shape-container .sphere .sphere-ring{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;border:1px solid rgba(0,255,157,.3)}.mobile-shape-container .sphere .sphere-ring:nth-child(1){transform:rotateY(0)}.mobile-shape-container .sphere .sphere-ring:nth-child(2){transform:rotateY(60deg)}.mobile-shape-container .sphere .sphere-ring:nth-child(3){transform:rotateY(120deg)}.filter-btn{background:var(--control-bg);border:1px solid var(--input-border);color:var(--text-muted);padding:.5rem 1rem;border-radius:20px;cursor:pointer;transition:all .3s ease;font-size:.9rem;display:flex;align-items:center;gap:8px}.filter-btn:hover{background:#ffffff1a;color:var(--text-main)}.filter-btn.active{background:#00ff9d1a;border-color:var(--accent-color);color:var(--accent-color)}@media(max-width:768px){.cert-filters{flex-direction:column;gap:.5rem}.cert-filters select{width:100%;font-size:.9rem}}.search-container{position:relative;display:flex;align-items:center}.search-input{padding:.5rem .5rem .5rem 2rem;border-radius:.5rem;background:var(--input-bg);color:var(--text-main);border:1px solid var(--input-border);font-family:var(--font-body);outline:none;transition:all .3s ease;width:200px}.search-input:focus{border-color:var(--accent-color);background:#ffffff1a}.search-icon{position:absolute;left:10px;color:var(--text-muted);font-size:.8rem;pointer-events:none}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.testimonial-card{background:var(--card-bg);border:1px solid var(--nav-border);border-radius:1rem;padding:2rem;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 6px #0000000d}.article-card{background:var(--card-bg);border:1px solid var(--nav-border);border-radius:1rem;overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column;height:100%}.article-card:hover{transform:translateY(-5px);border-color:var(--accent-color);box-shadow:0 10px 30px var(--accent-glow)}.article-image{height:200px;width:100%;overflow:hidden;background:#7f7f7f1a}.article-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.article-card:hover .article-image img{transform:scale(1.05)}.article-content{padding:1.5rem;flex:1;display:flex;flex-direction:column}.article-date{font-size:.8rem;color:var(--text-muted);margin-bottom:.5rem}.article-title{font-size:1.25rem;margin-bottom:.8rem;color:var(--text-main);line-height:1.3}.article-summary{font-size:.9rem;color:var(--text-muted);margin-bottom:1.5rem;flex-grow:1;line-height:1.5}.article-link{font-weight:600;color:var(--accent-color);margin-top:auto;display:inline-flex;align-items:center;gap:5px;transition:gap .3s}.article-link:hover{gap:8px}.testimonial-card:hover{transform:translateY(-5px);border-color:var(--accent-color)}.testimonial-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1rem}.testimonial-author h4{color:var(--text-main);margin-bottom:.2rem}.testimonial-author span{color:var(--text-muted);font-size:.9rem}.testimonial-rating{color:gold;font-size:.9rem}.testimonial-text{color:var(--text-secondary);font-style:italic;line-height:1.6}.rating-input{display:flex;gap:5px;font-size:1.5rem;color:var(--text-muted);cursor:pointer;margin-bottom:1rem}.rating-input .star.active{color:gold}.modal{display:none;position:fixed;z-index:20000;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content{background-color:var(--card-bg);margin:10% auto;padding:2rem;border:1px solid var(--accent-color);width:90%;max-width:500px;border-radius:1rem;position:relative;box-shadow:0 0 20px #00ff9d33}.close-modal{color:var(--text-muted);float:right;font-size:28px;font-weight:700;cursor:pointer;transition:.3s}.close-modal:hover{color:var(--accent-color)}.modal h2{margin-bottom:1.5rem;color:var(--accent-color);text-align:center}.modal .form-group{margin-bottom:1rem}.modal input,.modal textarea{width:100%;padding:.8rem;background:var(--control-bg);border:1px solid var(--input-border);border-radius:.5rem;color:var(--text-main);font-family:var(--font-body)}.modal input:focus,.modal textarea:focus{border-color:var(--accent-color);outline:none}.form-select{width:100%;padding:.8rem;background:var(--control-bg);border:1px solid var(--input-border);border-radius:.5rem;color:var(--text-main);font-family:var(--font-body);outline:none;transition:all .3s ease;cursor:pointer}.form-select:focus{border-color:var(--accent-color)}.form-select option{background:var(--card-bg);color:var(--text-main)}.testimonials-slider{width:100%;overflow:hidden;position:relative;padding:1rem 0}.testimonials-track{display:flex;transition:transform .5s ease-in-out;width:100%}.testimonial-slide{min-width:100%;display:grid;gap:2rem;padding:0 1rem;grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto}.slider-pagination{display:flex;justify-content:center;gap:10px;margin-top:1.5rem}.slider-dot{width:10px;height:10px;background:var(--dot-bg);border-radius:50%;cursor:pointer;transition:background .3s}.slider-dot.active{background:var(--accent-color);box-shadow:0 0 10px var(--accent-color)}@media(max-width:768px){.testimonial-slide{grid-template-columns:1fr;grid-template-rows:auto auto;gap:1.5rem}}.articles-slider{width:100%;overflow:hidden;position:relative;padding:1rem 0}.articles-track{display:flex;transition:transform .5s ease-in-out;width:100%}.article-slide{min-width:100%;display:grid;gap:2rem;padding:0 1rem;grid-template-columns:repeat(3,1fr)}@media(max-width:768px){.article-slide{display:flex;justify-content:center;align-items:center;padding:0 1.5rem}.article-card{width:100%;max-width:320px;margin:0 auto;box-shadow:0 10px 25px #0000001a}}.articles-filter{display:flex;align-items:center;gap:1rem;margin:1.5rem 0}#filter-article-tag{padding:.5rem 2rem .5rem 1rem;border-radius:.5rem;background-color:var(--control-bg);color:var(--text-main);border:1px solid var(--input-border);font-family:var(--font-body);outline:none;transition:all .3s ease;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%2300ff9d%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right .7rem top 50%;background-size:.65rem auto}#filter-article-tag:hover,#filter-article-tag:focus{border-color:var(--accent-color);background-color:var(--input-bg)}#filter-article-tag option{background-color:var(--card-bg);color:var(--text-main)}.notification-popup{position:fixed;top:20px;right:20px;background:var(--nav-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--nav-border);padding:1.5rem 2rem;border-radius:1rem;z-index:10000;box-shadow:0 10px 30px #00000080;display:flex;align-items:center;gap:1rem;transform:translate(120%);transition:transform .4s cubic-bezier(.16,1,.3,1)}.notification-popup.show{transform:translate(0)}.notification-popup.success{border-left:4px solid var(--accent-color)}.notification-popup.error{border-left:4px solid #ff4d4d}.notification-icon{font-size:1.5rem}.notification-popup.success .notification-icon{color:var(--accent-color)}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000d9;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1000;display:flex;justify-content:center;align-items:center;padding:1.5rem;animation:fadeInOverlay .3s ease forwards}.cert-modal-content{background:var(--card-bg);color:var(--text-main);width:100%;max-width:980px;border-radius:12px;border:1px solid var(--nav-border);box-shadow:0 30px 60px #00000080;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;position:relative;animation:slideUpModal .4s cubic-bezier(.16,1,.3,1) forwards}.cert-modal-header{padding:1.5rem 2rem .5rem;border-bottom:none;display:block;text-align:center;background:transparent;width:100%}.cert-modal-title{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--text-main);margin:0;line-height:1.3}.cert-modal-close{position:absolute;top:1.5rem;right:1.5rem;background:transparent;border:1px solid var(--nav-border);color:var(--text-muted);width:32px;height:32px;border-radius:50%;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:20}.cert-modal-body{padding:0 2rem 1.5rem;display:grid;grid-template-columns:350px 1fr;gap:2.5rem;overflow-y:auto}.cert-modal-image{background:var(--input-bg);border:1px solid var(--nav-border);border-radius:8px;padding:1rem;display:flex;align-items:center;justify-content:center;width:100%;height:300px;max-height:350px;position:relative;overflow:hidden}.cert-modal-image img{max-width:100%;max-height:100%;object-fit:contain;border:1px solid rgba(255,255,255,.1);box-shadow:0 5px 20px #0003}.verified-badge{position:absolute;top:10px;right:10px;background:#00b894;color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #0003;font-size:.9rem;z-index:5;border:2px solid var(--card-bg)}.cert-modal-details{display:flex;flex-direction:column;gap:1.2rem}.cert-detail-group h4{font-family:var(--font-body);font-size:.85rem;font-weight:700;color:var(--text-main);margin-bottom:.4rem;display:block}.cert-detail-group p{font-size:.95rem;color:var(--text-muted);line-height:1.5;margin:0}.cert-id{display:inline-block;margin-top:.3rem;font-size:.8rem;color:var(--text-muted);opacity:.8}.cert-skills-container{display:flex;flex-wrap:wrap;gap:.5rem}.cert-skill-tag{background:var(--input-bg);border:1px solid var(--nav-border);padding:.3rem .9rem;border-radius:100px;font-size:.8rem;color:var(--text-main);font-weight:500}.cert-modal-footer{padding:1rem 2rem;border-top:1px solid var(--nav-border);display:flex;justify-content:space-between;align-items:center;background:var(--card-bg);margin-top:auto}.cert-modal-title{font-family:var(--font-heading);font-size:1.8rem;font-weight:700;color:var(--text-main);margin:0;line-height:1.3}.cert-modal-close{background:transparent;border:1px solid var(--nav-border);color:var(--text-muted);width:36px;height:36px;border-radius:50%;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;margin-left:1rem;flex-shrink:0}.cert-modal-close:hover{background:var(--text-main);color:var(--bg-color)}.cert-modal-body{padding:0 2.5rem 2rem;display:grid;grid-template-columns:350px 1fr;gap:3rem;overflow-y:auto}.cert-modal-body::-webkit-scrollbar{width:6px}.cert-modal-body::-webkit-scrollbar-track{background:transparent}.cert-modal-body::-webkit-scrollbar-thumb{background:var(--nav-border);border-radius:10px}.cert-modal-image{background:var(--input-bg);border:1px solid var(--nav-border);border-radius:8px;padding:1rem;display:flex;align-items:center;justify-content:center;height:fit-content;min-height:250px;position:relative}.cert-modal-image img{width:100%;height:auto;object-fit:contain;border:1px solid rgba(255,255,255,.1);box-shadow:0 5px 20px #0003}.verified-badge{position:absolute;top:-10px;right:-10px;background:#00b894;color:#fff;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #0003;font-size:1rem;z-index:5;border:3px solid var(--card-bg)}.cert-modal-details{display:flex;flex-direction:column;gap:1.5rem}.cert-detail-group h4{font-family:var(--font-body);font-size:.9rem;font-weight:700;color:var(--text-main);margin-bottom:.5rem;display:block}.cert-detail-group p{font-size:1rem;color:var(--text-muted);line-height:1.6;margin:0}.cert-id{display:inline-block;margin-top:.3rem;font-size:.85rem;color:var(--text-muted);opacity:.8}.cert-skills-container{display:flex;flex-wrap:wrap;gap:.6rem}.cert-skill-tag{background:var(--input-bg);border:1px solid var(--nav-border);padding:.4rem 1rem;border-radius:100px;font-size:.85rem;color:var(--text-main);font-weight:500}.cert-modal-footer{padding:1.5rem 2.5rem;border-top:1px solid var(--nav-border);display:flex;justify-content:space-between;align-items:center;background:var(--card-bg);margin-top:auto}.cert-meta{display:flex;gap:1rem}.cert-level-badge,.cert-date{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-main);background:var(--control-bg);padding:.5rem 1rem;border-radius:6px;font-weight:600}.cert-level-badge i,.cert-date i{color:var(--text-muted)}.article-meta-top,.project-meta-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem;font-size:.85rem;color:var(--text-muted)}.article-date i{color:var(--accent-color);margin-right:.4rem}.article-tags-inline{display:flex;gap:.4rem}.tag-pill{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);padding:.2rem .6rem;border-radius:4px;font-size:.75rem;color:var(--text-main);transition:all .3s ease}.article-card:hover .tag-pill,.bento-item:hover .tag-pill{border-color:var(--accent-color);color:var(--accent-color)}.article-title,.project-title{font-size:1.2rem;font-weight:700;margin-bottom:.6rem;color:var(--text-main);line-height:1.4;min-height:3.4em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-summary,.project-summary{font-size:.9rem;color:var(--text-muted);line-height:1.6;margin-bottom:1.5rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex-grow:1}.article-footer,.project-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:1rem;border-top:1px solid rgba(255,255,255,.05)}.read-more-btn{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--accent-color);text-decoration:none;transition:all .3s ease;padding:.4rem .8rem;border-radius:4px;background:#00ff9d0d}.read-more-btn:hover{background:var(--accent-color);color:#000;transform:translate(2px)}.article-footer .interaction-bar,.project-footer .interaction-bar,.bento-content .interaction-bar{display:flex!important;flex-direction:row!important;align-items:center!important;border-top:none!important;padding-top:0!important;margin-top:0!important;gap:1rem}.article-footer .interaction-item,.project-footer .interaction-item,.bento-content .interaction-item{font-size:.9rem;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),color .3s ease;cursor:pointer}.article-footer .interaction-item:hover,.project-footer .interaction-item:hover,.bento-content .interaction-item:hover{color:var(--accent-color);transform:scale(1.1)}.article-footer .interaction-item:hover i,.project-footer .interaction-item:hover i,.bento-content .interaction-item:hover i{color:var(--accent-color)}.cert-level-badge{background:#fff8e1;color:#b45309}.btn-verify{background:var(--text-main);color:var(--bg-color);padding:.8rem 2rem;border-radius:6px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:.8rem;transition:transform .2s}.btn-verify:hover{transform:translateY(-2px);opacity:.9}@media(max-width:800px){.cert-modal-body{grid-template-columns:1fr;gap:2rem;padding:0 1.5rem 2rem}.cert-modal-image{max-width:400px;margin:0 auto}.cert-modal-footer{flex-direction:column;gap:1rem;padding:1.5rem}.cert-meta,.btn-verify{width:100%;justify-content:center}}body:not(.light-mode) .cert-modal-content{background-color:#1e1e1e!important;box-shadow:0 25px 50px #00000080}body:not(.light-mode) .cert-level-badge{background:#ffc10726;color:#ffc107}body.light-mode .cert-modal-content{background-color:#fff!important;border:1px solid #e0e0e0;box-shadow:0 20px 40px #0000001a}body.light-mode .cert-modal-title,body.light-mode .cert-detail-group h4{color:#1f1f1f}body.light-mode .cert-detail-group p{color:#555}body.light-mode .cert-skill-tag{background:#f5f5f5;border-color:#e0e0e0;color:#333}body.light-mode .cert-level-badge{background:#fff8e1;color:#b45309}body.light-mode .btn-verify{background:#000;color:#fff}body.light-mode .cert-modal-image{background:#f9f9f9;border-color:#eee}#review-form{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}#review-form .form-group{margin-bottom:.5rem}#review-form input,#review-form textarea,#review-form select{width:100%;padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-main);font-family:var(--font-body);font-size:.95rem;transition:var(--transition-fast)}#review-form input:focus,#review-form textarea:focus,#review-form select:focus{outline:none;border-color:var(--accent-color);background:#ffffff1a;box-shadow:0 0 15px #00ff9d1a}#review-form select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 1rem center;background-size:1em}body.light-mode #review-form select{background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e")}#review-form select option{background:var(--card-bg);color:var(--text-main)}.rating-input{display:flex;gap:.5rem;font-size:1.5rem;cursor:pointer;justify-content:center;margin:1rem 0}.rating-input .star{color:var(--text-muted);transition:color .2s}.rating-input .star.active,.rating-input .star:hover,.rating-input .star:hover~.star{color:gold}.testimonial-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.testimonial-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--accent-color);background:var(--nav-bg)}.testimonial-info{flex:1}.testimonial-name{font-size:1.1rem;color:var(--text-main);display:flex;align-items:center;gap:.5rem}@media(max-width:1200px){.hero-title{font-size:3rem}.hero{height:auto;min-height:100vh;overflow:visible;padding-top:7rem;padding-bottom:4rem}}@media(max-width:992px){.hero-container{grid-template-columns:1fr;text-align:center;gap:2rem}.hero-content{order:2;display:flex;flex-direction:column;align-items:center}.hero-visual{order:1;height:300px;margin-bottom:1rem}.hero-description{margin:0 auto 2rem;max-width:80%}.hero-actions{justify-content:center}}@media(max-width:768px){.hero-title{font-size:2.2rem;line-height:1.2;word-wrap:break-word}.hero-subtitle{font-size:.8rem;padding:.4rem .8rem;margin-bottom:.5rem;white-space:normal;text-align:center}.hero-description{font-size:1rem;line-height:1.5;max-width:100%;padding:0 1rem;margin-bottom:1.5rem}.hero-container{gap:1rem}.hero{padding-top:5rem}.mobile-shape-container{display:flex!important;justify-content:center;margin-bottom:1rem;width:100%;position:relative;height:150px;touch-action:none;z-index:20}}.bento-fallback-gradient{background:linear-gradient(135deg,#1a1a1a,#0a0a0a);opacity:1!important}.bento-fallback-overlay{background:radial-gradient(circle at top right,rgba(0,255,157,.1),transparent 60%)}body.light-mode .bento-fallback-gradient{background:linear-gradient(160deg,#fff 20%,#00bf7d4d)!important;border:1px solid rgba(0,191,125,.1)}body.light-mode .bento-fallback-overlay,body.light-mode .bento-overlay{display:none!important}body.light-mode .bento-item{border-color:#0000001a;box-shadow:0 5px 20px #0000000d}body.light-mode .bento-item.has-media h3,body.light-mode .bento-item.has-media p,body.light-mode .bento-item.has-media .btn-github,body.light-mode .bento-item.has-media .btn-play{color:#fff!important;text-shadow:0 2px 4px rgba(0,0,0,.5)}body.light-mode .bento-item.has-media .btn-github{background:#fff3;border-color:#ffffff4d}body.light-mode .bento-item:not(.has-media) h3{color:var(--text-main)}body.light-mode .bento-item:not(.has-media) p{color:var(--text-muted)}body.light-mode .bento-item:not(.has-media) .bento-tags span{background:#0000000d;color:#333;border:1px solid rgba(0,0,0,.05)}body.light-mode .bento-item.has-media .bento-tags span{background:#0009;color:#fff;border:1px solid rgba(255,255,255,.2)}.data-cube{cursor:grab}.data-cube:active{cursor:grabbing}.feedback-modal-content{background:var(--card-bg);border:1px solid var(--border-color);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:2.5rem;border-radius:16px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 0 40px #00ff9d1a,inset 0 0 20px #00000080;color:var(--text-main);position:relative}.feedback-modal-content::-webkit-scrollbar{width:6px}.feedback-modal-content::-webkit-scrollbar-track{background:#ffffff0d}.feedback-modal-content::-webkit-scrollbar-thumb{background:var(--accent-color);border-radius:10px}.feedback-modal-content:before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,transparent,var(--accent-color),transparent)}.feedback-modal-content .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:1rem}.feedback-modal-content h3{font-size:1.8rem;font-weight:700;color:var(--text-main);text-shadow:0 0 10px rgba(0,255,157,.3);margin:0}.close-modal{background:transparent;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;transition:all .3s ease}.close-modal:hover{color:var(--accent-color);transform:rotate(90deg)}.feedback-modal-content .modal-body .form-group{margin-bottom:1.5rem}.feedback-modal-content .form-row{display:flex;gap:1.5rem;margin-bottom:1.5rem}@media(max-width:600px){.feedback-modal-content .form-row{flex-direction:column;gap:1rem}}.feedback-modal-content label{display:block;margin-bottom:.8rem;color:var(--accent-color);font-size:.9rem;text-transform:uppercase;letter-spacing:1px;font-weight:600}.feedback-modal-content input,.feedback-modal-content select,.feedback-modal-content textarea{width:100%;background:var(--input-bg);border:1px solid var(--input-border);color:var(--text-main);padding:1rem;border-radius:8px;font-family:inherit;font-size:1rem;transition:all .3s ease}.feedback-modal-content select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:calc(100% - 15px) center}.feedback-modal-content input:focus,.feedback-modal-content select:focus,.feedback-modal-content textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 15px #00ff9d26;background:var(--bg-secondary)}.feedback-modal-content textarea{min-height:150px;resize:vertical}.feedback-modal-content .btn-submit{width:100%;padding:1rem;background:transparent;color:var(--accent-color);border:1px solid var(--accent-color);border-radius:8px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s cubic-bezier(.23,1,.32,1);text-transform:uppercase;letter-spacing:2px;margin-top:1rem;position:relative;overflow:hidden}.feedback-modal-content .btn-submit:hover{background:var(--accent-color);color:#000;box-shadow:0 0 30px #00ff9d80}.feedback-modal-content .btn-submit:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}#toast-container{position:fixed;bottom:30px;right:30px;z-index:2147483647!important;display:flex;flex-direction:column;gap:15px;pointer-events:none}.toast{background:#0f0f0ff2;border:1px solid rgba(255,255,255,.1);border-left:4px solid var(--accent-color);color:#fff;padding:16px 24px;border-radius:8px;box-shadow:0 10px 30px #00000080;min-width:300px;transform:translate(120%);transition:transform .4s cubic-bezier(.175,.885,.32,1.275);display:flex;align-items:center;gap:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto}.toast.show{transform:translate(0)}.toast.success{border-left-color:var(--accent-color)}.toast.error{border-left-color:#ff4757}.toast i{font-size:1.4rem}.toast.success i{color:var(--accent-color);drop-shadow:0 0 8px rgba(0,255,157,.6)}.toast.error i{color:#ff4757;drop-shadow:0 0 8px rgba(255,71,87,.6)}.toast span{font-weight:500;font-size:.95rem;letter-spacing:.5px}.comments-section h4{font-size:1.1rem;letter-spacing:1px;text-transform:uppercase;color:var(--accent-color);margin-bottom:1.5rem;display:flex;align-items:center;gap:10px}.comments-section h4:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--accent-color),transparent);opacity:.3}#comments-list{max-height:250px;overflow-y:auto;padding-right:10px}#comments-list::-webkit-scrollbar{width:6px}#comments-list::-webkit-scrollbar-thumb{background:#00ff9d4d;border-radius:10px}.comment-item{background:var(--bg-secondary);border:1px solid var(--border-color);padding:1rem;border-radius:8px;margin-bottom:1rem;transition:all .3s ease}.comment-item:hover{background:#ffffff0d;border-color:#00ff9d33;transform:translate(5px)}.comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.comment-name{font-weight:700;color:var(--text-main);font-size:.95rem}.comment-date{font-size:.75rem;color:var(--text-muted)}.comment-body{font-size:.9rem;color:var(--text-color);line-height:1.5;margin-bottom:.5rem}.comment-link{font-size:.8rem;color:var(--accent-color);text-decoration:none;display:inline-flex;align-items:center;gap:5px;transition:opacity .2s}.comment-link:hover{opacity:.8;text-decoration:underline}.timeline-card{opacity:1!important;visibility:visible!important;transform:none!important}.link-text{cursor:pointer;text-decoration:underline;color:var(--accent-color)!important;font-weight:600;text-shadow:0 0 5px var(--accent-color),0 0 10px rgba(0,255,157,.4);transition:all .3s ease}.link-text:hover{opacity:1;text-shadow:0 0 8px var(--accent-color),0 0 15px rgba(0,255,157,.6);transform:scale(1.02);display:inline-block}#project-modal{background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000}#project-modal .project-modal-content{background:var(--nav-bg);border:1px solid var(--nav-border);border-radius:12px;box-shadow:0 25px 50px -12px #00000080;width:90%;max-width:900px;max-height:90vh;overflow-y:auto;padding:0;display:flex;flex-direction:column}#project-modal .project-modal-header{padding:1.5rem 2rem;border-bottom:1px solid var(--nav-border);display:flex;flex-direction:column;align-items:center;text-align:center;gap:.8rem;background:#ffffff05}#project-modal .project-modal-header h2{font-size:1.5rem;font-weight:700;color:var(--text-main);margin:0}#project-modal .project-modal-meta{display:flex;flex-direction:row;flex-wrap:wrap;gap:1rem;justify-content:center;align-items:center;color:var(--text-muted);font-size:.9rem}#project-modal .project-modal-scroll{padding:2rem;overflow-y:auto}#project-modal .project-modal-image-container{margin-bottom:2rem;border-radius:8px;overflow:hidden;border:1px solid var(--nav-border)}#project-modal .project-modal-body{display:grid;grid-template-columns:2fr 1fr;gap:2rem}@media(max-width:768px){#project-modal .project-modal-body{grid-template-columns:1fr}}#project-modal h4{font-size:1.1rem;font-weight:600;color:var(--accent-color);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}#project-modal p{color:var(--text-muted);line-height:1.7;margin-bottom:1.5rem}.project-col-right{background:#ffffff08;padding:1.5rem;border-radius:8px;border:1px solid var(--nav-border);height:fit-content}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tech-tag{background:#00ff9d1a;color:var(--accent-color);padding:.3rem .8rem;border-radius:100px;font-size:.85rem;border:1px solid rgba(0,255,157,.2)}.task-list{list-style:none;padding:0;margin:0}.task-list li{position:relative;padding-left:1.2rem;margin-bottom:.5rem;color:var(--text-muted);font-size:.9rem}.task-list li:before{content:"•";color:var(--accent-color);position:absolute;left:0;font-weight:700}.project-info-list .info-item{display:flex;align-items:center;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--nav-border)}.project-info-list .info-item:last-child{border-bottom:none}.project-info-list .info-item i{color:var(--accent-color);font-size:1.1rem}.project-info-list .info-val{color:var(--text-main);font-weight:500}#project-modal .project-modal-footer{padding:1.5rem 2rem;border-top:1px solid var(--nav-border);display:flex;justify-content:flex-end;background:#ffffff05}.btn-github-modal{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;background:var(--card-bg);color:var(--text-main);text-decoration:none;border-radius:6px;border:1px solid var(--nav-border);transition:all .3s ease}.btn-github-modal:hover{background:var(--accent-color);color:#000;border-color:var(--accent-color)}.project-modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;z-index:10;transition:color .2s}.project-modal-close:hover{color:var(--accent-color)}.bento-content p{color:#fff!important;text-shadow:0 1px 4px rgba(0,0,0,.9);font-weight:500}.bento-content h3{color:#fff!important;text-shadow:0 1px 4px rgba(0,0,0,.9)}.bento-overlay{background:linear-gradient(to top,rgba(0,0,0,.95) 0%,rgba(0,0,0,.5) 60%,transparent 100%)!important;opacity:1!important}.bento-item.large .bento-content p{font-size:1.05rem;-webkit-line-clamp:8;line-clamp:8}.bento-tags span{background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.2);text-shadow:none}.project-col-right .project-info-list{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:3rem!important;margin-bottom:2rem!important;width:100%}.project-col-right .project-info-list .info-item{display:flex!important;flex-direction:row!important;align-items:center!important;flex:1;border-bottom:none!important;padding:0!important;margin:0!important;white-space:nowrap}.project-col-right .info-item i{margin-right:.8rem!important}#contact .section-header{display:flex!important;align-items:center!important;gap:2rem!important;margin-bottom:3rem!important;flex-direction:row!important;width:100%}#contact .section-title{font-size:3rem;white-space:nowrap;margin:0}#contact .section-header{display:flex!important;align-items:center!important;gap:3rem!important;margin-bottom:2rem!important;flex-direction:row!important;width:100%!important;position:relative!important}#contact .section-title{font-size:3rem;white-space:nowrap;margin:0;flex-shrink:0!important}#contact .line-separator{display:block!important;flex-grow:1!important;height:2px!important;background:linear-gradient(90deg,var(--accent-color),transparent)!important;opacity:.5!important;width:auto!important}#contact .contact-text p[data-i18n="contact.subtitle"]{margin-top:0!important;margin-bottom:2rem!important;color:var(--text-muted);font-size:1.1rem}#contact .container{text-align:left!important;display:block!important}.project-col-right .info-item>div{display:flex!important;flex-direction:column!important;align-items:flex-start!important}.bento-item{cursor:pointer!important;position:relative;transition:all .3s cubic-bezier(.25,.8,.25,1)}.bento-item:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px -10px #00000080;border-color:var(--accent-color)}.bento-item:after{content:"";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;top:1rem;right:1rem;width:36px;height:36px;background:var(--accent-color);color:#000;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;opacity:0;transform:translateY(10px);transition:all .3s ease;box-shadow:0 4px 15px var(--accent-glow);z-index:10}.bento-item:hover:after{opacity:1;transform:translateY(0)}.bento-item:hover .interaction-bar{opacity:1}#contact .contact-wrapper{display:grid!important;grid-template-columns:1fr 1.2fr!important;gap:4rem!important;align-items:start!important;margin-top:1rem}#contact .contact-text{margin-top:0!important;padding-top:1.2rem!important}@media(max-width:768px){#projects-grid.bento-grid{grid-template-columns:1fr!important;gap:2rem!important}.bento-item,.bento-item.large,.bento-item.wide{grid-column:span 1!important;width:100%!important}.bento-content p{-webkit-line-clamp:8!important;line-clamp:8!important;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}}.footer i{color:var(--accent-color)!important}@keyframes autoFlip{0%{transform:rotateY(0)}10%{transform:rotateY(180deg)}20%{transform:rotateY(0)}to{transform:rotateY(0)}}.profile-flip-card{animation:autoFlip 5s ease-in-out infinite}@keyframes iconFlip{0%{transform:rotateY(0)}30%{transform:rotateY(360deg)}to{transform:rotateY(360deg)}}.chat-toggle-btn i{animation:iconFlip 2s ease-in-out infinite;display:inline-block}@media(max-width:768px){#contact .contact-wrapper{grid-template-columns:1fr!important;gap:2rem!important}}.article-modal-custom{max-width:900px!important}.notion-block{margin-bottom:1rem}.notion-h1{font-size:2rem;font-weight:700;margin-top:2rem;margin-bottom:1rem;color:var(--heading-color)}.notion-h2{font-size:1.5rem;font-weight:600;margin-top:1.5rem;margin-bottom:.8rem;color:var(--heading-color)}.notion-h3{font-size:1.25rem;font-weight:600;margin-top:1.2rem;margin-bottom:.5rem;color:var(--heading-color)}.notion-p{margin-bottom:1rem;font-size:1rem}.notion-ul,.notion-ol{margin-bottom:1rem;padding-left:1.5rem}.notion-li{margin-bottom:.25rem}.notion-quote{border-left:3px solid var(--accent-color);padding-left:1rem;font-style:italic;color:var(--text-muted);margin:1.5rem 0}.notion-callout{background:#ffffff0d;padding:1rem;border-radius:8px;display:flex;gap:1rem;margin:1rem 0;align-items:flex-start}.notion-code{background:#1e1e1e;padding:1rem;border-radius:8px;overflow-x:auto;font-family:JetBrains Mono,monospace;font-size:.9rem;margin:1rem 0;border:1px solid rgba(255,255,255,.1)}.notion-image{max-width:100%;border-radius:8px;margin:1.5rem 0}.notion-image img{max-width:100%;height:auto;border-radius:8px}.notion-image caption{display:block;text-align:center;font-size:.85rem;color:var(--text-muted);margin-top:.5rem}body.light-mode .bento-item h3,body.light-mode .bento-item p{color:#000!important}#article-content{line-height:1.8;font-size:1.05rem;color:var(--text-main)}#article-content-body{scrollbar-width:thin;scrollbar-color:var(--accent-color) rgba(255,255,255,.05)}#article-content-body::-webkit-scrollbar{width:8px}#article-content-body::-webkit-scrollbar-track{background:#ffffff0d;border-radius:10px}#article-content-body::-webkit-scrollbar-thumb{background:var(--accent-color);border-radius:10px;transition:background .3s}#article-content-body::-webkit-scrollbar-thumb:hover{background:var(--accent-secondary)}#article-content h1{font-size:2.5rem;font-weight:700;color:var(--text-main);margin-top:2rem;margin-bottom:1.5rem;font-family:var(--font-heading);line-height:1.2;border-bottom:2px solid rgba(0,255,157,.2);padding-bottom:.5rem}#article-content h2{font-size:2rem;font-weight:600;color:var(--text-main);margin-top:2rem;margin-bottom:1rem;font-family:var(--font-heading);line-height:1.3;display:flex;align-items:center;gap:.5rem}#article-content h2:before{content:"";width:4px;height:2rem;background:var(--accent-color);border-radius:2px}#article-content h3{font-size:1.5rem;font-weight:600;color:var(--text-main);margin-top:1.5rem;margin-bottom:.75rem;font-family:var(--font-heading);line-height:1.4}#article-content h4{font-size:1.25rem;font-weight:500;color:var(--accent-color);margin-top:1rem;margin-bottom:.5rem;font-family:var(--font-heading)}#article-content h5,#article-content h6{font-size:1.1rem;font-weight:500;color:var(--text-muted);margin-top:1rem;margin-bottom:.5rem}#article-content p{margin-bottom:1.2rem;color:var(--text-muted);line-height:1.8}#article-content p:first-child{margin-top:0}#article-content ul,#article-content ol{margin-left:1.5rem;margin-bottom:1.5rem;color:var(--text-muted)}#article-content ul{list-style:none}#article-content ul li:before{content:"▸";color:var(--accent-color);font-weight:700;display:inline-block;width:1.2rem;margin-left:-1.2rem}#article-content ol{list-style:decimal;list-style-position:outside}#article-content li{margin-bottom:.5rem;line-height:1.7}#article-content li>ul,#article-content li>ol{margin-top:.5rem;margin-bottom:.5rem}#article-content a{color:var(--accent-secondary);text-decoration:underline;text-decoration-color:#00b8ff4d;text-underline-offset:3px;transition:all .3s}#article-content a:hover{color:var(--accent-color);text-decoration-color:var(--accent-color)}#article-content code{background:#00ff9d1a;color:var(--accent-color);padding:.2rem .4rem;border-radius:4px;font-family:var(--font-mono);font-size:.9em;border:1px solid rgba(0,255,157,.2)}#article-content pre{background:#0006;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1.5rem;margin:1.5rem 0;overflow-x:auto;position:relative}#article-content pre code{background:none;border:none;padding:0;color:#e0e0e0;font-size:.95rem;line-height:1.6}#article-content blockquote{border-left:4px solid var(--accent-color);background:#00ff9d0d;padding:1rem 1.5rem;margin:1.5rem 0;border-radius:0 8px 8px 0;font-style:italic;color:var(--text-main)}#article-content blockquote p{margin-bottom:0}#article-content strong,#article-content b{font-weight:600;color:var(--text-main)}#article-content em,#article-content i{font-style:italic;color:var(--accent-color)}#article-content img{max-width:100%;height:auto;border-radius:12px;margin:2rem 0;box-shadow:0 10px 30px #0000004d;border:1px solid rgba(255,255,255,.1)}#article-content figure{margin:2rem 0}#article-content figcaption{text-align:center;font-size:.9rem;color:var(--text-muted);margin-top:.5rem;font-style:italic}#article-content table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.95rem}#article-content thead{background:#00ff9d1a}#article-content th{padding:1rem;text-align:left;font-weight:600;color:var(--accent-color);border-bottom:2px solid var(--accent-color)}#article-content td{padding:.875rem 1rem;border-bottom:1px solid rgba(255,255,255,.1);color:var(--text-muted)}#article-content tr:hover td{background:#00ff9d0d}#article-content hr{border:none;height:1px;background:linear-gradient(90deg,transparent,var(--accent-color),transparent);margin:2rem 0}#article-content .callout{background:#00b8ff1a;border-left:4px solid var(--accent-secondary);padding:1rem 1.5rem;margin:1.5rem 0;border-radius:0 8px 8px 0;display:flex;gap:1rem;align-items:flex-start}#article-content .callout-icon{font-size:1.5rem;flex-shrink:0}#article-content .emoji{font-size:1.2em;vertical-align:middle}#article-content iframe,#article-content video{max-width:100%;border-radius:12px;margin:2rem 0;box-shadow:0 10px 30px #0000004d}#article-content details{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1rem;margin:1rem 0}#article-content summary{cursor:pointer;font-weight:600;color:var(--accent-color);-webkit-user-select:none;user-select:none;list-style:none}#article-content summary::marker,#article-content summary::-webkit-details-marker{display:none}#article-content summary:before{content:"▸";display:inline-block;margin-right:.5rem;transition:transform .2s}#article-content details[open] summary:before{transform:rotate(90deg)}#article-content .notion-column{display:inline-block;vertical-align:top}#article-content-body{scroll-padding-top:2rem;scroll-behavior:smooth}#article-loading,#article-error{padding:4rem 2rem;text-align:center}#article-loading i{color:var(--accent-color);animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:768px){#article-content{font-size:1rem}#article-content h1{font-size:2rem}#article-content h2{font-size:1.75rem}#article-content h3{font-size:1.35rem}#article-content pre{padding:1rem;font-size:.85rem}}@media(max-width:768px){#article-modal .modal-header{flex-direction:column!important;align-items:flex-start!important;gap:1rem!important}#article-modal .modal-header>div:first-child{width:100%!important}#article-modal .modal-header h3{font-size:1.2rem!important;line-height:1.4!important}#article-modal .modal-header>div:last-child{width:100%!important;justify-content:space-between!important}}@media(max-width:480px){#article-modal .modal-header h3{font-size:1.1rem!important}.notion-link-btn{font-size:.75rem!important;padding:.4rem .6rem!important}}#project-modal .project-modal-content{max-height:85vh;display:flex;flex-direction:column;overflow:hidden;padding:0!important}.project-modal-scroll{overflow-y:auto;flex:1;padding:2rem;scrollbar-width:thin;scrollbar-color:var(--accent-color) rgba(255,255,255,.05)}.project-modal-scroll::-webkit-scrollbar{width:6px}.project-modal-scroll::-webkit-scrollbar-track{background:#ffffff0d}.project-modal-scroll::-webkit-scrollbar-thumb{background-color:var(--accent-color);border-radius:3px}#project-notion-section{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--nav-border);animation:fadeIn .5s ease-in-out}#project-notion-section h3.notion-header{font-size:1.2rem;color:var(--accent-color);text-transform:uppercase;letter-spacing:2px;margin-bottom:2rem;display:flex;align-items:center;gap:.5rem}#project-notion-content{color:var(--text-main);font-family:var(--font-body);line-height:1.8;font-size:1rem}#project-notion-content h1,#project-notion-content h2,#project-notion-content h3{color:var(--text-main);margin-top:2.5rem;margin-bottom:1rem;font-family:var(--font-heading);font-weight:700;line-height:1.3}#project-notion-content h1{font-size:2.2rem;border-bottom:1px solid var(--nav-border);padding-bottom:.5rem}#project-notion-content h2{font-size:1.75rem;color:var(--accent-secondary)}#project-notion-content h3{font-size:1.4rem;color:var(--text-muted)}#project-notion-content p{margin-bottom:1.25rem;color:var(--text-main);opacity:.95;max-width:70ch}#project-notion-content ul,#project-notion-content ol{margin-bottom:1.5rem;padding-left:1.5rem}#project-notion-content li{margin-bottom:.5rem;color:var(--text-muted);padding-left:.5rem}#project-notion-content ul li::marker{color:var(--accent-color)}#project-notion-content pre{background:#0f0f0f;padding:1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.08);overflow-x:auto;margin:2rem 0;font-size:.9rem;box-shadow:inset 0 0 20px #00000080;color:#e0e0e0}#project-notion-content code{font-family:Fira Code,Consolas,monospace;color:#a5b4fc}#project-notion-content p code,#project-notion-content li code{background:var(--control-bg);padding:.2rem .4rem;border-radius:4px;color:var(--accent-color);font-size:.85em;font-weight:500;border:1px solid var(--nav-border)}#project-notion-content img{max-width:100%;height:auto;border-radius:12px;margin:2rem 0;box-shadow:0 10px 40px #0000001a;border:1px solid var(--nav-border);opacity:.95}#project-notion-content a{color:var(--accent-color);text-decoration:none;border-bottom:1px dotted var(--accent-color);transition:all .2s}#project-notion-content a:hover{background:var(--accent-glow);border-bottom-style:solid}#project-notion-content blockquote{border-left:4px solid var(--accent-color);margin:2rem 0;padding:1rem 1.5rem;background:var(--control-bg);border-radius:0 8px 8px 0;font-style:italic;color:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){#project-modal .project-modal-content{width:95%!important;margin:1rem auto;max-height:85vh}#project-modal .project-modal-header,#project-modal .project-modal-scroll{padding:1rem 1.25rem!important}#project-notion-content{width:100%;max-width:100%;overflow-x:hidden;word-break:break-word;overflow-wrap:break-word}#project-notion-content img,#project-notion-content video,#project-notion-content iframe{max-width:100%!important;height:auto!important}#project-notion-content pre{max-width:100vw;width:100%;white-space:pre;overflow-x:auto}#project-notion-content h1{font-size:1.5rem!important}#project-notion-content h2{font-size:1.25rem!important}#project-notion-content h3{font-size:1.1rem!important}}.project-info-list{margin-bottom:2rem;display:flex;gap:2rem;align-items:flex-start}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem}@media(max-width:768px){.project-col-right{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%}.project-info-list{justify-content:center;width:100%;gap:2rem;flex-wrap:wrap}.info-item{display:flex;flex-direction:row;align-items:center;gap:.8rem;text-align:left}.tech-tags{justify-content:center;margin-bottom:1.5rem}.project-col-right h4{justify-content:center;display:flex}.task-list{text-align:left;width:100%;padding-left:0;list-style-position:inside}}#project-notion-content p{max-width:100%!important}.read-more-review{background:none;border:none;color:var(--accent-color);cursor:pointer;font-size:.85rem;font-weight:600;padding:0;margin-left:5px;text-decoration:none;transition:all .3s ease;display:inline-block}.read-more-review:hover{color:var(--text-color);text-decoration:underline}.review-details-content{max-width:700px;width:90%;padding:0;background:var(--card-bg);border:2px solid var(--accent-color);box-shadow:0 0 40px #00ff9d4d;position:relative;border-radius:1rem;overflow:hidden}.review-details-content .close-modal{position:absolute;top:1.5rem;right:1.5rem;font-size:2rem;color:var(--text-muted);cursor:pointer;z-index:10;background:#0000004d;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s ease;line-height:1}.review-details-content .close-modal:hover{background:var(--accent-color);color:var(--bg-color);transform:rotate(90deg)}.review-details-header{display:flex;align-items:center;gap:1.5rem;background:linear-gradient(135deg,#00ff9d1a,#0003);padding:2rem 2.5rem;border-bottom:1px solid rgba(0,255,157,.2)}.review-details-header img{width:90px;height:90px;border-radius:50%;object-fit:cover;border:3px solid var(--accent-color);box-shadow:0 0 20px #00ff9d66;flex-shrink:0}.review-details-info{flex:1}.review-details-info h3{font-size:1.8rem;margin:0 0 .5rem;color:var(--text-color);font-weight:700}.review-details-info span{font-size:1rem;color:var(--text-muted);display:block;margin-bottom:.8rem;font-style:italic}.review-details-rating{color:#ffc107;font-size:1.3rem;letter-spacing:3px}.review-details-body{padding:2.5rem;display:flex;flex-direction:column;gap:1rem;background:var(--card-bg)}.review-details-body p{font-size:1.15rem;line-height:1.8;color:var(--text-color);text-align:justify;margin:0;white-space:pre-wrap;padding:0 1rem}.quote-icon-large{font-size:2.5rem;color:var(--accent-color);opacity:.2;align-self:flex-start}.quote-icon-large:last-child{align-self:flex-end;margin-top:-1rem}@media(max-width:768px){.review-details-content{width:95%;max-width:100%}.review-details-header{flex-direction:column;text-align:center;padding:2rem 1.5rem}.review-details-header img{width:80px;height:80px}.review-details-info h3{font-size:1.5rem}.review-details-body{padding:2rem 1.5rem}.review-details-body p{font-size:1.05rem}}.skills-filter-bar{display:flex;justify-content:center;gap:.6rem;margin-bottom:2rem;flex-wrap:wrap}.skills-filter-btn{background:#ffffff0a;color:var(--text-muted);border:1px solid rgba(255,255,255,.08);padding:.5rem 1.3rem;border-radius:50px;font-size:.82rem;font-weight:500;letter-spacing:.3px;cursor:pointer;transition:all .3s ease}.skills-filter-btn:hover{background:#ffffff14;color:var(--text-main);border-color:#ffffff26}.skills-filter-btn.active{background:var(--accent-color);color:#000;border-color:var(--accent-color);font-weight:600;box-shadow:0 0 12px #00dc8240}
