body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.navbar{background-color:initial!important;transition:all .3s ease-in-out!important}.navbar.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#f5f2edf2!important}.nav-brand{color:#211d1e;font-weight:600;letter-spacing:.5px;text-decoration:none}.nav-links{display:flex;gap:1rem;margin-left:auto}.nav-link{color:#211d1ecc!important;font-weight:500!important;padding:6px 12px!important;position:relative;text-transform:none!important}.nav-link:after{background-color:#ed2124;bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);transition:all .3s ease-in-out;width:0}.nav-link.active:after,.nav-link:hover:after{width:80%}.drawer-paper,.nav-link.active,.nav-link:hover{color:#211d1e!important}.drawer-paper{background-color:#f5f2ed!important;width:250px}@media (max-width:600px){.nav-brand{font-size:1.2rem!important}}.home-page{background-color:#f5f2ed;min-height:100vh;padding:2rem 0}.hero-content,.home-page{align-items:center;display:flex}.hero-content{flex-direction:column;justify-content:center;margin:0 auto;max-width:80%;padding:2rem;text-align:center}.hero-title{color:#211d1e;font-size:3.5rem!important;font-weight:700!important;margin-bottom:1rem!important}.accent{color:#ed2124;display:inline-block;font-family:Ounen-mouhitsu,serif;position:relative}.hero-subtitle{color:#211d1ecc;font-size:1.2rem!important;font-weight:500!important;margin-bottom:1.5rem!important}.main-content{align-items:center;display:flex;gap:0;justify-content:center;margin-top:2rem;width:100%}.bonsai-image{flex-shrink:1;height:35%;object-fit:contain;width:35%}.directories-section{align-items:flex-start;display:flex;flex-direction:column;gap:0}.directories-title{color:#211d1e;font-family:Ounen-mouhitsu,serif;font-size:2rem!important;font-weight:600!important;margin-bottom:.5rem!important}.directories-list{align-items:flex-start;display:flex;flex-direction:column;gap:1.2rem}.directory-item{border-radius:4px;padding:.5rem;text-decoration:none;transition:all .3s ease}.directory-item:hover{transform:translateX(3px) rotate(2deg)}.directory-name{color:#211d1e;font-family:和風ぽっぷ,serif!important;font-size:1.5rem!important;font-weight:500!important;margin:0!important}.directory-item:hover .directory-name{color:#38090a;transition:color .2s cubic-bezier(.4,0,.2,1)}.social-links{align-items:center;display:flex;flex-direction:row;gap:1.5rem;justify-content:flex-start;margin-left:.8rem!important;margin-top:2rem!important}.social-link{border-radius:8px;padding:.5rem}.social-icon{height:40px;width:40px}@media (max-width:1024px){.hero-title{font-size:3rem!important}.hero-content{max-width:90%;padding:1.5rem}.bonsai-image{height:32%;width:32%}.directory-name{font-size:1.4rem!important}.social-icon{height:34px;width:34px}}@media (max-width:768px){.hero-title{font-size:2.5rem!important}.hero-content{max-width:95%;padding:1rem}.main-content{gap:1rem;margin-top:1.5rem}.bonsai-image{height:28%;min-width:120px;width:28%}.directories-list{gap:1rem}.directory-name{font-size:1.2rem!important}.social-links{gap:1rem;margin-top:1.5rem!important}.social-icon{height:30px;width:30px}}@media (max-width:480px){.hero-title{font-size:2rem!important}.hero-content{padding:.5rem}.main-content{gap:.5rem;margin-top:1rem}.bonsai-image{height:25%;min-width:100px;width:25%}.directories-list{gap:.8rem}.directory-name{font-size:1rem!important}.social-links{gap:.8rem;margin-top:1rem!important}.social-icon{height:26px;width:26px}}.about-page{background-color:#f5f2ed;min-height:100vh;padding:6rem 0}.about-container{margin:0 auto;max-width:1200px;padding:0 2rem}.page-title{animation:fadeInUp .8s ease-out forwards;color:#211d1e;font-size:3rem;font-weight:700;letter-spacing:-.02em;margin-bottom:4rem;opacity:0;text-align:center;transform:translateY(30px)}.top-section{grid-gap:4rem;align-items:start;display:grid;gap:4rem;grid-template-columns:1fr 1fr;margin-bottom:6rem}.left-column{display:flex;flex-direction:column;gap:3rem}.bio-section{animation:fadeInUp .8s ease-out .3s forwards;opacity:0;transform:translateY(30px)}.bio-text{color:#211d1ecc;font-size:1.4rem;font-weight:400;line-height:1.6;margin:0;text-align:left}.right-column{display:flex;flex-direction:column}.skills-section{opacity:0;transform:translateY(50px);transition:all .8s ease-out}.skills-section.visible{opacity:1;transform:translateY(0)}.skills-section .section-title{color:#211d1e;font-size:2rem;font-weight:600;letter-spacing:-.01em;margin-bottom:2rem}.skills-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #211d1e14;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:2rem;transition:all .3s ease}.skills-content:hover{border-color:#ed212433;box-shadow:0 12px 40px #00000026;transform:translateY(-5px)}.skill-category{margin-bottom:2rem}.skill-category:last-child{margin-bottom:0}.category-title{color:#211d1ee6;font-size:1.1rem;font-weight:600;letter-spacing:.02em;margin:0 0 1rem}.skills-list{display:flex;flex-wrap:wrap;gap:.6rem}.skill-tag{background:#ed21241a;border:1px solid #ed212433;border-radius:20px;color:#ed2124;cursor:default;font-size:.9rem;font-weight:500;padding:.6rem 1.2rem;transition:all .3s ease}.skill-tag:hover{background:#ed212433;box-shadow:0 4px 12px #ed212433;transform:translateY(-2px)}.education-section{opacity:0;transform:translateY(50px);transition:all .8s ease-out}.education-section.visible{opacity:1;transform:translateY(0)}.education-section .section-title{color:#211d1e;font-size:2rem;font-weight:600;letter-spacing:-.01em;margin-bottom:1.5rem;text-align:left}.content-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #211d1e14;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:2.5rem;transition:all .3s ease}.content-card:hover{border-color:#ed212433;box-shadow:0 12px 40px #00000026;transform:translateY(-5px)}.degree{color:#ed2124;font-size:1.4rem;font-weight:600;line-height:1.3;margin:0 0 .8rem}.university{color:#211d1ee6;font-size:1.1rem;line-height:1.4;margin:0 0 1.5rem}.education-details{display:flex;flex-wrap:wrap;gap:2rem;margin-bottom:1.5rem}.gpa,.graduation{color:#211d1eb3;font-size:1rem;margin:0}.achievement{background:#ed21241a;border:1px solid #ed212433;border-radius:25px;color:#ed2124;display:inline-block;font-size:1rem;font-weight:500;margin:0;padding:.8rem 1.5rem}.experience-section{opacity:0;transform:translateY(50px);transition:all .1s ease-out}.experience-section.visible{opacity:1;transform:translateY(0)}.section-header{margin-bottom:3rem;text-align:center}.section-title{font-size:2.2rem;font-weight:600;letter-spacing:-.01em;margin-bottom:1rem}.section-line{background:linear-gradient(90deg,#ed2124,#ff4447);border-radius:2px;height:3px;margin:0 auto;width:60px}.experience-timeline{margin:0 auto;max-width:800px;position:relative}.experience-timeline:before{background:linear-gradient(180deg,#ed2124,#ff4447);border-radius:2px;bottom:0;content:"";left:30px;position:absolute;top:0;width:3px}.timeline-item{margin-bottom:3rem;padding-left:5rem;position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-marker{background:#ed2124;border:4px solid #f5f2ed;border-radius:50%;box-shadow:0 0 0 3px #ed21244d;height:24px;left:18px;position:absolute;top:1.5rem;width:24px}.job-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #211d1e14;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:2.5rem;transition:all .3s ease}.job-card:hover{border-color:#ed212433;box-shadow:0 12px 40px #00000026;transform:translateY(-5px)}.job-title{color:#ed2124;font-size:1.4rem;font-weight:600;line-height:1.3;margin:0 0 .5rem}.company{color:#211d1ee6;font-size:1.1rem;line-height:1.4;margin:0 0 .3rem}.period{color:#211d1e99;font-size:1rem;font-style:italic;margin:0 0 1.5rem}.job-responsibilities{list-style:none;margin:0;padding:0}.job-responsibilities li{color:#211d1eb3;line-height:1.5;margin-bottom:.8rem;padding-left:1.5rem;position:relative}.job-responsibilities li:before{color:#ed2124;content:"▸";font-size:1.1rem;font-weight:700;left:0;position:absolute}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:968px){.top-section{gap:3rem;grid-template-columns:1fr}.left-column{gap:2.5rem}}@media (max-width:768px){.about-page{padding:5rem 0 4rem}.about-container{padding:0 1.5rem}.page-title{font-size:2.5rem;margin-bottom:3rem}.top-section{gap:2.5rem;margin-bottom:4rem}.left-column{gap:2rem}.bio-text{font-size:1.2rem}.skills-section .section-title{font-size:1.8rem}.skills-content{padding:1.5rem}.section-title{font-size:2rem}.content-card{padding:2rem}.education-details{flex-direction:column;gap:.5rem}.experience-timeline:before{left:20px}.timeline-item{padding-left:3.5rem}.timeline-marker{height:20px;left:8px;width:20px}.job-card{padding:2rem}}@media (max-width:480px){.about-page{padding:4rem 0 3rem}.about-container{padding:0 1rem}.page-title{font-size:2.2rem}.left-column{gap:1.5rem}.bio-text{font-size:1.1rem;line-height:1.6}.skills-section .section-title{font-size:1.6rem}.skills-content{padding:1.2rem}.skill-tag{font-size:.85rem;padding:.5rem 1rem}.section-title{font-size:1.8rem}.content-card{padding:1.5rem}.degree{font-size:1.4rem}.university{font-size:1.1rem}.job-card{padding:1.5rem}.job-title{font-size:1.2rem}.company{font-size:1rem}}.projects-container{align-items:center;background-color:#f5f2ed;display:flex;flex-direction:column;min-height:100vh;padding:6rem 2rem 4rem}.section-description,.section-title{width:100%}.projects-grid{margin-left:auto!important;margin-right:auto!important;margin-top:2rem;width:70%!important}.project-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc!important;border:1px solid #211d1e14;border-radius:12px!important;box-shadow:0 4px 20px #00000014;transition:transform .3s ease,box-shadow .3s ease;width:100%!important}.project-card:hover{border-color:#ed212433;box-shadow:0 12px 40px #00000026;transform:translateY(-5px)}.project-title{color:#ed2124!important;font-weight:600!important;margin-bottom:.5rem!important}.project-type{color:#211d1e99!important;font-size:.9rem!important;margin-bottom:1rem!important}.project-description{color:#211d1ecc!important;line-height:1.6!important;margin-bottom:1.5rem!important}.achievements{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.achievement-chip{background-color:#ed212426!important;border:1px solid #ed21244d!important;color:#ed2124!important;font-weight:500!important}.tech-stack{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tech-chip{background-color:#211d1e0d!important;border:1px solid #211d1e1a!important;color:#211d1eb3!important;font-size:.8rem!important}.project-actions{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.project-link{border:1px solid #ed21244d!important;color:#ed2124!important;font-weight:500!important;padding:.5rem 1rem!important;text-transform:none!important}.project-link:hover{background-color:#ed21241a!important}.expand-button{color:#211d1eb3!important;margin-left:auto!important;transition:transform .3s ease!important}.expand-button.expanded{transform:rotate(180deg)}.expanded-content{border-top:1px solid #211d1e1a;margin-top:2rem;padding-top:2rem}.full-description{color:#211d1ecc!important;line-height:1.8!important;margin-bottom:2rem!important}.section-subtitle{color:#ed2124!important;font-weight:600!important;margin:2rem 0 1rem!important}.role-title{color:#211d1ee6!important;font-weight:500!important;margin-bottom:1rem!important}.architecture-list,.contributions-list,.feature-list,.impact-list{list-style-type:none;margin:0;padding-left:0}.architecture-list li,.contributions-list li,.feature-list li,.impact-list li{color:#211d1eb3;margin-bottom:.5rem;padding-left:1.5rem;position:relative}.architecture-list li:before,.contributions-list li:before,.feature-list li:before,.impact-list li:before{color:#ed2124;content:"•";font-size:1.2rem;left:0;position:absolute}@media (max-width:1200px){.projects-grid{width:85%!important}}@media (max-width:768px){.projects-container{padding:5rem 1rem 3rem}.projects-grid{width:95%!important}.section-title{font-size:2rem!important}.project-actions{flex-wrap:wrap}.project-link{flex:1 1;text-align:center}.expand-button{margin-left:0!important}}.contact-container{background-color:#f5f2ed;min-height:100vh;padding:6rem 2rem 4rem}.section-title{color:#211d1e;font-size:2.5rem!important;font-weight:700!important;margin-bottom:1rem!important;text-align:center}.section-description{color:#211d1eb3;margin:0 auto 3rem!important;max-width:600px;text-align:center}.contact-grid{justify-content:center!important;margin-bottom:4rem}.contact-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc!important;border:1px solid #211d1e14;border-radius:12px!important;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;height:100%;padding:2rem!important;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.contact-card:hover{border-color:#ed212433;box-shadow:0 12px 40px #00000026;transform:translateY(-5px)}.card-icon{align-items:center;background:#ed2124;border-radius:50%;display:flex;height:60px;justify-content:center;margin-bottom:1.5rem;width:60px}.card-icon svg{color:#f5f2ed;font-size:2rem}.contact-title{color:#211d1e!important;font-weight:600!important;margin-bottom:.5rem!important}.contact-value{font-weight:500!important;margin-bottom:1rem!important}.contact-value,.contact-value.clickable{color:#ed2124!important;cursor:pointer;transition:all .3s ease}.contact-value.clickable:hover{opacity:.8;text-decoration:underline}.contact-description{color:#211d1eb3!important;flex-grow:1;margin-bottom:1.5rem!important}.contact-button{background:#ed2124!important;border-radius:8px!important;color:#f5f2ed!important;font-weight:500!important;padding:.8rem 2rem!important;text-transform:none!important;transition:transform .3s ease!important}.contact-button:hover{transform:translateY(-2px)}.contact-button.reveal-button{background:#ed2124!important;opacity:.9;transition:all .3s ease!important}.contact-button.reveal-button:hover{opacity:1;transform:translateY(-2px)}.contact-footer{border-top:1px solid #211d1e1a;padding-top:2rem;text-align:center}.contact-footer .MuiTypography-body1{color:#211d1ee6!important;margin-bottom:.5rem!important}.contact-footer .MuiTypography-body2{color:#211d1e99!important}@media (max-width:1200px){.contact-grid{justify-content:center!important}}@media (max-width:768px){.contact-container{padding:5rem 1rem 3rem}.section-title{font-size:2rem!important}.contact-card{padding:1.5rem!important}.contact-grid{justify-content:center!important}}.footer{background-color:#211d1e0d;border-top:1px solid #211d1e1a;margin-top:auto;padding:1rem 0}.footer-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 2rem}.copyright{color:#211d1e99;font-size:.9rem;font-weight:400}.social-icons{align-items:center;display:flex;gap:1rem}.social-link{border-radius:4px;display:inline-block;padding:.25rem;transition:all .3s ease}.social-link:hover{transform:scale(1.1)}.social-icon{height:24px;object-fit:contain;transition:all .3s ease;width:24px}.social-link:hover .social-icon{filter:brightness(.8) saturate(1.2)}@media (max-width:768px){.footer-content{flex-direction:column;gap:.5rem;padding:0 1rem;text-align:center}.copyright{font-size:.8rem;order:2}.social-icons{gap:.8rem;order:1}.social-icon{height:20px;width:20px}}@media (max-width:480px){.footer{padding:.8rem 0}.footer-content{padding:0 .5rem}.copyright{font-size:.75rem}.social-icon{height:18px;width:18px}}.mobile-navbar{background-color:initial;left:0;padding:.5rem 0;position:fixed;right:0;top:0;transition:all .3s ease;z-index:1000}.mobile-navbar.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#f5f2edf2;box-shadow:0 2px 20px #0000001a}.mobile-navbar-content{align-items:center;display:flex;justify-content:space-between;max-width:100%;padding:0 1rem}.mobile-nav-brand{color:#211d1e;font-size:1.3rem;font-weight:600;letter-spacing:.5px;text-decoration:none;transition:color .2s ease}.mobile-nav-brand:active{color:#ed2124}.mobile-menu-toggle{background:none;border:none;cursor:pointer;display:flex;flex-direction:column;height:24px;justify-content:space-between;padding:.5rem;position:relative;width:30px;z-index:1001}.mobile-menu-line{background-color:#211d1e;border-radius:2px;height:3px;transform-origin:center;transition:all .3s ease;width:100%}.mobile-menu-toggle.active .mobile-menu-line:first-child{transform:rotate(45deg) translate(6px,6px)}.mobile-menu-toggle.active .mobile-menu-line:nth-child(2){opacity:0}.mobile-menu-toggle.active .mobile-menu-line:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.mobile-menu-overlay{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background-color:#f5f2edfa;bottom:0;left:0;opacity:0;position:fixed;right:0;top:0;transition:all .3s ease;visibility:hidden;z-index:999}.mobile-menu-overlay.active{opacity:1;visibility:visible}.mobile-menu-content{display:flex;flex-direction:column;height:100vh;justify-content:center;overflow-y:auto;padding:1rem}.mobile-menu-nav{display:flex;flex:1 1;flex-direction:column;gap:.5rem;justify-content:center;padding:2rem 0}.mobile-menu-link{animation:mobileMenuSlideIn .4s ease-out forwards;background:#ffffff4d;border:1px solid #211d1e0d;border-radius:12px;color:#211d1ecc;display:block;font-size:1.4rem;font-weight:500;opacity:0;padding:1rem 1.5rem;position:relative;text-decoration:none;transform:translateX(-20px);transition:all .3s ease}.mobile-menu-link.active{background:#ed21241a;border-color:#ed212433;color:#ed2124}.mobile-menu-link:active{background:#ed212426;transform:scale(.98)}.mobile-menu-footer{border-top:1px solid #211d1e1a;padding-top:2rem}.mobile-menu-social{display:flex;gap:1.5rem;justify-content:center;padding:1rem 0}.mobile-menu-social-link{align-items:center;animation:mobileMenuSocialSlideIn .4s ease-out .3s forwards;background:#fff9;border:1px solid #211d1e1a;border-radius:12px;display:flex;height:50px;justify-content:center;opacity:0;transform:translateY(20px);transition:all .3s ease;width:50px}.mobile-menu-social-link:active{background:#ed21241a;transform:scale(.9)}.mobile-menu-social-icon{height:24px;object-fit:contain;width:24px}@keyframes mobileMenuSlideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes mobileMenuSocialSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (hover:none) and (pointer:coarse){.mobile-menu-link:hover{background:#ffffff4d;transform:none}.mobile-menu-link.active:hover{background:#ed21241a}.mobile-menu-social-link:hover{background:#fff9;transform:none}}@media (max-width:360px){.mobile-navbar-content{padding:0 .8rem}.mobile-nav-brand{font-size:1.2rem}.mobile-menu-content{padding:.8rem}.mobile-menu-link{font-size:1.3rem;padding:.9rem 1.2rem}.mobile-menu-social-link{height:45px;width:45px}.mobile-menu-social-icon{height:22px;width:22px}}@media (max-height:600px) and (orientation:landscape){.mobile-menu-content{padding:.5rem}.mobile-menu-header{margin-bottom:1rem;padding:.5rem 0 1rem}.mobile-menu-nav{gap:.3rem;padding:.5rem 0}.mobile-menu-link{font-size:1.2rem;padding:.8rem 1.2rem}.mobile-menu-footer{padding-top:1rem}.mobile-menu-social{padding:.5rem 0}}.home-mobile-page{background-color:#f5f2ed;min-height:100vh;overflow-x:hidden;padding:2rem 0;position:relative}.home-mobile-page,.mobile-hero-content{align-items:center;display:flex;justify-content:center}.mobile-hero-content{flex-direction:column;max-width:100%;min-height:80vh;padding:1rem;text-align:center;width:100%}.mobile-hero-title{animation:mobileSlideUpTitle .8s ease-out forwards;color:#211d1e;font-size:2.5rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin-bottom:2rem;opacity:0;transform:translateY(30px)}.mobile-accent{color:#ed2124;display:block}.mobile-main-content{align-items:center;display:flex;flex-direction:column;gap:2rem;width:100%}.mobile-bonsai-container{animation:mobileScaleIn .8s ease-out .3s forwards;opacity:0;transform:scale(.8)}.mobile-bonsai-image{height:150px;object-fit:contain;transition:transform .3s ease;width:150px}.mobile-bonsai-image:active{transform:scale(.95)}.mobile-directories-section{align-items:center;display:flex;flex-direction:column;gap:2rem;width:100%}.mobile-directories-list{display:flex;flex-direction:column;gap:1rem;max-width:280px;width:100%}.mobile-directory-item{animation:mobileSlideUpStagger .6s ease-out forwards;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #211d1e14;border-radius:12px;box-shadow:0 2px 15px #00000014;display:block;opacity:0;overflow:hidden;padding:1rem 1.5rem;position:relative;text-decoration:none;transform:translateY(20px);transition:all .3s ease}.mobile-directory-item:before{background:linear-gradient(90deg,#0000,#ed21241a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.mobile-directory-item:active{box-shadow:0 1px 8px #0000001f;transform:scale(.95)}.mobile-directory-item:active:before{left:100%}.mobile-directory-name{color:#211d1e;display:block;font-size:1.3rem;font-weight:600;letter-spacing:.02em;position:relative;z-index:1}.mobile-social-links{align-items:center;animation:mobileSlideUpSocial .6s ease-out .8s forwards;display:flex;gap:1.5rem;justify-content:center;margin-top:1rem;opacity:0;transform:translateY(20px)}.mobile-social-link{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff9;border:1px solid #211d1e14;border-radius:12px;box-shadow:0 2px 10px #00000014;display:inline-block;padding:.8rem;transition:all .3s ease}.mobile-social-link:active{box-shadow:0 1px 5px #0000001f;transform:scale(.9)}.mobile-social-icon{height:32px;object-fit:contain;transition:all .3s ease;width:32px}@keyframes mobileSlideUpTitle{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes mobileScaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes mobileSlideUpStagger{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes mobileSlideUpSocial{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (hover:none) and (pointer:coarse){.mobile-directory-item:hover{box-shadow:0 2px 15px #00000014;transform:none}.mobile-bonsai-image:hover,.mobile-social-link:hover{transform:none}}@media (max-width:360px){.mobile-hero-content{padding:.8rem}.mobile-hero-title{font-size:2.2rem}.mobile-bonsai-image{height:120px;width:120px}.mobile-directories-list{max-width:260px}.mobile-directory-item{padding:.9rem 1.2rem}.mobile-directory-name{font-size:1.2rem}.mobile-social-link{padding:.7rem}.mobile-social-icon{height:28px;width:28px}}@media (max-height:600px) and (orientation:landscape){.home-mobile-page{padding:1rem 0}.mobile-hero-content{min-height:auto;padding:1rem}.mobile-hero-title{font-size:2rem;margin-bottom:1rem}.mobile-main-content{gap:1rem}.mobile-bonsai-image{height:100px;width:100px}.mobile-directories-list{gap:.8rem}.mobile-directory-item{padding:.8rem 1.2rem}}.about-mobile-page{background-color:#f5f2ed;min-height:100vh;padding:4rem 0 2rem}.about-mobile-container{margin:0 auto;max-width:100%;padding:0 1rem}.mobile-page-title{animation:mobileSlideUp .6s ease-out forwards;color:#211d1e;font-size:2.2rem;font-weight:700;letter-spacing:-.02em;text-align:center}.mobile-bio-section,.mobile-page-title{margin-bottom:2rem;opacity:0;transform:translateY(20px)}.mobile-bio-section{animation:mobileSlideUp .6s ease-out .2s forwards}.mobile-bio-text{background:#ffffffb3;border:1px solid #211d1e14;border-radius:12px;color:#211d1ecc;font-size:1.1rem;font-weight:400;line-height:1.6;margin:0;padding:1.2rem;text-align:left}.mobile-section-animate{opacity:0;transform:translateY(30px);transition:all .6s ease-out}.mobile-section-animate.visible{opacity:1;transform:translateY(0)}.mobile-section-title{color:#211d1e;font-size:1.8rem;font-weight:600;letter-spacing:-.01em;margin-bottom:1.5rem;padding-left:.5rem;text-align:left}.mobile-content-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #211d1e14;border-radius:12px;box-shadow:0 2px 15px #00000014;margin-bottom:2rem;padding:1.5rem;transition:all .3s ease}.mobile-content-card:active{box-shadow:0 1px 8px #0000001f;transform:scale(.98)}.mobile-education-section{margin-bottom:2.5rem}.mobile-degree{color:#ed2124;font-size:1.3rem;font-weight:600;line-height:1.3;margin:0 0 .8rem}.mobile-university{color:#211d1ee6;font-size:1rem;line-height:1.4;margin:0 0 1.2rem}.mobile-education-details{display:flex;flex-direction:column;gap:.3rem;margin-bottom:1.2rem}.mobile-gpa,.mobile-graduation{color:#211d1eb3;font-size:.95rem;margin:0}.mobile-achievement{background:#ed21241a;border:1px solid #ed212433;border-radius:20px;color:#ed2124;display:inline-block;font-size:.9rem;font-weight:500;margin:0;padding:.6rem 1rem;text-align:center}.mobile-skills-section{margin-bottom:2.5rem}.mobile-skill-category{background:#fff9;border:1px solid #211d1e0f;border-radius:12px;margin-bottom:2rem;padding:1.2rem}.mobile-skill-category:last-child{margin-bottom:0}.mobile-category-title{color:#211d1ee6;font-size:1rem;font-weight:600;letter-spacing:.02em;margin:0 0 1rem}.mobile-skills-list{display:flex;flex-wrap:wrap;gap:.5rem}.mobile-skill-tag{background:#ed21241a;border:1px solid #ed212433;border-radius:16px;color:#ed2124;cursor:default;display:inline-block;font-size:.8rem;font-weight:500;padding:.5rem .9rem;text-align:center;transition:all .2s ease}.mobile-skill-tag:active{background:#ed212433;transform:scale(.95)}.mobile-experience-section{margin-bottom:2rem}.mobile-experience-list{display:flex;flex-direction:column;gap:1.5rem}.mobile-job-card{margin-bottom:0}.mobile-job-title{color:#ed2124;font-size:1.2rem;font-weight:600;line-height:1.3;margin:0 0 .5rem}.mobile-company{color:#211d1ee6;font-size:1rem;line-height:1.4;margin:0 0 .3rem}.mobile-period{color:#211d1e99;font-size:.9rem;font-style:italic;margin:0 0 1rem}.mobile-job-responsibilities{list-style:none;margin:0;padding:0}.mobile-job-responsibilities li{color:#211d1eb3;font-size:.9rem;line-height:1.4;margin-bottom:.6rem;padding-left:1.2rem;position:relative}.mobile-job-responsibilities li:before{color:#ed2124;content:"▸";font-size:1rem;font-weight:700;left:0;position:absolute}@keyframes mobileSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (hover:none) and (pointer:coarse){.mobile-content-card:hover{box-shadow:0 2px 15px #00000014;transform:none}.mobile-skill-tag:hover{background:#ed21241a;transform:none}}@media (max-width:360px){.about-mobile-container{padding:0 .8rem}.mobile-page-title{font-size:2rem}.mobile-bio-text{font-size:1rem;padding:1rem}.mobile-section-title{font-size:1.6rem}.mobile-content-card{padding:1.2rem}.mobile-skill-category{padding:1rem}.mobile-skill-tag{font-size:.75rem;padding:.4rem .8rem}}.contact-mobile-page{background-color:#f5f2ed;min-height:100vh;padding:4rem 0 2rem}.contact-mobile-container{align-items:center;display:flex;flex-direction:column;margin:0 auto;max-width:100%;padding:0 1rem}.mobile-contact-title{animation:mobileContactSlideUp .6s ease-out forwards;color:#211d1e;font-size:2.2rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1.5rem}.mobile-contact-description,.mobile-contact-title{opacity:0;text-align:center;transform:translateY(20px)}.mobile-contact-description{animation:mobileContactSlideUp .6s ease-out .1s forwards;color:#211d1eb3;font-size:1.1rem;line-height:1.6;margin:0 0 2.5rem;max-width:400px}.mobile-contact-methods{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem;max-width:350px;width:100%}.mobile-contact-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #211d1e14;border-radius:12px;box-shadow:0 2px 15px #00000014;opacity:0;padding:1.8rem;text-align:center;transform:translateY(30px);transition:all .3s ease;transition:all .6s ease-out}.mobile-contact-card.visible{opacity:1;transform:translateY(0)}.mobile-contact-card:active{box-shadow:0 1px 8px #0000001f;transform:scale(.98)}.mobile-contact-icon{align-items:center;background:#ed2124;border-radius:50%;display:flex;height:60px;justify-content:center;margin:0 auto 1rem;width:60px}.mobile-contact-icon svg{color:#f5f2ed;font-size:2rem}.mobile-contact-method-title{color:#211d1e;font-size:1.3rem;font-weight:600;letter-spacing:-.01em;margin:0 0 .8rem}.mobile-contact-value{color:#ed2124;font-size:1rem;font-weight:500;margin:0 0 1rem;transition:all .3s ease;word-break:break-word}.mobile-contact-value.clickable{cursor:pointer}.mobile-contact-value.clickable:active{opacity:.7;transform:scale(.98)}.mobile-contact-method-description{color:#211d1eb3;font-size:.95rem;line-height:1.5;margin:0 0 1.5rem}.mobile-contact-button{background:#ed2124;border:none;border-radius:8px;color:#f5f2ed;cursor:pointer;font-size:1rem;font-weight:500;letter-spacing:.02em;max-width:200px;padding:.9rem 1.8rem;transition:all .3s ease;width:100%}.mobile-contact-button:active{background:#d01e21;transform:scale(.95)}.mobile-contact-footer{border-top:1px solid #211d1e1a;margin-top:1rem;max-width:350px;opacity:0;padding:1.5rem 1rem;text-align:center;transform:translateY(30px);transition:all .6s ease-out;width:100%}.mobile-contact-footer.visible{opacity:1;transform:translateY(0)}.mobile-contact-location{color:#211d1ee6;font-size:1rem;font-weight:500;margin:0 0 .5rem}.mobile-contact-availability{color:#211d1e99;font-size:.9rem;line-height:1.4;margin:0}.mobile-contact-animate{opacity:0;transform:translateY(30px);transition:all .6s ease-out}.mobile-contact-animate.visible{opacity:1;transform:translateY(0)}@keyframes mobileContactSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (hover:none) and (pointer:coarse){.mobile-contact-card:hover{box-shadow:0 2px 15px #00000014;transform:none}.mobile-contact-value.clickable:hover{opacity:1;transform:none}.mobile-contact-button:hover{background:#ed2124;transform:none}}@media (max-width:360px){.contact-mobile-container{padding:0 .8rem}.mobile-contact-title{font-size:2rem}.mobile-contact-description{font-size:1rem;max-width:320px}.mobile-contact-methods{max-width:320px}.mobile-contact-card{padding:1.5rem}.mobile-contact-icon{font-size:2.2rem}.mobile-contact-method-title{font-size:1.2rem}.mobile-contact-footer{max-width:320px;padding:1.2rem .8rem}}@media (max-height:600px) and (orientation:landscape){.contact-mobile-page{padding:2rem 0 1rem}.mobile-contact-title{font-size:1.8rem;margin-bottom:1rem}.mobile-contact-description{margin-bottom:1.5rem}.mobile-contact-methods{gap:1rem}.mobile-contact-card{padding:1.2rem}.mobile-contact-icon{font-size:2rem;margin-bottom:.5rem}.mobile-contact-footer{margin-top:.5rem;padding:1rem}}.device-debugger-toggle{background:#ed2124;border:none;border-radius:50%;bottom:20px;box-shadow:0 4px 20px #ed21244d;color:#fff;cursor:pointer;font-size:20px;height:50px;position:fixed;right:20px;transition:all .3s ease;width:50px;z-index:9999}.device-debugger-toggle:hover{box-shadow:0 6px 25px #ed212466;transform:scale(1.1)}.device-debugger-panel{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffff2;border:1px solid #211d1e1a;border-radius:12px;bottom:80px;box-shadow:0 10px 40px #0003;max-height:70vh;max-width:calc(100vw - 40px);overflow-y:auto;position:fixed;right:20px;width:350px;z-index:9998}.device-debugger-header{align-items:center;background:#ed21240d;border-bottom:1px solid #211d1e1a;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:1rem}.device-debugger-header h3{color:#211d1e;font-size:1rem;font-weight:600;margin:0}.device-debugger-close{align-items:center;background:none;border:none;border-radius:50%;color:#211d1e;cursor:pointer;display:flex;font-size:1.5rem;height:24px;justify-content:center;padding:0;transition:all .2s ease;width:24px}.device-debugger-close:hover{background:#211d1e1a}.device-debugger-content{font-size:.9rem;padding:1rem}.breakpoints-section,.device-info-section,.testing-section,.user-agent-section{margin-bottom:1.5rem}.breakpoints-section:last-child,.device-info-section:last-child,.testing-section:last-child,.user-agent-section:last-child{margin-bottom:0}.device-debugger-content h4{color:#ed2124;font-size:.9rem;font-weight:600;margin:0 0 .5rem}.device-debugger-content ul{list-style-type:none;margin:0;padding-left:1rem}.device-debugger-content li{color:#211d1ecc;line-height:1.4;margin-bottom:.3rem}.device-debugger-content li:before{color:#ed2124;content:"•";margin-right:.5rem}.breakpoint-indicator{border-radius:12px;font-size:.8rem;font-weight:600;margin-left:.5rem;padding:.2rem .5rem}.breakpoint-indicator.mobile{background:#ffc10733;color:#ff8f00}.breakpoint-indicator.tablet{background:#2196f333;color:#1976d2}.breakpoint-indicator.desktop{background:#4caf5033;color:#388e3c}.user-agent-text{background:#211d1e0d;border-radius:6px;color:#211d1eb3;font-family:monospace;font-size:.75rem;line-height:1.3;padding:.5rem;word-break:break-all}@media (max-width:480px){.device-debugger-toggle{bottom:15px;font-size:18px;height:45px;right:15px;width:45px}.device-debugger-panel{bottom:70px;left:15px;max-width:none;right:15px;width:auto}.device-debugger-content{font-size:.85rem;padding:.8rem}.user-agent-text{font-size:.7rem}}@font-face{font-family:The Loccosta Regular;font-style:normal;font-weight:400;src:url(/static/media/The%20Loccosta%20Regular.bae955efe29b5a5c2e35.otf) format("opentype")}@font-face{font-family:Noot Regular;font-style:normal;font-weight:400;src:url(/static/media/Noot%20Regular.0b2580850da0daf8ab26.ttf) format("opentype")}@font-face{font-family:Ounen-mouhitsu;font-style:normal;font-weight:400;src:url(/static/media/Ounen-mouhitsu.3c1117826040acfa7822.otf) format("opentype")}@font-face{font-family:和風ぽっぷ;font-style:normal;font-weight:400;src:url(/static/media/%E5%92%8C%E9%A2%A8%E3%81%BD%E3%81%A3%E3%81%B7.6276d3f07ce4bc6edb57.ttf) format("opentype")}*{box-sizing:border-box}*,body,html{margin:0;padding:0}body,html{min-height:100vh;overflow-x:hidden;width:100%}body{background-color:#f5f2ed;color:#211d1e;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;min-width:100vw}#root,.App{display:flex;flex-direction:column;min-height:100vh;width:100%}.App{overflow-x:hidden}main{flex:1 1;width:100%}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#211d1e1a}::-webkit-scrollbar-thumb{background:#ed2124;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#d11e21}::selection{background-color:#ed21244d;color:#211d1e}html{scroll-behavior:smooth}a{color:inherit;text-decoration:none}.MuiContainer-root{max-width:1200px!important;padding-left:1rem!important;padding-right:1rem!important;width:100%!important}.fade-enter{opacity:0}.fade-enter-active{opacity:1;transition:opacity .3s ease-in}.fade-exit{opacity:1}.fade-exit-active{opacity:0;transition:opacity .3s ease-in}@media (max-width:768px){html{font-size:14px}}@media (min-width:769px) and (max-width:1024px){html{font-size:15px}}@media (min-width:1025px){html{font-size:16px}}
/*# sourceMappingURL=main.98045528.css.map*/