:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--bg-primary: #fff;--bg-secondary: #f8f9fa;--text-primary: #333;--text-secondary: #666;--text-muted: #999;--border-color: #f0f0f0;--border-secondary: #e8e8e8;--link-bg: #f8f8f8;--link-hover-bg: #000;--link-hover-text: #fff;--shadow-color: rgba(0, 0, 0, .1);--star-color: #000;--shooting-star-color: #000}[data-theme=dark]{--bg-primary: #1a1a1a;--bg-secondary: #0a0a0a;--text-primary: #e0e0e0;--text-secondary: #b0b0b0;--text-muted: #808080;--border-color: #2a2a2a;--border-secondary: #333;--link-bg: #2a2a2a;--link-hover-bg: #fff;--link-hover-text: #000;--shadow-color: rgba(0, 0, 0, .3);--star-color: #fff;--shooting-star-color: #fff}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;color:var(--text-primary);background-color:var(--bg-primary);position:relative;top:0;transition:color .3s ease,background-color .3s ease}.portfolio{width:100vw;min-height:100vh;background-color:var(--bg-primary);position:relative;overflow-x:hidden;padding-top:0;margin-top:0}.container{width:680px;margin:0 auto;padding:40px 40px 80px;background-color:var(--bg-primary);box-shadow:0 0 50px var(--shadow-color);position:relative;z-index:10;text-align:left;transition:background-color .3s ease,box-shadow .3s ease}.header{margin-bottom:60px;display:flex;align-items:center;gap:24px}.profile-image{width:104px;height:104px;border-radius:50%;object-fit:cover;object-position:center 70%;border:2px solid var(--border-color);transition:border-color .3s ease}.name{font-size:2.5rem;font-weight:600;color:var(--text-primary);letter-spacing:-.02em;transition:color .3s ease}.main{display:flex;flex-direction:column;gap:60px}.section{display:flex;flex-direction:column;gap:16px}.section-title{font-size:1.1rem;font-weight:500;color:var(--text-secondary);text-transform:lowercase;letter-spacing:.02em;transition:color .3s ease}.section-content{display:flex;flex-direction:column;gap:8px}.section-content p{font-size:1rem;line-height:1.5;color:var(--text-primary);transition:color .3s ease}.experience-item{display:flex;flex-direction:column;gap:8px;padding-bottom:24px;border-bottom:1px solid var(--border-color);transition:border-color .3s ease}.experience-item:last-child{border-bottom:none;padding-bottom:0}.experience-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.company{font-weight:500;color:var(--text-primary);font-size:1rem;transition:color .3s ease}.period{font-size:.9rem;color:var(--text-secondary);transition:color .3s ease}.role{font-size:.95rem;color:var(--text-primary);font-weight:400;margin-bottom:4px;transition:color .3s ease}.description{font-size:.95rem;color:var(--text-secondary);line-height:1.6;transition:color .3s ease}.project-item{display:flex;flex-direction:column;gap:8px;padding-bottom:24px;border-bottom:1px solid var(--border-color);transition:border-color .3s ease}.project-item:last-child{border-bottom:none;padding-bottom:0}.project-title{font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:4px;transition:color .3s ease}.project-link{color:var(--text-primary);text-decoration:none;border-bottom:2px solid transparent;transition:all .3s ease;padding-bottom:2px;position:relative;font-weight:600}.project-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--text-primary),var(--text-secondary));transition:width .3s ease}.project-link:hover{color:var(--text-primary);transform:translateY(-1px)}.project-link:hover:after{width:100%}.project-description{font-size:.95rem;color:var(--text-secondary);line-height:1.6;transition:color .3s ease}.links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px}.link{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background-color:var(--link-bg);color:var(--text-primary);text-decoration:none;border-radius:8px;font-size:.95rem;font-weight:400;text-align:center;transition:all .2s ease;border:1px solid var(--border-secondary)}.link:hover{background-color:var(--link-hover-bg);color:var(--link-hover-text);border-color:var(--link-hover-bg);transform:translateY(-1px)}.link-icon{color:var(--text-primary);transition:color .2s ease;flex-shrink:0}.link:hover .link-icon{color:var(--link-hover-text)}.company-link{color:var(--text-primary);text-decoration:none;border-bottom:1px solid var(--text-muted);transition:all .2s ease}.company-link:hover{color:var(--text-primary);border-bottom-color:var(--text-primary)}.theme-toggle{position:fixed;top:40px;right:40px;width:64px;height:64px;border:2px solid var(--border-secondary);border-radius:50%;background-color:var(--link-bg);color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:100;transition:all .3s ease;box-shadow:0 4px 12px var(--shadow-color)}.theme-toggle:hover{background-color:var(--link-hover-bg);color:var(--link-hover-text);transform:scale(1.1)}.theme-toggle svg{transition:transform .3s ease}.theme-toggle:hover svg{transform:rotate(180deg)}@media (max-width: 768px){.starry-night{display:none}.portfolio:before{display:none}.container{width:100%;max-width:100%;padding:20px;margin:0;box-shadow:none}.header{flex-direction:column;text-align:center;margin-bottom:40px;gap:16px}.profile-image{width:80px;height:80px}.name{font-size:2rem}.main{gap:40px}.section{gap:12px}.section-title{font-size:1rem}.section-content p{font-size:.95rem}.project-item,.experience-item{padding-bottom:16px}.links-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px}.link{padding:10px 12px;font-size:.9rem}.theme-toggle svg{width:18px!important;height:18px!important}.theme-toggle:focus{outline:none}.theme-toggle:active{outline:none}.project-title,.company{font-size:.95rem}.description,.project-description{font-size:.9rem}}.portfolio:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:var(--bg-primary);z-index:1;transition:background .3s ease}.starry-night{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2;pointer-events:none;overflow:hidden}.star{position:absolute;background-color:var(--star-color);border-radius:50%;animation:twinkle 4s ease-in-out infinite;transition:background-color .3s ease}.shooting-star{position:absolute;width:2px;height:2px;background:var(--shooting-star-color);border-radius:50%;animation:rollsRoyceShoot 4s cubic-bezier(.25,.46,.45,.94) forwards;transform-origin:center;transition:background .3s ease}.shooting-star:before{content:"";position:absolute;top:50%;left:50%;width:120px;height:1px;background:linear-gradient(-90deg,var(--shooting-star-color),var(--shooting-star-color)70,var(--shooting-star-color)30,transparent);transform:translate(-50%,-50%) rotate(var(--angle, 45deg));transform-origin:right center;border-radius:.5px}.shooting-star:after{content:"";position:absolute;top:50%;left:50%;width:200px;height:.5px;background:linear-gradient(-90deg,var(--shooting-star-color)40,var(--shooting-star-color)20,var(--shooting-star-color)05,transparent);transform:translate(-50%,-50%) rotate(var(--angle, 45deg));transform-origin:right center}@keyframes twinkle{0%,to{opacity:.6;transform:scale(1)}50%{opacity:.9;transform:scale(1.05)}}@keyframes rollsRoyceShoot{0%{opacity:0;left:var(--start-x, 0%);top:var(--start-y, 0%);transform:scale(0)}3%{opacity:1;left:var(--start-x, 0%);top:var(--start-y, 0%);transform:scale(1)}97%{opacity:1;left:var(--end-x, 100%);top:var(--end-y, 100%);transform:scale(1)}to{opacity:0;left:var(--end-x, 100%);top:var(--end-y, 100%);transform:scale(0)}}
