.svg-icon[data-v-abfa9eff]{flex-shrink:0}.header[data-v-77bbfdeb]{background:var(--bg-nav-overlay);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;border-bottom:1px solid var(--border-primary);position:fixed;top:0;left:0;right:0}.header-inner[data-v-77bbfdeb]{justify-content:space-between;align-items:center;height:80px;display:flex}.logo-link[data-v-77bbfdeb]{color:var(--text-link-hover);font-size:1.5rem;font-weight:700;text-decoration:none}.nav a[data-v-77bbfdeb]{color:var(--text-filter-btn);margin-left:32px;font-weight:500;text-decoration:none;transition:color .3s}.nav a[data-v-77bbfdeb]:hover{color:var(--accent)}.mobile-menu-btn[data-v-77bbfdeb]{color:var(--text-link-hover);cursor:pointer;border:1px solid var(--border-primary);background:0 0;border-radius:4px;justify-content:center;align-items:center;width:40px;height:40px;padding:4px;transition:border-color .3s;display:none}.mobile-menu-btn[data-v-77bbfdeb]:hover{border-color:var(--accent)}.mobile-menu-btn[data-v-77bbfdeb] .svg-icon{color:currentColor}@media (width<=768px){.nav[data-v-77bbfdeb]{background:var(--bg-primary);border-top:1px solid var(--border-primary);opacity:0;visibility:hidden;flex-direction:column;gap:16px;padding:20px;transition:all .3s;display:none;position:absolute;top:80px;left:0;right:0;transform:translateY(-20px)}.nav.open[data-v-77bbfdeb]{opacity:1;visibility:visible;display:flex;transform:translateY(0)}.mobile-menu-btn[data-v-77bbfdeb]{display:flex}.nav a[data-v-77bbfdeb]{margin-left:0;padding:8px 0;font-size:1.1rem}}.footer[data-v-697fd97d]{background:var(--bg-secondary);border-top:1px solid var(--border-primary);margin-top:80px;padding:50px 0 30px}.footer-content[data-v-697fd97d]{color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;font-size:.95rem;display:flex}.social-links a[data-v-697fd97d]{color:var(--text-muted);margin-left:24px;text-decoration:none;transition:color .3s}.social-links a[data-v-697fd97d]:hover{color:var(--accent)}@media (width<=768px){.footer-content[data-v-697fd97d]{text-align:center;justify-content:center}.social-links[data-v-697fd97d]{margin-top:10px}.social-links a[data-v-697fd97d]{margin-left:16px}}.section__title[data-v-4461d62a]{text-align:center;margin-bottom:60px;font-size:2.5rem}.hero[data-v-46566d9e]{background:linear-gradient(135deg, var(--bg-gradient-start) 0%, var(--bg-gradient-end) 100%);text-align:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-content[data-v-46566d9e]{max-width:820px;margin:0 auto}.hero-badge[data-v-46566d9e]{background:var(--accent-bg-light);color:var(--accent);border:1px solid var(--accent-border-light);border-radius:50px;margin-bottom:20px;padding:8px 20px;font-size:1.1rem;font-weight:600;display:inline-block}.hero-title[data-v-46566d9e]{margin-bottom:24px;font-size:4.2rem;font-weight:700;line-height:1.1}.hero-subtitle[data-v-46566d9e]{color:var(--text-secondary);margin-bottom:40px;font-size:1.45rem;line-height:1.4}.hero-highlights[data-v-46566d9e]{flex-wrap:wrap;justify-content:center;gap:32px;margin-bottom:50px;display:flex}@media (width<=499px){.hero-highlights[data-v-46566d9e]{flex-direction:column;gap:8px}}.highlight-item[data-v-46566d9e]{background:var(--bg-hero-item);border-radius:12px;padding:12px 24px;font-size:1.1rem;font-weight:500}.accent[data-v-46566d9e]{color:var(--accent-bright)}.hero-buttons[data-v-46566d9e]{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}@media (width<=640px){.hero-buttons[data-v-46566d9e]{flex-direction:column}}.btn[data-v-46566d9e]{border:2px solid var(--border-hero-item);color:var(--text-primary);border-radius:8px;padding:14px 32px;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn[data-v-46566d9e]:hover{border-color:var(--accent);color:#fff}.btn.primary[data-v-46566d9e]{background:var(--accent);color:#fff;border-color:var(--accent)}.btn.primary[data-v-46566d9e]:hover{background:var(--accent-hover);transform:translateY(-3px)}.about-grid[data-v-57d9de88]{grid-template-columns:2fr 1fr;align-items:start;gap:60px;display:grid}@media (width<=1024px){.about-grid[data-v-57d9de88]{grid-template-columns:1fr;gap:40px}}@media (width<=640px){.about-grid[data-v-57d9de88]{gap:24px}}.about-text p[data-v-57d9de88]{color:var(--text-secondary);margin-bottom:20px;font-size:1.15rem}@media (width<=640px){.about-text p[data-v-57d9de88]{margin-bottom:16px;font-size:1rem}}.about-info p[data-v-57d9de88]{color:var(--text-secondary);margin-bottom:16px;font-size:1.1rem;line-height:1.6}@media (width<=640px){.about-info p[data-v-57d9de88]{margin-bottom:12px;font-size:1rem}}.about-info strong[data-v-57d9de88]{color:var(--text)}.skills-grid[data-v-cc7e5eb6]{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;display:grid}.skill-category h3[data-v-cc7e5eb6]{color:var(--accent);margin-bottom:16px}.skill-tags[data-v-cc7e5eb6]{flex-wrap:wrap;gap:10px;display:flex}.skill-tags span[data-v-cc7e5eb6]{background:var(--bg-skill-tag);border-radius:9999px;padding:10px 18px;font-size:1rem}.modal-overlay[data-v-ecf6fd2c]{z-index:9999;background:var(--bg-modal-overlay);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content[data-v-ecf6fd2c]{background:var(--white-modal);width:95%;max-width:1200px;height:90vh;box-shadow:var(--shadow-color);border-radius:12px;flex-direction:column;display:flex;position:relative;overflow:hidden}.modal-header[data-v-ecf6fd2c]{border-bottom:1px solid var(--border-medium);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-title[data-v-ecf6fd2c]{color:var(--text-modal-title);margin:0;font-size:1.2rem}.modal-close[data-v-ecf6fd2c]{width:36px;height:36px;color:var(--text-modal-close);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background .2s,color .2s;display:flex}.modal-close[data-v-ecf6fd2c]:hover{background:var(--border-medium);color:var(--text-link-hover)}.modal-body[data-v-ecf6fd2c]{flex:1;overflow:hidden}.modal-iframe[data-v-ecf6fd2c]{border:none;width:100%;height:100%}.preloader[data-v-ecf6fd2c]{background:var(--bg-card);z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.spinner[data-v-ecf6fd2c]{width:50px;height:50px;animation:1s linear infinite spin-ecf6fd2c}.spinner-path[data-v-ecf6fd2c]{stroke:var(--spinner-color);stroke-dasharray:80;stroke-dashoffset:60px;stroke-linecap:round}@keyframes spin-ecf6fd2c{to{transform:rotate(360deg)}}.modal-enter-active[data-v-ecf6fd2c],.modal-leave-active[data-v-ecf6fd2c]{transition:opacity .3s}.modal-enter-from[data-v-ecf6fd2c],.modal-leave-to[data-v-ecf6fd2c]{opacity:0}.modal-enter-active .modal-content[data-v-ecf6fd2c]{transition:transform .3s}.modal-enter-from .modal-content[data-v-ecf6fd2c]{transform:scale(.95)}.project-card[data-v-06d03ec8]{background:var(--bg-card);border-radius:12px;flex-direction:column;height:100%;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden}.project-card[data-v-06d03ec8]:hover{box-shadow:var(--shadow-card);transform:translateY(-5px)}.project-image-container[data-v-06d03ec8]{position:relative;overflow:hidden}.project-image[data-v-06d03ec8]{object-fit:contain;object-position:center;width:100%;height:100%;min-height:400px;transition:transform .4s}@media (width<=640px){.project-image[data-v-06d03ec8]{min-height:300px}}.project-card:hover .project-image[data-v-06d03ec8]{transform:scale(1.05)}.year-badge[data-v-06d03ec8]{background:var(--black);color:var(--white);border-radius:20px;padding:4px 10px;font-size:.85rem;font-weight:600;position:absolute;top:12px;right:12px}.project-info[data-v-06d03ec8]{flex-direction:column;flex-grow:1;padding:20px;display:flex}.project-title[data-v-06d03ec8]{color:var(--text-link-hover);margin:0 0 12px;font-size:1.35rem}.project-description[data-v-06d03ec8]{color:var(--text-project-desc);margin-bottom:16px;line-height:1.5}.technologies[data-v-06d03ec8]{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.tech-tag[data-v-06d03ec8]{background:var(--bg-tech-tag);color:var(--text-tech-tag);border-radius:9999px;padding:4px 10px;font-size:.85rem}.project-links[data-v-06d03ec8]{gap:12px;margin-top:auto;display:flex}@media (width<=399px){.project-links[data-v-06d03ec8]{flex-direction:column}}.link-btn[data-v-06d03ec8]{border:1px solid var(--border-tech-tag);color:var(--text-filter-btn);cursor:pointer;text-align:center;border-radius:8px;padding:10px 18px;font-weight:500;text-decoration:none;transition:all .2s}.link-btn[data-v-06d03ec8]:hover{background:var(--border-medium);color:var(--text-link-hover)}.link-btn.primary[data-v-06d03ec8]{background:var(--accent);border-color:var(--accent);color:var(--white)}.link-btn.primary[data-v-06d03ec8]:hover{background:var(--accent-hover)}.filter-group[data-v-706ac2ee]{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:24px;display:flex}.filter-group h3[data-v-706ac2ee]{color:var(--text-about-heading);flex-shrink:0;font-size:1.1rem}.filter-buttons[data-v-706ac2ee]{flex-wrap:wrap;gap:10px;display:flex}.filter-buttons input[type=radio][data-v-706ac2ee]{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.filter-buttons label[data-v-706ac2ee]{background:var(--bg-filter-btn);border:1px solid var(--border-filter-btn);color:var(--text-filter-btn);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;padding:10px 20px;transition:all .2s}.filter-buttons label.active[data-v-706ac2ee],.filter-buttons label[data-v-706ac2ee]:hover{background:var(--accent);border-color:var(--border-filter-btn-active);color:var(--text-link-hover)}@media (width<=768px){.filter-buttons[data-v-706ac2ee]{width:100%}}.filters[data-v-7a7ba71c]{flex-flow:column wrap;gap:0;margin-bottom:40px;display:flex}.projects-empty[data-v-7a7ba71c]{text-align:center}.projects-grid[data-v-7a7ba71c]{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:24px;display:grid}@media (width<=640px){.projects-grid[data-v-7a7ba71c]{grid-template-columns:1fr}}.contact-section[data-v-958f8a61]{background:var(--bg-about-card)}.contact-content[data-v-958f8a61]{grid-template-columns:2fr 1fr;align-items:center;gap:80px;max-width:910px;margin:0 auto;display:grid}.contact-text[data-v-958f8a61]{color:var(--text-about-heading);margin-bottom:40px;font-size:1.25rem;line-height:1.5}.contact-links[data-v-958f8a61]{grid-template-columns:1fr 1fr;gap:20px;display:grid}.contact-item[data-v-958f8a61]{background:var(--bg-card);color:var(--text-link);border-radius:12px;align-items:center;gap:20px;padding:20px;text-decoration:none;transition:all .3s;display:flex}.contact-item[data-v-958f8a61]:hover{background:var(--bg-card-hover);color:var(--text-link-hover);transform:translateY(-4px)}.contact-item .icon[data-v-958f8a61]{--icon-size:24px}.contact-item strong[data-v-958f8a61]{margin-bottom:4px;font-size:1.05rem;display:block}.contact-note[data-v-958f8a61]{background:var(--bg-contact-note);border-left:5px solid var(--border-accent);border-radius:16px;padding:32px}.contact-note p[data-v-958f8a61]{color:var(--text-contact-note)}.location[data-v-958f8a61]{color:var(--text-muted);font-size:1.1rem}@media (width<=999px){.contact-content[data-v-958f8a61]{grid-template-columns:1fr;gap:50px}.contact-links[data-v-958f8a61]{grid-template-columns:1fr}}.skip-link[data-v-02789454]{background:var(--accent);color:#fff;z-index:9999;padding:12px 24px;font-weight:600;text-decoration:none;transition:top .2s;position:absolute;top:-100%;left:0}.skip-link[data-v-02789454]:focus{top:0}:root{--black:#000;--white:#fff;--gray-900:#0a0a0a;--gray-850:#0f0f0f;--gray-800:#1a1a1a;--gray-750:#1e1e1e;--gray-650:#252525;--gray-600:#2a2a2a;--gray-300:#b3b3b3;--gray-280:#b0b0b0;--gray-250:#bbb;--gray-220:#ccc;--gray-200:#ddd;--gray-180:#aaa;--gray-150:#888;--border-dark:#444;--border-medium:#333;--border-light:#222;--accent:#06f;--accent-bright:#38f;--accent-hover:#0052cc;--bg-primary:var(--gray-850);--bg-secondary:var(--gray-900);--bg-card:var(--gray-750);--bg-card-hover:var(--gray-650);--bg-tech-tag:var(--gray-600);--bg-filter-btn:var(--gray-750);--bg-about-card:var(--gray-900);--bg-technique-card:var(--gray-750);--bg-hero-item:var(--gray-750);--bg-contact-note:var(--gray-800);--bg-modal-overlay:#000c;--bg-nav-overlay:rgba(var(--bg-primary), .95);--bg-gradient-start:var(--bg-secondary);--bg-gradient-end:var(--gray-800);--bg-skill-tag:var(--gray-750);--accent-bg-light:#0066ff26;--accent-border-light:#0066ff4d;--text-primary:var(--gray-200);--text-secondary:var(--gray-280);--text-muted:var(--gray-150);--text-link:var(--gray-200);--text-link-hover:var(--white);--text-modal-title:var(--white);--text-modal-close:var(--gray-180);--text-project-desc:var(--gray-300);--text-tech-tag:var(--gray-180);--text-filter-btn:var(--gray-220);--text-filter-btn-hover:var(--white);--text-about-heading:var(--gray-220);--text-contact-note:var(--gray-250);--border-primary:var(--border-light);--border-accent:var(--accent);--border-tech-tag:var(--border-dark);--border-filter-btn:var(--border-medium);--border-filter-btn-active:var(--accent);--border-hero-item:var(--border-dark);--shadow-color:#00000080;--shadow-card:#0000004d;--spinner-color:var(--accent);--white-modal:#fff}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-primary);color:var(--text-primary);font-family:Segoe UI,system-ui,sans-serif;line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:0 20px}.section{padding:100px 0}:focus-visible{outline:3px solid var(--border-accent);outline-offset:3px;border-radius:4px}a:focus:not(:focus-visible),button:focus:not(:focus-visible){outline:none}
