:root{--color-bg:#fafafa;--color-bg-secondary:#f5f5f5;--color-text:#1a1a1a;--color-text-secondary:#525252;--color-text-tertiary:#737373;--color-border:#e5e5e5;--color-accent:#3b82f6;--color-accent-hover:#2563eb;--font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--font-mono:"IBM Plex Mono","Courier New",monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.75;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:200ms cubic-bezier(0.4,0,0.2,1);--transition-slow:300ms cubic-bezier(0.4,0,0.2,1)}@media (prefers-color-scheme:dark){:root{--color-bg:#0a0a0a;--color-bg-secondary:#171717;--color-text:#fafafa;--color-text-secondary:#a3a3a3;--color-text-tertiary:#737373;--color-border:#262626;--color-accent:#3b82f6;--color-accent-hover:#60a5fa}}.dark{--color-bg:#0a0a0a;--color-bg-secondary:#171717;--color-text:#fafafa;--color-text-secondary:#a3a3a3;--color-text-tertiary:#737373;--color-border:#262626;--color-accent:#3b82f6;--color-accent-hover:#60a5fa}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;text-rendering:optimizeLegibility}body{background-color:#fafafa;background-color:var(--color-bg);color:#1a1a1a;color:var(--color-text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-family:var(--font-body);font-size:1rem;font-size:var(--text-base);line-height:1.5;line-height:var(--leading-normal);transition:background-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1);transition:background-color var(--transition-base),color var(--transition-base)}#root,body,html{min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:600;letter-spacing:-.02em;line-height:1.25;line-height:var(--leading-tight)}h1{font-size:3rem;font-size:var(--text-5xl);margin-bottom:1.5rem;margin-bottom:var(--space-6)}h2{font-size:1.875rem;font-size:var(--text-3xl);margin-bottom:1rem;margin-bottom:var(--space-4)}h3{font-size:1.25rem;font-size:var(--text-xl);margin-bottom:.75rem;margin-bottom:var(--space-3)}p{margin-bottom:1rem;margin-bottom:var(--space-4)}a{color:#3b82f6;color:var(--color-accent);text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1);transition:color var(--transition-fast)}a:hover{color:#2563eb;color:var(--color-accent-hover)}code,pre{font-size:.875rem;font-size:var(--text-sm)}.mono,code,pre{font-family:IBM Plex Mono,Courier New,monospace;font-family:var(--font-mono)}.text-secondary{color:#525252;color:var(--color-text-secondary)}.text-tertiary{color:#737373;color:var(--color-text-tertiary)}.Portfolio_portfolio__XIPO-{margin:0 auto;max-width:1200px;padding:var(--space-8) var(--space-6);position:relative}@media (min-width:768px){.Portfolio_portfolio__XIPO-{padding:var(--space-16) var(--space-12)}}.Portfolio_darkModeToggle__QBrTI{align-items:center;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:50%;cursor:pointer;display:flex;font-size:var(--text-xl);height:44px;justify-content:center;position:fixed;right:var(--space-6);top:var(--space-6);transition:all var(--transition-fast);width:44px;z-index:100}.Portfolio_darkModeToggle__QBrTI:hover{border-color:var(--color-accent);transform:scale(1.05)}.Portfolio_hero__xUsYa{align-items:center;display:flex;margin-bottom:var(--space-24);min-height:60vh}.Portfolio_heroContent__r4rZJ{max-width:600px}@media (min-width:768px){.Portfolio_heroContent__r4rZJ{margin-left:0;margin-right:auto}}.Portfolio_name__fzFh8{font-size:var(--text-4xl);font-weight:700;letter-spacing:-.03em;margin-bottom:var(--space-3)}@media (min-width:768px){.Portfolio_name__fzFh8{font-size:var(--text-5xl)}}.Portfolio_title__sB-ve{color:var(--color-text);font-size:var(--text-xl);font-weight:500;margin-bottom:var(--space-4)}@media (min-width:768px){.Portfolio_title__sB-ve{font-size:var(--text-2xl)}}.Portfolio_availability__hSOyA{color:var(--color-text-secondary);font-size:var(--text-base);line-height:var(--leading-relaxed);margin-bottom:var(--space-8)}@media (min-width:768px){.Portfolio_availability__hSOyA{font-size:var(--text-lg)}}.Portfolio_socialLinks__goSgu{display:flex;gap:var(--space-4)}.Portfolio_socialLinks__goSgu a{align-items:center;border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-secondary);display:flex;height:40px;justify-content:center;transition:all var(--transition-fast);width:40px}.Portfolio_socialLinks__goSgu a:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-2px)}.Portfolio_about__6YTEB{border-bottom:1px solid var(--color-border);margin:0 auto var(--space-24) auto;max-width:700px;padding-bottom:var(--space-24)}.Portfolio_sectionTitle__5l0QE{font-size:var(--text-2xl);font-weight:600;letter-spacing:-.02em;margin-bottom:var(--space-6)}@media (min-width:768px){.Portfolio_sectionTitle__5l0QE{font-size:var(--text-3xl)}}.Portfolio_aboutContent__\+ORnn{display:flex;flex-direction:column;gap:var(--space-4)}.Portfolio_aboutContent__\+ORnn p{color:var(--color-text-secondary);font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0}@media (min-width:768px){.Portfolio_aboutContent__\+ORnn p{font-size:var(--text-lg)}}.Portfolio_skills__3GVaC{border-bottom:1px solid var(--color-border);margin:0 auto var(--space-24) auto;max-width:900px;padding-bottom:var(--space-24)}.Portfolio_skillsGrid__Thxgv{display:flex;flex-direction:column;gap:var(--space-8)}@media (min-width:768px){.Portfolio_skillsGrid__Thxgv{grid-gap:var(--space-10);display:grid;gap:var(--space-10);grid-template-columns:repeat(3,1fr)}}.Portfolio_skillCategory__18XJt{display:flex;flex-direction:column;gap:var(--space-4)}.Portfolio_skillCategoryTitle__fuQGz{color:var(--color-text-tertiary);font-size:var(--text-sm);font-weight:600;letter-spacing:.05em;margin:0;text-transform:uppercase}.Portfolio_skillTags__dXu-\+{display:flex;flex-wrap:wrap;gap:var(--space-2)}.Portfolio_skillTag__nbjT6{background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);padding:var(--space-2) var(--space-3);white-space:nowrap}.Portfolio_projects__LtQr7{display:flex;flex-direction:column;gap:var(--space-24);margin-bottom:var(--space-24)}@media (min-width:768px){.Portfolio_projects__LtQr7{gap:8rem}}.Portfolio_footer__oHGt3{border-top:1px solid var(--color-border);padding:var(--space-12) 0}.Portfolio_footerText__jGMwO{color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:var(--text-sm);margin:0;text-align:center}.Project_project__CnGPs{grid-gap:var(--space-8);display:grid;gap:var(--space-8);grid-template-columns:1fr}@media (min-width:768px){.Project_project__CnGPs{align-items:start;gap:var(--space-12);grid-template-columns:1fr 1fr}.Project_projectLeft__k2cxI .Project_media__KQ5jI{order:1}.Project_projectLeft__k2cxI .Project_details__dXps0,.Project_projectRight__JPPPz .Project_media__KQ5jI{order:2}.Project_projectRight__JPPPz .Project_details__dXps0{order:1}}.Project_media__KQ5jI{position:relative}.Project_imageContainer__W5zNW{position:relative;width:100%}.Project_mainImage__I-DX6{aspect-ratio:16/9;border:1px solid var(--color-border);border-radius:4px;display:block;object-fit:cover;object-position:top center;width:100%}.Project_mobileOverlay__ZBqe2{bottom:var(--space-4);display:none;position:absolute;right:var(--space-4);width:160px;z-index:10}@media (min-width:768px){.Project_mobileOverlay__ZBqe2{display:block}}.Project_mobileImage__EaoB\+{background-color:var(--color-bg);border:2px solid var(--color-border);border-radius:8px;box-shadow:0 8px 24px #00000026;display:block;height:auto;width:100%}.Project_videoWrapper__4teNd{border:1px solid var(--color-border);border-radius:4px;height:0;overflow:hidden;padding-bottom:56.25%;position:relative}.Project_video__Rs4LG{height:100%;left:0;position:absolute;top:0;width:100%}.Project_imageThumbnails__VJc\+G{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.Project_thumbnail__LJ4rA{background:none;border:1px solid var(--color-border);border-radius:4px;cursor:pointer;flex:1 1;opacity:.5;overflow:hidden;padding:0;transition:all var(--transition-fast)}.Project_thumbnail__LJ4rA:hover{border-color:var(--color-accent);opacity:.8}.Project_thumbnailActive__xD11-{border-color:var(--color-accent);opacity:1}.Project_thumbnail__LJ4rA img{display:block;height:auto;width:100%}.Project_details__dXps0{display:flex;flex-direction:column;gap:var(--space-6)}.Project_header__pn5H2{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--space-6);justify-content:space-between}.Project_title__rrnrM{font-size:var(--text-3xl);font-weight:700;letter-spacing:-.02em;margin:0}@media (min-width:768px){.Project_title__rrnrM{font-size:var(--text-4xl)}}.Project_subtitle__olL41{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--text-sm);margin-bottom:0;margin-top:var(--space-2)}.Project_links__A4f9T{display:flex;flex-shrink:0;gap:var(--space-3)}.Project_link__kUY2O{align-items:center;border:1px solid var(--color-accent);border-radius:4px;color:var(--color-accent);display:inline-flex;font-family:var(--font-mono);font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-2) var(--space-3);transition:all var(--transition-fast);white-space:nowrap}.Project_link__kUY2O:hover{background-color:var(--color-accent);color:var(--color-bg);transform:translateY(-1px)}.Project_techStack__\+iWZM{display:flex;flex-wrap:wrap;gap:var(--space-2)}.Project_techBadge__MWlaA{border:1px solid var(--color-border);border-radius:3px;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.Project_description__Ln\+2H{color:var(--color-text);font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0}@media (min-width:768px){.Project_description__Ln\+2H{font-size:var(--text-lg)}}.Project_keyPoints__7zSfT{border-left:2px solid var(--color-border);padding-left:var(--space-4)}.Project_keyPointsTitle__BNfV1{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;margin:0 0 var(--space-3) 0}.Project_keyPointsList__DE4vT{display:flex;flex-direction:column;gap:var(--space-3);list-style:none;margin:0;padding:0}.Project_keyPointsList__DE4vT li{color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed);padding-left:var(--space-4);position:relative}.Project_keyPointsList__DE4vT li:before{color:var(--color-accent);content:"→";left:0;position:absolute}@media (min-width:768px){.Project_keyPointsList__DE4vT li{font-size:var(--text-base)}}.Project_challenge__kBrfZ{background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-tertiary);font-size:var(--text-sm);font-style:italic;margin:0;padding:var(--space-4)}@media (min-width:768px){.Project_challenge__kBrfZ{font-size:var(--text-base)}}.ImageModal_overlay__LcVGs{align-items:center;animation:ImageModal_fadeIn__6JFfw .2s ease-out;background-color:#000000d9;display:flex;inset:0;justify-content:center;padding:var(--space-4);position:fixed;z-index:9999}@keyframes ImageModal_fadeIn__6JFfw{0%{opacity:0}to{opacity:1}}.ImageModal_closeButton__2QDTE{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;position:fixed;right:var(--space-6);top:var(--space-6);transition:background-color var(--transition-fast);width:44px;z-index:10000}.ImageModal_closeButton__2QDTE:hover{background-color:#fff3}.ImageModal_content__G1HWh{animation:ImageModal_scaleIn__Zi-f2 .25s ease-out;max-height:90vh;max-width:90vw;position:relative}@keyframes ImageModal_scaleIn__Zi-f2{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.ImageModal_image__F7aqu{border-radius:4px;display:block;max-height:90vh;max-width:90vw;object-fit:contain}
/*# sourceMappingURL=main.bb867bce.css.map*/