:root{--bg:#0c0c0e;--surface:#131316;--surface-2:#1a1a1f;--surface-inset:#0d0d10;--border:#ffffff14;--border-strong:#ffffff29;--text:#e8e8ed;--text-dim:#a1a1aa;--text-faint:#6b6b76;--glass:#161618cc;--accent:#2dd4bf;--accent-strong:#5eead4;--accent-soft:#99f6e4;--accent-rgb:45 212 191;--on-accent:#042f2e}:root[data-theme=light]{--bg:#f7f7f8;--surface:#fff;--surface-2:#eeeef1;--surface-inset:#f0f0f3;--border:#00000017;--border-strong:#0000002e;--text:#18181b;--text-dim:#52525b;--text-faint:#78787f;--glass:#ffffffbf;--accent:#0f766e;--accent-strong:#115e59;--accent-soft:#0d9488;--accent-rgb:15 118 110;--on-accent:#fff}:root{--primary-color:var(--accent);--secondary-color:#a3e635;--accent-color:var(--accent);--success-color:#a3e635;--warning-color:#f39c12;--error-color:#ffb4ab;--dark-color:var(--bg);--darker-color:var(--surface-inset);--card-bg:var(--surface);--glass-bg:var(--glass);--section-bg:var(--bg);--alt-section-bg:var(--surface);--text-color:var(--text);--text-muted:var(--text-dim);--text-light:var(--text-faint);--white:#fff;--nav-text:var(--text);--gradient-primary:var(--accent);--gradient-secondary:linear-gradient(135deg, #a3e635, #86c91a);--gradient-hero:var(--bg);--gradient-glow:#111113;--gradient-text:var(--accent);--transition:all .3s cubic-bezier(.4, 0, .2, 1);--transition-smooth:all .4s cubic-bezier(.4, 0, .2, 1);--transition-bounce:all .5s cubic-bezier(.68, -.55, .265, 1.55);--shadow-sm:0 1px 2px 0 #0006;--shadow-md:0 4px 6px -1px #00000080;--shadow-lg:0 10px 15px -3px #00000080;--shadow-glow:0 4px 16px #0000001f;--shadow-card:0 10px 30px -5px #0006;--border-light:var(--border-strong);--glass-border:1px solid var(--border)}html{scroll-behavior:smooth}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-hanken), "Inter", sans-serif;color:var(--text-color);background-color:var(--dark-color);text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;min-height:100vh;line-height:1.7;overflow-x:hidden}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--surface-inset)}::-webkit-scrollbar-thumb{background:var(--border-strong);border:2px solid var(--surface-inset);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#00f2ff}::selection{color:#00f2ff;background:#00f2ff40}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}section{transition:opacity .6s}.tech-tag{transition:all .25s!important}.tech-tag:hover{transform:translateY(-2px);color:#00363a!important;background:#00f2ff!important;border-color:#00f2ff!important}.glass-card{transition:box-shadow .3s,border-color .3s}.section-title{font-family:var(--font-space), sans-serif;color:var(--text);text-align:center;letter-spacing:-.02em;margin:0 auto 50px;font-size:clamp(2rem,4vw,2.8rem);font-weight:600;display:table;position:relative}.section-title:after{content:"";background:var(--accent);border-radius:2px;width:32px;height:2px;margin:14px auto 0;display:block}h1,h2,h3,h4,h5,h6{text-align:center;color:var(--text-color);margin-bottom:1rem}p{text-align:center;color:var(--text-muted)}.glass-card{background:var(--card-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.hero-content{opacity:1;width:100%;max-width:800px;transition:var(--transition);box-sizing:border-box;z-index:10;margin:0 auto;padding:0 20px;position:relative;transform:translateY(0)}@keyframes blink{0%,to{opacity:0}50%{opacity:0}}.hero-buttons{flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;display:flex}.about{box-sizing:border-box;width:100%;padding-inline:20px}.about-text{box-sizing:border-box;width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.about-text p{text-align:center;color:var(--text-color);margin-bottom:1.5rem;font-size:1.1rem;line-height:1.8}.about-text p:first-child{font-size:1.2rem;font-weight:500}.skills{text-align:center;box-sizing:border-box;width:100%;max-width:100vw;padding-inline:20px;position:relative;overflow:hidden}.skills:before,.skills:after{display:none}.skills .section-title{z-index:2;position:relative}.skills-categories{z-index:2;flex-wrap:wrap;justify-content:center;gap:15px;margin-bottom:60px;display:flex;position:relative}.category-filter{border:1px solid var(--border-strong);color:var(--text-light);cursor:pointer;transition:var(--transition);letter-spacing:.3px;background:0 0;border-radius:8px;padding:10px 22px;font-size:.88rem;font-weight:500}.category-filter:hover,.category-filter.active{background:rgb(var(--accent-rgb) / .1);color:var(--text);border-color:rgb(var(--accent-rgb) / .3)}.skill{opacity:0;will-change:transform, opacity;perspective:1000px;width:280px;height:240px;transition:all .8s cubic-bezier(.175,.885,.32,1.275);position:relative;transform:translateY(60px)scale(.8)}.skill.animate{opacity:1;transform:translateY(0)scale(1)}@keyframes neuralPulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.projects{text-align:center;box-sizing:border-box;width:100%;padding-inline:20px;position:relative;overflow:hidden}.project-filters{flex-wrap:wrap;justify-content:center;align-items:center;gap:15px;margin-bottom:40px;display:flex}.filter-btn{border:1px solid var(--border-strong);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:8px 20px;font-size:.88rem;font-weight:500;transition:all .3s;display:flex}.filter-btn:hover,.filter-btn.active{background:rgb(var(--accent-rgb) / .1);color:var(--text);border-color:rgb(var(--accent-rgb) / .3)}.project-grid{box-sizing:border-box;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));place-items:start center;gap:20px;width:100%;max-width:1000px;margin:0 auto;padding:0 20px;display:grid}.project-image{border-radius:16px 16px 0 0;height:150px;position:relative;overflow:hidden}.project-image img{object-fit:cover;width:100%;height:100%;transition:all .3s}.contact{text-align:center;box-sizing:border-box;width:100%;padding-inline:20px}.footer{text-align:center;border-top:1px solid var(--border-light);padding:30px 20px}.footer p{color:var(--text-muted)}.scroll-top{color:#00363a;cursor:pointer;opacity:0;visibility:hidden;z-index:990;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00f2ffd9;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.1rem;transition:all .3s;display:flex;position:fixed;bottom:30px;right:30px;box-shadow:0 4px 16px #00f2ff4d}@media (max-width:768px){.scroll-top{width:40px;height:40px;font-size:.95rem;bottom:20px;right:16px;box-shadow:0 4px 12px #00f2ff40}}@media (max-width:480px){.scroll-top{width:38px;height:38px;font-size:.9rem;bottom:16px;right:14px}}.scroll-top.active{opacity:1;visibility:visible}.scroll-top:hover{background:#00dbe7;transform:translateY(-5px);box-shadow:0 0 20px #00f2ff4d}@media (max-width:1200px){.project-grid{max-width:95%;padding:0 20px}.section-title{text-align:center}}@media (max-width:992px){.section-title{text-align:center;font-size:2.2rem}.skill{width:130px}.circle{width:110px;height:110px}.about-text{text-align:center;max-width:600px;margin:0 auto;padding-top:0;font-size:1.1rem}.about-text p{text-align:center;margin-bottom:22px}.about-text p:first-child{text-align:center;font-size:1.15rem}.cv-button{text-align:center;margin-top:30px}}@media (max-width:768px){body{padding-top:0}.hero-content{text-align:center;box-sizing:border-box;width:100%;padding:0 15px}.hero-content h1{font-size:2rem!important}.hero-content p{font-size:1.5rem!important}.about{width:100%;padding-inline:15px}.about-text{text-align:center;width:100%;padding:0 15px}.about-text p{text-align:center;font-size:.9rem}.circle{width:80px;height:80px}.skill p{margin-top:8px;font-size:.85rem}.project-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px;padding:0 10px}.project-image{height:80px}.hero-buttons{flex-direction:column;width:100%}.cv-button{text-align:center;margin-top:30px}}.cv-button{text-align:center;margin-top:auto;padding-top:10px}.experience{text-align:center;box-sizing:border-box;width:100%;padding-inline:20px}.experience-container{flex-direction:column;align-items:center;gap:30px;max-width:800px;margin:0 auto;display:flex}.company{color:var(--primary-color);text-align:center;margin-bottom:5px;font-size:1.1rem;font-weight:500;transition:all .3s}.duration{color:var(--text-muted);text-align:center;font-size:.95rem;font-style:italic;transition:all .3s}.project-grid,.experience-container{box-sizing:border-box;width:100%;max-width:1200px;margin:0 auto}img{box-sizing:border-box;max-width:100%;height:auto}section{box-sizing:border-box;width:100%;overflow-x:hidden}@media screen and (min-width:390px) and (max-width:428px){.project-image{border-radius:15px 15px 0 0!important;height:200px!important}}@media screen and (max-width:480px){.skill{height:160px;margin-bottom:10px}}@media (max-width:768px){.nav-link,.scroll-top{min-width:44px;min-height:44px}}#experience,#contact,#projects,#skills,#about{z-index:1;position:relative;opacity:1!important;visibility:visible!important;display:block!important}.tech-tag{color:#00f2ff;font-size:.8rem;font-family:var(--font-jetbrains), monospace;letter-spacing:.03em;background:#00f2ff0f;border:1px solid #00f2ff26;border-radius:9999px;padding:6px 16px;font-weight:500}@keyframes titleReveal{0%{opacity:0;filter:blur(8px);transform:translateY(30px)scale(.9)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@media (max-width:768px){.section-title{font-size:2.5rem}.hero-content{padding:1rem!important}.hero-content h1{margin-bottom:1rem!important;font-size:2.5rem!important}.experience-container{padding:0 10px}.nav-links{display:none!important}}@media (max-width:480px){.hero-content{padding:.5rem!important}.hero-content h1{margin-bottom:.75rem!important;font-size:2rem!important}.hero-buttons{gap:10px!important}}@media (max-width:768px){.skills-categories{flex-wrap:wrap;justify-content:center;gap:10px;padding:10px;position:relative;z-index:100!important;display:flex!important}.category-filter{-webkit-tap-highlight-color:rgb(var(--accent-rgb) / .3);touch-action:manipulation;min-width:44px;min-height:44px;padding:12px 20px;position:relative;z-index:101!important;pointer-events:auto!important;cursor:pointer!important}.category-filter:active{transform:scale(.97);background:var(--accent)!important;color:var(--on-accent)!important}.project-filters{position:relative;z-index:100!important}.filter-btn{-webkit-tap-highlight-color:rgb(var(--accent-rgb) / .3);touch-action:manipulation;min-width:44px;min-height:44px;position:relative;z-index:101!important;pointer-events:auto!important;cursor:pointer!important}.filter-btn:active{transform:scale(.97);background:var(--primary-color)!important;color:var(--on-accent)!important}#contact{z-index:10;position:relative}#contact form,#contact input,#contact textarea,#contact button{position:relative;z-index:20!important;pointer-events:auto!important}#contact input,#contact textarea{appearance:none;touch-action:manipulation;font-size:16px!important}#contact button[type=submit]{-webkit-tap-highlight-color:rgb(var(--accent-rgb) / .3);touch-action:manipulation;min-height:50px;cursor:pointer!important}#contact button[type=submit]:active{transform:scale(.98)}#contact a{-webkit-tap-highlight-color:rgb(var(--accent-rgb) / .3);touch-action:manipulation;min-width:44px;min-height:44px;line-height:44px;display:inline-block;position:relative;z-index:20!important;pointer-events:auto!important}#contact a:active{transform:scale(.98);color:var(--primary-color)!important}#contact>div>div>div:last-child>div{cursor:pointer;transition:transform .2s;position:relative;z-index:15!important}#contact>div>div>div:last-child>div:active{background:rgb(var(--accent-rgb) / .05);transform:scale(.98)}#contact>div>div>div:last-child>div a{text-align:left;width:100%;display:block;position:relative;z-index:25!important}.skill{position:relative;z-index:11!important;pointer-events:auto!important}.project-grid{position:relative;z-index:10!important}.glass-card{position:relative;z-index:11!important;pointer-events:auto!important}.view-project-btn{-webkit-tap-highlight-color:rgb(var(--accent-rgb) / .3);touch-action:manipulation;min-width:44px;min-height:44px;position:relative;z-index:20!important;pointer-events:auto!important}.view-project-btn:active{transform:scale(.97)}}.reveal,.reveal.active{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1!important;transition:none!important;animation:none!important;transform:none!important}}:root[data-theme=neu]{--bg:#e0e5ec;--surface:#e0e5ec;--surface-2:#e0e5ec;--surface-inset:#d9dee6;--border:transparent;--border-strong:#a3b1c666;--text:#3d4455;--text-dim:#5b6478;--text-faint:#737d92;--glass:#e0e5ec;--neu-light:#fff;--neu-dark:#a3b1c6;--neu-raised:9px 9px 18px var(--neu-dark), -9px -9px 18px var(--neu-light);--neu-raised-sm:5px 5px 10px var(--neu-dark), -5px -5px 10px var(--neu-light);--neu-pressed:inset 5px 5px 10px var(--neu-dark), inset -5px -5px 10px var(--neu-light);--neu-pressed-sm:inset 3px 3px 6px var(--neu-dark), inset -3px -3px 6px var(--neu-light);--shadow-sm:var(--neu-raised-sm);--shadow-md:var(--neu-raised-sm);--shadow-lg:var(--neu-raised);--shadow-card:var(--neu-raised);--shadow-glow:var(--neu-raised-sm);--accent:#5766e8;--accent-strong:#4352d1;--accent-soft:#6b79ee;--accent-rgb:87 102 232;--on-accent:#fff}:root[data-theme=neu] body{background-color:var(--bg)}:root[data-theme=neu] .glass-card,:root[data-theme=neu] .about-highlight-card,:root[data-theme=neu] .skill-card-modern,:root[data-theme=neu] .exp-card,:root[data-theme=neu] .contact-info-card,:root[data-theme=neu] .contact-form-card,:root[data-theme=neu] .modal-card{background:var(--bg);box-shadow:var(--neu-raised);-webkit-backdrop-filter:none;border:none;border-radius:20px}:root[data-theme=neu] .exp-card:hover{box-shadow:var(--neu-raised);border-color:#0000}:root[data-theme=neu] .language-badge,:root[data-theme=neu] .about-status-badge,:root[data-theme=neu] .meta-badge,:root[data-theme=neu] .ds-complexity-badge,:root[data-theme=neu] .ds-cell-tag,:root[data-theme=neu] .tech-tag{background:var(--bg);box-shadow:var(--neu-raised-sm);color:var(--text-dim);border:none}:root[data-theme=neu] .tech-tag:hover{box-shadow:var(--neu-pressed-sm);background:var(--bg)!important;color:var(--accent)!important;border-color:#0000!important}:root[data-theme=neu] .btn,:root[data-theme=neu] .hero-btn-primary,:root[data-theme=neu] .hero-btn-secondary,:root[data-theme=neu] .about-cv-btn,:root[data-theme=neu] .contact-submit-btn,:root[data-theme=neu] .nav-feedback-btn,:root[data-theme=neu] .ds-btn,:root[data-theme=neu] .detail-btn,:root[data-theme=neu] .category-filter,:root[data-theme=neu] .filter-btn,:root[data-theme=neu] .theme-toggle-btn,:root[data-theme=neu] .view-project-btn{background:var(--bg);color:var(--text);box-shadow:var(--neu-raised-sm);border:none;transition:box-shadow .2s,color .2s}:root[data-theme=neu] .btn:hover,:root[data-theme=neu] .hero-btn-primary:hover,:root[data-theme=neu] .hero-btn-secondary:hover,:root[data-theme=neu] .about-cv-btn:hover,:root[data-theme=neu] .contact-submit-btn:hover,:root[data-theme=neu] .nav-feedback-btn:hover,:root[data-theme=neu] .ds-btn:hover,:root[data-theme=neu] .detail-btn:hover,:root[data-theme=neu] .view-project-btn:hover,:root[data-theme=neu] .theme-toggle-btn:hover{background:var(--bg);color:var(--accent);box-shadow:var(--neu-pressed-sm);transform:none}:root[data-theme=neu] .category-filter:hover,:root[data-theme=neu] .category-filter.active,:root[data-theme=neu] .filter-btn:hover,:root[data-theme=neu] .filter-btn.active,:root[data-theme=neu] .ds-btn-primary{background:var(--bg);color:var(--accent);box-shadow:var(--neu-pressed-sm);border:none}:root[data-theme=neu] input,:root[data-theme=neu] textarea,:root[data-theme=neu] select{background:var(--bg);color:var(--text);box-shadow:var(--neu-pressed-sm);border:none}:root[data-theme=neu] input:focus,:root[data-theme=neu] textarea:focus,:root[data-theme=neu] select:focus{outline-offset:2px;border:none;outline:2px solid #5766e859}:root[data-theme=neu] ::-webkit-scrollbar-track{background:var(--bg)}:root[data-theme=neu] ::-webkit-scrollbar-thumb{background:var(--neu-dark);border-color:var(--bg)}:root[data-theme=neu] .scroll-top{background:var(--bg);color:var(--accent);box-shadow:var(--neu-raised-sm)}:root[data-theme=neu] .scroll-top:hover{background:var(--bg);box-shadow:var(--neu-pressed-sm);transform:none}:root[data-theme=neu] .hub-avatar-wrapper{background:var(--bg);box-shadow:var(--neu-raised-sm);border:none;padding:4px}:root[data-theme=neu] .hub-status{background:var(--bg);box-shadow:var(--neu-pressed-sm);border-radius:999px;padding:5px 16px}:root[data-theme=neu] .hub-cta,:root[data-theme=neu] .hub-cta-secondary,:root[data-theme=neu] .hub-social-btn{background:var(--bg);box-shadow:var(--neu-raised-sm);border:none;transition:box-shadow .2s,color .2s}:root[data-theme=neu] .hub-cta,:root[data-theme=neu] .hub-cta-secondary{border-radius:14px}:root[data-theme=neu] .hub-social-btn{border-radius:50%}:root[data-theme=neu] .hub-cta{color:var(--accent)}:root[data-theme=neu] .hub-cta-secondary{color:var(--text)}:root[data-theme=neu] .hub-cta:hover,:root[data-theme=neu] .hub-cta-secondary:hover,:root[data-theme=neu] .hub-social-btn:hover{background:var(--bg);color:var(--accent);box-shadow:var(--neu-pressed-sm)}:root[data-theme=neu] .hub-more-links{background:var(--bg);width:fit-content;max-width:100%;box-shadow:var(--neu-pressed-sm);border-radius:16px;gap:6px;margin:0 auto;padding:6px 10px}:root[data-theme=neu] .hub-more{margin-bottom:clamp(18px,3vh,28px)}:root[data-theme=neu] .hub-more-sep{color:var(--text-faint)}:root[data-theme=neu] .mobile-floating-hub-btn{background:var(--bg);color:var(--accent);box-shadow:var(--neu-raised-sm);-webkit-backdrop-filter:none;border:none;border-radius:14px}:root[data-theme=neu] .mobile-floating-hub-btn:hover{background:var(--bg);box-shadow:var(--neu-pressed-sm);transform:none}:root[data-theme=nord]{--bg:#2e3440;--surface:#3b4252;--surface-2:#434c5e;--surface-inset:#272c36;--border:#d8dee91a;--border-strong:#d8dee938;--text:#eceff4;--text-dim:#c0c8d6;--text-faint:#8f9bb0;--glass:#3b4252cc;--accent:#88c0d0;--accent-strong:#a3d0dd;--accent-soft:#b9dde6;--accent-rgb:136 192 208;--on-accent:#1c2230}:root[data-theme=dracula]{--bg:#282a36;--surface:#323445;--surface-2:#3b3e52;--surface-inset:#21222c;--border:#f8f8f21a;--border-strong:#f8f8f238;--text:#f8f8f2;--text-dim:#c9cadb;--text-faint:#8a8fb0;--glass:#323445cc;--accent:#bd93f9;--accent-strong:#d0aefb;--accent-soft:#e0c9fc;--accent-rgb:189 147 249;--on-accent:#1f1830}:root[data-theme=sepia]{--bg:#f4ecd8;--surface:#fbf5e4;--surface-2:#ebe1c6;--surface-inset:#efe5cb;--border:#5b462824;--border-strong:#5b462847;--text:#433422;--text-dim:#6b5a42;--text-faint:#8a7857;--glass:#fbf5e4cc;--accent:#b5651d;--accent-strong:#8f4e14;--accent-soft:#c97a2e;--accent-rgb:181 101 29;--on-accent:#fff}:root[data-theme=forest]{--bg:#16211b;--surface:#1d2b23;--surface-2:#25362c;--surface-inset:#111a15;--border:#c8ebcd1a;--border-strong:#c8ebcd38;--text:#e4f1e6;--text-dim:#aec5b3;--text-faint:#7b9482;--glass:#1d2b23cc;--accent:#7bc47f;--accent-strong:#95d399;--accent-soft:#b2e2b5;--accent-rgb:123 196 127;--on-accent:#0d1a11}:root[data-theme=glass]{--bg:#4f5bd5;--surface:#ffffff24;--surface-2:#fff3;--surface-inset:#ffffff14;--border:#ffffff47;--border-strong:#ffffff73;--text:#fff;--text-dim:#ffffffd1;--text-faint:#ffffff9e;--glass:#ffffff29;--accent:#ff9ad5;--accent-strong:#ffb5e1;--accent-soft:#ffd0ec;--accent-rgb:255 154 213;--on-accent:#3a0f2c;--shadow-card:0 8px 32px #1414464d;--shadow-lg:0 8px 32px #1414464d}:root[data-theme=glass] body{background:linear-gradient(135deg,#4f5bd5 0%,#962fbf 45%,#d62976 80%,#fa7e1e 100%) fixed}:root[data-theme=glass] section,:root[data-theme=glass] .about,:root[data-theme=glass] .skills,:root[data-theme=glass] .projects,:root[data-theme=glass] .contact,:root[data-theme=glass] .experience{background:0 0!important}:root[data-theme=glass] .glass-card,:root[data-theme=glass] .about-highlight-card,:root[data-theme=glass] .skill-card-modern,:root[data-theme=glass] .exp-card,:root[data-theme=glass] .contact-info-card,:root[data-theme=glass] .contact-form-card,:root[data-theme=glass] .modal-card,:root[data-theme=glass] .theme-menu{-webkit-backdrop-filter:blur(18px)saturate(160%);background:#ffffff24;border:1px solid #ffffff4d;border-radius:20px;box-shadow:0 8px 32px #1414464d,inset 0 1px #ffffff59}:root[data-theme=glass] .language-badge,:root[data-theme=glass] .about-status-badge,:root[data-theme=glass] .meta-badge,:root[data-theme=glass] .ds-cell-tag,:root[data-theme=glass] .tech-tag,:root[data-theme=glass] .btn,:root[data-theme=glass] .hero-btn-primary,:root[data-theme=glass] .hero-btn-secondary,:root[data-theme=glass] .about-cv-btn,:root[data-theme=glass] .contact-submit-btn,:root[data-theme=glass] .nav-feedback-btn,:root[data-theme=glass] .ds-btn,:root[data-theme=glass] .detail-btn,:root[data-theme=glass] .category-filter,:root[data-theme=glass] .filter-btn,:root[data-theme=glass] .theme-toggle-btn,:root[data-theme=glass] input,:root[data-theme=glass] textarea,:root[data-theme=glass] select{color:#fff;-webkit-backdrop-filter:blur(10px);background:#ffffff2e;border:1px solid #ffffff59}:root[data-theme=glass] .btn:hover,:root[data-theme=glass] .hero-btn-primary:hover,:root[data-theme=glass] .hero-btn-secondary:hover,:root[data-theme=glass] .about-cv-btn:hover,:root[data-theme=glass] .contact-submit-btn:hover,:root[data-theme=glass] .ds-btn:hover,:root[data-theme=glass] .category-filter:hover,:root[data-theme=glass] .category-filter.active,:root[data-theme=glass] .filter-btn.active{color:#fff;background:#ffffff52}:root[data-theme=neon]{--bg:#0a0a14;--surface:#11111f;--surface-2:#181830;--surface-inset:#07070f;--border:#00f0ff38;--border-strong:#00f0ff80;--text:#e8faff;--text-dim:#9fd8e6;--text-faint:#5f9db0;--glass:#11111fd9;--accent:#00f0ff;--accent-strong:#5cf6ff;--accent-soft:#a3faff;--accent-rgb:0 240 255;--on-accent:#00262a;--shadow-card:0 0 18px #00f0ff2e;--shadow-lg:0 0 18px #00f0ff2e}:root[data-theme=neon] .glass-card,:root[data-theme=neon] .about-highlight-card,:root[data-theme=neon] .skill-card-modern,:root[data-theme=neon] .exp-card,:root[data-theme=neon] .contact-info-card,:root[data-theme=neon] .contact-form-card,:root[data-theme=neon] .modal-card,:root[data-theme=neon] .theme-menu{background:var(--surface);border:1px solid #00f0ff8c;box-shadow:0 0 14px #00f0ff40,inset 0 0 14px #00f0ff0f}:root[data-theme=neon] .section-title:after{background:#ff2bd6;box-shadow:0 0 10px #ff2bd6}:root[data-theme=neon] .hero-btn-primary,:root[data-theme=neon] .about-cv-btn,:root[data-theme=neon] .contact-submit-btn{color:#00f0ff;text-shadow:0 0 8px #00f0ffb3;background:0 0;border:1px solid #00f0ff;box-shadow:0 0 12px #00f0ff80}:root[data-theme=neon] .hero-btn-primary:hover,:root[data-theme=neon] .about-cv-btn:hover,:root[data-theme=neon] .contact-submit-btn:hover{color:#00f0ff;background:#00f0ff26;box-shadow:0 0 22px #00f0ffcc}:root[data-theme=neon] .hero-btn-secondary{color:#ff2bd6;background:0 0;border:1px solid #ff2bd6;box-shadow:0 0 12px #ff2bd673}:root[data-theme=neon] .hero-btn-secondary:hover{color:#ff2bd6;background:#ff2bd626;box-shadow:0 0 22px #ff2bd6bf}:root[data-theme=brutal]{--bg:#fff7d6;--surface:#fff;--surface-2:#ffe14d;--surface-inset:#fff0a8;--border:#111;--border-strong:#111;--text:#111;--text-dim:#2b2b2b;--text-faint:#4a4a4a;--glass:#fff;--accent:#ff5a36;--accent-strong:#e0451f;--accent-soft:#ff7a5c;--accent-rgb:255 90 54;--on-accent:#111;--shadow-card:6px 6px 0 #111;--shadow-lg:6px 6px 0 #111}:root[data-theme=brutal] .glass-card,:root[data-theme=brutal] .about-highlight-card,:root[data-theme=brutal] .skill-card-modern,:root[data-theme=brutal] .exp-card,:root[data-theme=brutal] .contact-info-card,:root[data-theme=brutal] .contact-form-card,:root[data-theme=brutal] .modal-card,:root[data-theme=brutal] .theme-menu{-webkit-backdrop-filter:none;background:#fff;border:3px solid #111;border-radius:0;box-shadow:6px 6px #111}:root[data-theme=brutal] .language-badge,:root[data-theme=brutal] .about-status-badge,:root[data-theme=brutal] .meta-badge,:root[data-theme=brutal] .ds-cell-tag,:root[data-theme=brutal] .tech-tag,:root[data-theme=brutal] .btn,:root[data-theme=brutal] .hero-btn-primary,:root[data-theme=brutal] .hero-btn-secondary,:root[data-theme=brutal] .about-cv-btn,:root[data-theme=brutal] .contact-submit-btn,:root[data-theme=brutal] .nav-feedback-btn,:root[data-theme=brutal] .ds-btn,:root[data-theme=brutal] .detail-btn,:root[data-theme=brutal] .category-filter,:root[data-theme=brutal] .filter-btn,:root[data-theme=brutal] .theme-toggle-btn{color:#111;background:#ffe14d;border:3px solid #111;border-radius:0;font-weight:700;box-shadow:4px 4px #111}:root[data-theme=brutal] .btn:hover,:root[data-theme=brutal] .hero-btn-primary:hover,:root[data-theme=brutal] .hero-btn-secondary:hover,:root[data-theme=brutal] .about-cv-btn:hover,:root[data-theme=brutal] .contact-submit-btn:hover,:root[data-theme=brutal] .ds-btn:hover,:root[data-theme=brutal] .category-filter:hover,:root[data-theme=brutal] .category-filter.active,:root[data-theme=brutal] .filter-btn.active,:root[data-theme=brutal] .theme-toggle-btn:hover{color:#111;background:#ff5a36;transform:translate(3px,3px);box-shadow:1px 1px #111}:root[data-theme=brutal] input,:root[data-theme=brutal] textarea,:root[data-theme=brutal] select{color:#111;background:#fff;border:3px solid #111;border-radius:0}:root[data-theme=brutal] .section-title:after{background:#111;border-radius:0;width:56px;height:5px}.scroll-top{background:rgb(var(--accent-rgb) / .85);color:#fff;cursor:pointer;opacity:0;visibility:hidden;z-index:990;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:all .3s;display:flex;position:fixed;bottom:30px;right:30px;box-shadow:0 4px 16px #0000001f}.scroll-top.visible{opacity:1;visibility:visible}.scroll-top:hover{background:var(--accent);transform:translateY(-2px)}.scroll-top i{font-size:1.1rem}@media (max-width:768px){.scroll-top{width:40px;height:40px;font-size:.95rem;bottom:20px;right:16px}}.mobile-floating-hub-btn{z-index:995;background:var(--glass);border:1px solid rgb(var(--accent-rgb) / .25);color:var(--accent);-webkit-backdrop-filter:blur(12px);font-family:var(--font-hanken), sans-serif;border-radius:8px;align-items:center;gap:8px;padding:10px 18px;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex;position:fixed;bottom:20px;left:16px;box-shadow:0 6px 20px #00000080}.mobile-floating-hub-btn:hover{background:rgb(var(--accent-rgb) / .1);border-color:rgb(var(--accent-rgb) / .4);transform:translateY(-2px)}@media (max-width:768px){body:has(.mobile-floating-hub-btn){padding-bottom:76px}}@media (min-width:769px){.mobile-floating-hub-btn{display:none!important}}.project-image-placeholder.project-image-placeholder{box-sizing:border-box;text-align:center;background:linear-gradient(135deg, rgb(var(--accent-rgb) / .18), #a3e6351a), var(--surface-2);width:100%;height:100%;min-height:200px;color:var(--text);font-family:var(--font-space), sans-serif;justify-content:center;align-items:center;padding:24px;font-size:1.4rem;font-weight:600;display:flex}.project-image-placeholder.project-image-placeholder--icon{letter-spacing:.04em;min-height:0;padding:0;font-size:2rem}.project-image-placeholder.project-image-placeholder--backdrop{letter-spacing:.06em;color:var(--primary-color);opacity:.55;align-items:flex-start;padding-top:18%;font-size:clamp(3.5rem,9vw,5.5rem)}:root{--section-space:clamp(36px, 7vw, 100px)}#about,#experience,#education,#skills,#projects,#contact{padding-block:var(--section-space)}.timeline-container,.experience-container{flex-direction:column;gap:20px;max-width:900px;margin:0 auto;display:flex}.exp-card{background:var(--surface);border:1px solid var(--border);text-align:left;border-radius:12px;padding:28px 32px;transition:border-color .3s}.exp-card:hover{border-color:var(--border-strong)}.exp-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.exp-title{font-family:var(--font-space), sans-serif;color:var(--text);text-align:left;margin:0 0 4px;font-size:1.15rem;font-weight:600}.exp-company{font-family:var(--font-hanken), sans-serif;color:var(--accent);text-align:left;margin:0;font-size:.88rem;font-weight:500}.exp-duration{font-family:var(--font-jetbrains), monospace;color:var(--text-faint);white-space:nowrap;background:var(--border);border:1px solid var(--border);border-radius:6px;flex-shrink:0;padding:4px 12px;font-size:.75rem}.exp-list{margin:0 0 18px;padding:0;list-style:none}.exp-list-item{border-left:2px solid var(--border);color:var(--text-dim);font-family:var(--font-hanken), sans-serif;text-align:left;padding:6px 0 6px 16px;font-size:.93rem;line-height:1.6}.exp-tech-stack{flex-wrap:wrap;gap:6px;display:flex}.tech-tag{font-family:var(--font-jetbrains), monospace;background:rgb(var(--accent-rgb) / .06);color:var(--text-faint);border:1px solid var(--border);letter-spacing:.02em;border-radius:4px;padding:3px 10px;font-size:.7rem;transition:color .2s}.tech-tag:hover{color:var(--text-dim)}@media (max-width:768px){.exp-card{padding:22px 20px}.exp-header{flex-direction:column;align-items:flex-start;gap:8px}.exp-list-item{font-size:.9rem}}a:focus-visible,button:focus-visible,[role=button]:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.skip-link{z-index:10000;background:var(--accent);color:var(--on-accent);font-family:var(--font-hanken), sans-serif;border-radius:6px;padding:10px 16px;font-weight:600;text-decoration:none;transition:transform .15s;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}:root{--grid-line:#ffffff0b;--grid-glow:rgb(var(--accent-rgb) / .14)}:root[data-theme=light]{--grid-line:#0f172a0f;--grid-glow:rgb(var(--accent-rgb) / .1)}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(ellipse 60% 45% at 50% -5%, var(--grid-glow), transparent 70%), linear-gradient(to right, var(--grid-line) 1px, transparent 1px) 0 0 / 44px 44px, linear-gradient(to bottom, var(--grid-line) 1px, transparent 1px) 0 0 / 44px 44px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(90% 75% at 50% 0,#000 35%,#0000 100%);mask-image:radial-gradient(90% 75% at 50% 0,#000 35%,#0000 100%)}
