@font-face{font-family:Inter;font-style:normal;font-weight:300 600;font-display:swap;src:url(/portfolio/fonts/inter.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 700;font-display:swap;src:url(/portfolio/fonts/playfair-display.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400;font-display:swap;src:url(/portfolio/fonts/playfair-display-italic.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Metal Mania;font-style:normal;font-weight:400;font-display:swap;src:url(/portfolio/fonts/metal-mania.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Orbitron;font-style:normal;font-weight:400 700;font-display:swap;src:url(/portfolio/fonts/orbitron.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg-primary:#0f172a;--bg-secondary:#1e293b;--text-primary:#f8fafc;--text-secondary:#94a3b8;--accent:#6366f1;--accent-glow:#6366f180;--glass-bg:#1e293bb3;--glass-border:#ffffff1a;--glass-shadow:0 8px 32px 0 #0000004d;--font-sans:"Inter", sans-serif;--font-serif:"Playfair Display", serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden}.container{max-width:1000px;margin:0 auto;padding:0 2rem}.hero{background:radial-gradient(circle at center, var(--bg-secondary) 0%, var(--bg-primary) 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative}.hero-content{text-align:center;animation:1s ease-out forwards fadeIn}.avatar-container{margin-bottom:2rem}.avatar-image{object-fit:cover;width:240px;height:240px;box-shadow:0 0 30px var(--accent-glow);border:4px solid var(--bg-primary);border-radius:50%;margin:0 auto;display:block}.title{font-family:var(--font-serif);background:linear-gradient(90deg,#fff,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:4rem}.subtitle{color:var(--text-secondary);text-transform:uppercase;letter-spacing:2px;margin-bottom:1rem;font-size:1.25rem}.slogan{font-family:var(--font-serif);color:var(--accent);font-size:1.1rem;font-style:italic}.section{padding:6rem 0}.section-title{font-family:var(--font-serif);text-align:center;margin-bottom:1.5rem;scroll-margin-top:2rem;font-size:2.5rem}.scroll-indicator{color:var(--text-secondary);font-size:2rem;transition:color .3s,transform .3s;animation:2s infinite bounce;position:absolute;bottom:2rem}.scroll-indicator:hover{color:var(--accent)}.skills-grid{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.skill-tag{background:var(--glass-bg);border:1px solid var(--glass-border);cursor:pointer;-webkit-backdrop-filter:blur(10px);border-radius:9999px;padding:.75rem 1.5rem;font-size:.9rem;transition:all .3s}.skill-tag.selected{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 0 15px var(--accent-glow)}.skill-pie{vertical-align:text-top;opacity:.2;border:1px solid;border-radius:50%;width:14px;height:14px;margin-left:6px;display:inline-block;position:relative;top:2px}.deselect-container{justify-content:center;margin-top:1.5rem;display:flex}.deselect-btn{color:var(--accent);border:1px solid var(--accent);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;transition:all .3s;display:flex}.deselect-btn:hover{background:var(--accent);color:#fff;box-shadow:0 0 10px var(--accent-glow)}@media (hover:hover) and (pointer:fine){.skill-tag:hover{border-color:var(--accent);box-shadow:0 0 15px var(--accent-glow);color:#fff;transform:translateY(-2px)}}.skill-search-wrapper{justify-content:center;margin-bottom:1.5rem;display:flex}.skill-search{border:none;border-bottom:1px solid var(--glass-border);color:var(--text-secondary);font-family:var(--font-sans);text-align:center;opacity:.5;caret-color:#0000;background:0 0;outline:none;width:150px;padding:.5rem 1rem;font-size:.85rem;transition:all .3s}.skill-search:focus{opacity:1;border-color:var(--accent);width:250px;color:var(--text-primary);caret-color:var(--accent)}.skill-search::placeholder{color:var(--text-secondary);opacity:.6}.selected-skills-grid{flex-wrap:wrap;gap:1.5rem;margin-bottom:2rem;display:flex}.selected-skill-card{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);min-width:200px;box-shadow:var(--glass-shadow);border-radius:8px;flex-direction:column;padding:1.5rem;display:flex}.selected-skill-title{color:var(--text-primary);text-align:center;margin-bottom:1rem;font-size:1.25rem;font-weight:500}.selected-skill-stats{color:var(--text-secondary);font-size:.9rem;line-height:1.5}.projects-timeline{flex-direction:column;gap:2rem;display:flex}.project-card{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);box-shadow:var(--glass-shadow);border-radius:16px;padding:2rem;transition:transform .3s,box-shadow .3s}.project-card:hover{border-color:#fff3;transform:translateY(-5px);box-shadow:0 12px 40px #0006}.project-header{justify-content:space-between;align-items:baseline;margin-bottom:.5rem;display:flex}.project-title{color:var(--text-primary);margin-bottom:0;font-size:1.5rem}.project-date{color:var(--text-secondary);white-space:nowrap;flex-shrink:0;margin-left:1rem;font-family:monospace;font-size:.85rem}.project-role{color:var(--accent);margin-bottom:1rem;font-size:.9rem;font-weight:500}.project-desc{color:var(--text-secondary);margin-bottom:1.5rem}.project-tech{flex-wrap:wrap;gap:.5rem;display:flex}.tech-tag{color:var(--text-secondary);background:#ffffff0d;border-radius:4px;padding:.25rem .75rem;font-size:.8rem}.tech-tag.matched{background:var(--accent);color:#fff}.others-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;display:grid}.other-card{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);box-shadow:var(--glass-shadow);border-radius:16px;padding:2rem;transition:transform .3s,box-shadow .3s}.other-card:hover{border-color:#fff3;transform:translateY(-5px);box-shadow:0 12px 40px #0006}.other-title{color:var(--accent);margin-bottom:1rem;font-size:1.25rem}.other-content{color:var(--text-secondary)}.other-content ul{margin-bottom:1rem;padding-left:1.5rem}.other-content a{color:var(--accent);text-decoration:none}.other-content a:hover{text-decoration:underline}.footer{text-align:center;border-top:1px solid var(--glass-border);background:var(--bg-secondary);padding:3rem 0}.footer-links{justify-content:center;gap:1.5rem;margin-top:1rem;display:flex}.footer-links a{color:var(--text-secondary);text-decoration:none;transition:color .3s}.footer-links a:hover{color:var(--accent)}#scroll-year-indicator{pointer-events:none;z-index:200;opacity:0;align-items:center;gap:.75rem;transition:opacity .9s;display:flex;position:fixed;top:50%;right:2rem;transform:translateY(-50%)}#scroll-year-indicator.visible{opacity:1}.syi-year{font-family:var(--font-serif);color:var(--accent);opacity:.25;letter-spacing:-2px;text-shadow:0 0 60px var(--accent-glow);-webkit-user-select:none;user-select:none;font-size:clamp(3rem,8vw,6rem);font-weight:700;line-height:1}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (width<=640px){.container{padding:0 1rem}.hero{min-height:100svh;padding:2rem 1rem}.avatar-image{width:160px;height:160px}.title{font-size:2.5rem}.subtitle{letter-spacing:1px;font-size:1rem}.slogan{font-size:.95rem}.section{padding:3rem 0}.section-title{margin-bottom:1.75rem;font-size:1.75rem}.skills-grid{gap:.35rem}.skill-tag{padding:.35rem .75rem;font-size:.8rem}.deselect-btn{width:28px;height:28px;font-size:12px}.selected-skills-grid{gap:.75rem}.selected-skill-card{min-width:unset;width:100%;padding:1rem}.project-card{border-radius:12px;padding:1.25rem}.project-header{flex-direction:column;align-items:flex-start;gap:.25rem}.project-title{font-size:1.2rem}.project-date{margin-left:0;font-size:.8rem}.others-grid{grid-template-columns:1fr;gap:1rem}.other-card{border-radius:12px;padding:1.25rem}}body.theme-business{--bg-primary:#f8f9fa;--bg-secondary:#fff;--text-primary:#212529;--text-secondary:#6c757d;--accent:#0f4c81;--accent-glow:#0f4c8133;--glass-bg:#fff;--glass-border:#dee2e6;--glass-shadow:0 4px 6px #0000000d;--font-sans:"Helvetica Neue", Arial, sans-serif;--font-serif:"Georgia", serif}body.theme-business .hero{background:var(--bg-primary)}body.theme-business .title{background:var(--text-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text}body.theme-business .skill-tag.selected,body.theme-business .tech-tag.matched{color:#fff}body.theme-business .footer{background:var(--bg-primary)}body.theme-minimalist{--bg-primary:#fff;--bg-secondary:#fff;--text-primary:#000;--text-secondary:#555;--accent:#000;--accent-glow:transparent;--glass-bg:transparent;--glass-border:#000;--glass-shadow:none;--font-sans:"Inter", sans-serif;--font-serif:"Inter", sans-serif}body.theme-minimalist .hero{background:var(--bg-primary)}body.theme-minimalist .title{background:var(--text-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text}body.theme-minimalist .skill-tag,body.theme-minimalist .project-card,body.theme-minimalist .other-card,body.theme-minimalist .selected-skill-card,body.theme-minimalist .deselect-btn{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--glass-border);border-radius:0}body.theme-minimalist .avatar-image{border-width:1px;border-radius:0}body.theme-minimalist .skill-tag.selected,body.theme-minimalist .tech-tag.matched{background:var(--accent);color:#fff}body.theme-minimalist .footer{background:var(--bg-primary)}body.theme-nerd{--bg-primary:#0a0a0a;--bg-secondary:#111;--text-primary:#0f0;--text-secondary:#0c0;--accent:#0f0;--accent-glow:#00ff0080;--glass-bg:#000;--glass-border:#0f0;--glass-shadow:none;--font-sans:"Courier New", Courier, monospace;--font-serif:"Courier New", Courier, monospace}body.theme-nerd .hero{background:var(--bg-primary)}body.theme-nerd .title{background:var(--text-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text}body.theme-nerd *{border-radius:0!important}body.theme-nerd .skill-tag,body.theme-nerd .project-card,body.theme-nerd .other-card,body.theme-nerd .selected-skill-card,body.theme-nerd .deselect-btn{border:1px dashed var(--accent);-webkit-backdrop-filter:none;backdrop-filter:none}body.theme-nerd .skill-tag.selected,body.theme-nerd .deselect-btn:hover{background:var(--accent);color:#000}body.theme-nerd .tech-tag{border:1px dashed var(--text-secondary)}body.theme-nerd .tech-tag.matched{background:var(--accent);color:#000}body.theme-nerd .avatar-image{border-style:dashed}body.theme-nerd .footer{background:var(--bg-primary)}body.theme-robot{--bg-primary:#0b0e14;--bg-secondary:#1a1f29;--text-primary:#e0f1f7;--text-secondary:#7f8c9d;--accent:#00d4ff;--accent-glow:#00d4ff99;--glass-bg:#ffffff08;--glass-border:#00d4ff66;--glass-shadow:0 0 25px #0009;--font-sans:"Inter", sans-serif;--font-serif:"Inter", sans-serif}body.theme-robot .hero{background:radial-gradient(circle,#1a1f29 0%,#05070a 100%);position:relative}body.theme-robot .hero:after{content:"";pointer-events:none;background-image:radial-gradient(#00d4ff0d 1px,#0000 1px);background-size:30px 30px;position:absolute;inset:0}body.theme-robot .title{background:linear-gradient(135deg,#00d4ff,#fff);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 8px var(--accent-glow));letter-spacing:4px;-webkit-background-clip:text}body.theme-robot .project-card,body.theme-robot .other-card,body.theme-robot .skill-tag,body.theme-robot .selected-skill-card{border:1px solid var(--glass-border);box-shadow:inset 0 0 15px #00d4ff0d, var(--glass-shadow);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:linear-gradient(135deg,#ffffff0d 0%,#ffffff03 100%);border-radius:2px}body.theme-robot .skill-tag.selected{background:var(--accent);color:#000;box-shadow:0 0 20px var(--accent);border-color:#fff}body.theme-robot .avatar-image{border:2px solid var(--accent);box-shadow:0 0 40px var(--accent-glow);border-radius:8px}body.theme-robot .footer{border-top:1px solid var(--glass-border);background:#05070a}body.theme-robot .syi-year{color:var(--accent);text-shadow:0 0 20px var(--accent)}body.theme-kandinsky{--bg-primary:#fdf6e3;--bg-secondary:#eee8d5;--text-primary:#073642;--text-secondary:#586e75;--accent:#d33682;--accent-glow:#d336824d;--glass-bg:#fff;--glass-border:#073642;--glass-shadow:8px 8px 0px #07364233;--font-sans:"Inter", sans-serif;--font-serif:"Playfair Display", serif}body.theme-kandinsky .hero{background:var(--bg-primary);position:relative;overflow:hidden}body.theme-kandinsky .hero:before{content:"";z-index:0;background:radial-gradient(circle,#b589001a 0%,#0000 70%);border-radius:50%;width:40vw;height:40vw;position:absolute;top:10%;left:5%}body.theme-kandinsky .title{color:#b58900;-webkit-text-fill-color:initial;text-shadow:4px 4px #dc322f33;letter-spacing:-2px;background:0 0;font-weight:900}body.theme-kandinsky .project-card,body.theme-kandinsky .other-card,body.theme-kandinsky .selected-skill-card{border:2px solid var(--text-primary);background:#fff;border-radius:40px 10px 60px 20px/20px 50px 10px 40px;transform:rotate(-.5deg);box-shadow:10px 10px #0736421a}body.theme-kandinsky .project-card:nth-child(2n){border-color:#268bd2;transform:rotate(.8deg)}body.theme-kandinsky .skill-tag{border:2px solid var(--text-primary);background:#fff;border-radius:12px 4px 15px 5px;font-weight:600}body.theme-kandinsky .skill-tag.selected{color:#fff;background:#dc322f;border-color:#dc322f;transform:translateY(-5px)rotate(2deg);box-shadow:5px 5px #0003}body.theme-kandinsky .tech-tag.matched{color:#fff;background:#2aa198;border-radius:0}body.theme-kandinsky .avatar-image{background:#fff;border:6px double #b58900;border-radius:50%;padding:5px}body.theme-kandinsky .footer{background:var(--bg-secondary);border-top:4px solid #b58900}body.theme-kandinsky .syi-year{color:#dc322f;font-family:var(--font-serif);opacity:.4}body.theme-eco{--bg-primary:#f1f8e9;--bg-secondary:#dcedc8;--text-primary:#2e7d32;--text-secondary:#558b2f;--accent:#8bc34a;--accent-glow:#8bc34a4d;--glass-bg:#fff9;--glass-border:#2e7d3233;--glass-shadow:0 10px 20px #2e7d320d;--font-sans:"Quicksand", sans-serif;--font-serif:"Lora", serif}body.theme-eco .hero{background:linear-gradient(135deg,#f1f8e9 0%,#c5e1a5 100%);position:relative;overflow:hidden}body.theme-eco .hero:before{content:"🌿";opacity:.05;font-size:15rem;position:absolute;top:-20px;right:-20px;transform:rotate(15deg)}body.theme-eco .hero:after{content:"🍃";opacity:.05;font-size:10rem;position:absolute;bottom:-20px;left:-20px;transform:rotate(-15deg)}body.theme-eco .title{color:var(--text-primary);-webkit-text-fill-color:initial;letter-spacing:-1px;background:0 0;font-weight:700}body.theme-eco .project-card,body.theme-eco .other-card,body.theme-eco .selected-skill-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:30px 15px;box-shadow:0 15px 35px #2e7d320d}body.theme-eco .skill-tag{border:1.5px solid var(--accent);color:var(--text-primary);background:#fff;border-radius:20px 5px}body.theme-eco .skill-tag.selected{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 5px 15px var(--accent-glow)}body.theme-eco .tech-tag.matched{background:var(--text-primary);color:#fff;border-radius:8px 2px}body.theme-eco .avatar-image{border:4px solid var(--accent);box-shadow:0 0 30px var(--accent-glow);background:#fff;border-radius:40% 60% 70% 30%/40% 50% 60%}body.theme-eco .footer{background:var(--bg-secondary);border-top:1px solid var(--glass-border);color:var(--text-primary)}body.theme-eco .syi-year{color:var(--text-primary);font-family:var(--font-serif);opacity:.15}body.theme-eco .project-role{color:var(--text-secondary);font-weight:600}body.theme-klingon{--bg-primary:#0a0a0a;--bg-secondary:#1a0505;--text-primary:#f0e0d0;--text-secondary:#a08080;--accent:#b22222;--accent-glow:#b2222299;--glass-bg:#280a0acc;--glass-border:#4a1a1a;--glass-shadow:0 0 30px #b2222233;--font-sans:"KlingonCustom", sans-serif;--font-serif:"KlingonCustom", cursive}@font-face{font-family:KlingonCustom;src:url(/portfolio/assets/klingon-e-s5Oh6I.ttf)format("truetype")}body.theme-klingon,body.theme-klingon *{font-family:KlingonCustom,sans-serif!important}body.theme-klingon{background-image:linear-gradient(45deg,#b222220d 25%,#0000 25%),linear-gradient(-45deg,#b222220d 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#b222220d 75%),linear-gradient(-45deg,#0000 75%,#b222220d 75%);background-size:100px 100px;background-attachment:fixed}body.theme-klingon .hero{background:radial-gradient(circle,#2a0a0a 0%,#0a0a0a 100%)}body.theme-klingon .title{background:linear-gradient(gold,#b22222);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 10px var(--accent-glow));text-transform:uppercase;letter-spacing:4px;-webkit-background-clip:text}body.theme-klingon .subtitle{color:gold}body.theme-klingon .avatar-image{box-shadow:0 0 40px var(--accent-glow), inset 0 0 20px #000c;clip-path:polygon(10% 0%,90% 0%,100% 10%,100% 90%,90% 100%,10% 100%,0% 90%,0% 10%);border:4px solid #4a1a1a;border-radius:10px}body.theme-klingon .skill-tag,body.theme-klingon .project-card,body.theme-klingon .other-card,body.theme-klingon .selected-skill-card{clip-path:polygon(5px 0%,calc(100% - 5px) 0%,100% 5px,100% calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,0% calc(100% - 5px),0% 5px);background:linear-gradient(135deg,#1a0505 0%,#0a0a0a 100%);border:1px solid #4a1a1a;border-radius:0;position:relative}body.theme-klingon .skill-tag.selected{color:#fff;background:#b22222;border-color:gold}body.theme-klingon .tech-tag.matched{color:#fff;background:#b22222}body.theme-klingon .section-title{color:gold;text-shadow:2px 2px 4px #000c}body.theme-klingon .footer{background:#0a0a0a;border-top:2px solid #4a1a1a}body.theme-klingon .footer-links a:hover{color:gold}body.theme-klingon .scroll-indicator{color:#b22222}.klingon-decoration{opacity:.3;font-family:KlingonCustom,sans-serif;font-size:1.5rem}
