diff --git a/A_star.gif b/A_star.gif new file mode 100644 index 000000000..dd08b4f80 Binary files /dev/null and b/A_star.gif differ diff --git a/CNAME b/CNAME deleted file mode 100644 index 360fbed5c..000000000 --- a/CNAME +++ /dev/null @@ -1 +0,0 @@ -stanleychueh.com \ No newline at end of file diff --git a/Hybrid_a_star.gif b/Hybrid_a_star.gif new file mode 100644 index 000000000..3577adab5 Binary files /dev/null and b/Hybrid_a_star.gif differ diff --git a/asset-manifest.json b/asset-manifest.json index 074f9d9b9..c9012636a 100644 --- a/asset-manifest.json +++ b/asset-manifest.json @@ -1,15 +1,15 @@ { "files": { - "main.css": "/static/css/main.cc719a99.css", - "main.js": "/static/js/main.9d1877c9.js", + "main.css": "/static/css/main.9c8bd7ce.css", + "main.js": "/static/js/main.f5b29c60.js", "static/js/453.362c3327.chunk.js": "/static/js/453.362c3327.chunk.js", "index.html": "/index.html", - "main.cc719a99.css.map": "/static/css/main.cc719a99.css.map", - "main.9d1877c9.js.map": "/static/js/main.9d1877c9.js.map", + "main.9c8bd7ce.css.map": "/static/css/main.9c8bd7ce.css.map", + "main.f5b29c60.js.map": "/static/js/main.f5b29c60.js.map", "453.362c3327.chunk.js.map": "/static/js/453.362c3327.chunk.js.map" }, "entrypoints": [ - "static/css/main.cc719a99.css", - "static/js/main.9d1877c9.js" + "static/css/main.9c8bd7ce.css", + "static/js/main.f5b29c60.js" ] } \ No newline at end of file diff --git a/index.html b/index.html index 62223770c..07cae8d6c 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -Stanley Chueh Portfolio
\ No newline at end of file +Stanley Chueh Portfolio
\ No newline at end of file diff --git a/static/css/main.cc719a99.css b/static/css/main.9c8bd7ce.css similarity index 88% rename from static/css/main.cc719a99.css rename to static/css/main.9c8bd7ce.css index 428767a5f..55051ef05 100644 --- a/static/css/main.cc719a99.css +++ b/static/css/main.9c8bd7ce.css @@ -1,2 +1,2 @@ -*{box-sizing:border-box;margin:0;padding:0}body,html{height:auto;min-height:100vh;overflow-x:hidden}section{box-sizing:border-box;padding:50px 20px}h1,h2,h3,h4,h5,h6,p{word-wrap:break-word;line-height:1.5;margin:0}.navbar{align-items:center;background-color:#111;display:flex;justify-content:space-between;padding:15px 10px;position:fixed;top:0;width:100%;z-index:1000}.sc-logo{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#ffc107,#ff5722);-webkit-background-clip:text;cursor:pointer;font-size:1.2rem;font-weight:700}.nav-links{display:flex;gap:20px;list-style:none;margin:0;padding:0}.nav-links li a{color:#ffc107;font-size:1rem;font-weight:700;text-decoration:none;transition:color .3s ease}.nav-links li a:hover{color:#fff}.menu-icon{cursor:pointer;display:none;flex-direction:column;gap:5px}.menu-line{background-color:#ffc107;height:3px;width:25px}@media (max-width:768px){.nav-links{background-color:#111;border-radius:5px;display:none;flex-direction:column;gap:10px;padding:10px;position:absolute;right:10px;top:60px}.menu-icon,.nav-links.open{display:flex}}.home-container{align-items:center;background-color:#121212;box-sizing:border-box;color:#fff;display:flex;flex-direction:column;height:100vh;justify-content:center;padding:20px;text-align:center}.greeting{color:#ffc107;font-size:2.5rem;margin-bottom:10px}.wave{animation:wave-animation 2s infinite;display:inline-block;transform-origin:70% 80%}@keyframes wave-animation{0%{transform:rotate(0deg)}25%{transform:rotate(15deg)}50%{transform:rotate(0deg)}}.name{color:#ffc107;font-size:2.8rem;font-weight:700;line-height:1;margin-bottom:15px}.name,.typewriter{white-space:nowrap}.typewriter{color:#a9f0d1;font-size:1.5rem;font-weight:500;margin-top:10px;overflow:hidden;text-overflow:ellipsis}.cursor{animation:blink .7s step-end infinite}@keyframes blink{0%{border-color:#0000}to{border-color:#a9f0d1}}@media (max-width:768px){.greeting{font-size:2rem}.name{font-size:2.4rem}.typewriter{font-size:1.2rem}.home-container{padding:15px}}@media (max-width:480px){.greeting{font-size:1.8rem}.name{font-size:2rem}.typewriter{font-size:1rem}.home-container{padding:10px}}.about-section{background-color:#121212;color:#fff;max-width:100%;padding:2rem}.about-section h2{word-wrap:break-word;color:#ffc107;font-size:2.5rem;line-height:1.2;overflow-wrap:break-word;white-space:normal}.about-intro,.about-section h2{margin-bottom:1.5rem;text-align:center}.about-intro{color:#eaeaea}.intro-box{background-color:#1a1a1a;border-radius:10px;color:#ffc107;padding:1.5rem}.intro-box,.skills{margin-bottom:1.5rem}.skills{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.skill-tag{background-color:#ffc107;border-radius:5px;color:#121212;font-size:1rem;font-weight:700;margin:.5rem;padding:6px 12px}.journey-tabs{align-items:center;display:flex;justify-content:space-around;margin:20px 0}.journey-tabs button{align-items:center;background-color:#ffc107;border:none;border-radius:8px;color:#000;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:10px;padding:10px 20px;transition:transform .2s ease}.journey-tabs button.active{box-shadow:0 4px 10px #0000004d;transform:scale(1.1)}.journey-tabs button:hover{transform:scale(1.05)}.journey-tabs button svg{font-size:1.5rem}.timeline-container{background-color:#1a1a1a;border-radius:10px;display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem;padding:1.5rem}.timeline-item{align-items:center;display:flex;flex-direction:column;text-align:center}.timeline-item .circle{background-color:#ffc107;border-radius:50%;height:15px;margin-bottom:10px;width:15px}.timeline-item .content h4{color:#ffc107;font-size:1.2rem;margin-bottom:.5rem}.timeline-item span{color:#eaeaea;font-size:.9rem}@media (max-width:768px){.about-section{padding:1rem}.about-section h2{word-wrap:break-word;color:#ffc107;font-size:2.5rem;line-height:1.2;margin-bottom:1.5rem;overflow-wrap:break-word;text-align:center;white-space:normal}.skills{gap:5px}.skill-tag{font-size:.9rem;padding:5px 10px}.journey-tabs{gap:10px}.journey-tabs button{font-size:1rem;height:auto;max-width:150px;padding:8px 12px}.journey-tabs button svg{font-size:1.5rem}.timeline-container{gap:1rem;padding:1rem}.timeline-item .content h4{font-size:1.1rem}.timeline-item span{font-size:.8rem}}@media (max-width:480px){.about-section h2{word-wrap:break-word;color:#ffc107;font-size:2.5rem;line-height:1.5;margin-bottom:1.5rem;overflow-wrap:break-word;text-align:center;white-space:normal}.skills{flex-direction:column;gap:5px}.skill-tag{font-size:.8rem;padding:4px 8px}.journey-tabs{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.journey-tabs,.journey-tabs button{align-items:center;justify-content:center}.journey-tabs button{background-color:#ffc107;border:none;border-radius:8px;color:#000;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:8px;height:50px;text-align:center;transition:transform .2s ease;width:130px}.journey-tabs button:hover{transform:scale(1.05)}.journey-tabs button svg{font-size:1.2rem}.journey-tabs button:nth-child(3){grid-column:1/span 2;justify-self:center}.timeline-container{padding:.8rem}.timeline-item .content h4{font-size:1rem}.timeline-item span{font-size:.7rem}}.skills-title{color:#ffc107;font-size:2.5rem;margin-bottom:40px;text-align:center}.skills-container{grid-gap:20px;box-sizing:border-box;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(1000px,1fr));padding:20px;width:100%}.skills-category{background:#1e1e2f;border-left:5px solid;border-radius:10px;box-shadow:0 4px 15px #0003;padding:20px;transition:transform .3s ease}.category-header{align-items:center;display:flex;gap:10px;margin-bottom:20px}.category-icon{color:inherit;font-size:2rem}.category-title{color:#ffc107;font-size:1.8rem;margin-bottom:10px;text-align:center}.skills-list{display:flex;flex-direction:column;gap:15px}.skill-item{gap:15px;justify-content:space-between}.skill-item,.skill-label{align-items:center;display:flex}.skill-label{color:#ddd;flex:1 1;font-weight:700;gap:10px}.progress-bar-container{background:#333;border-radius:10px;box-shadow:inset 0 0 5px #00000080;flex:3 1;height:10px;overflow:hidden}.progress-bar{border-radius:10px;height:100%}.skill-percentage{color:#ddd;flex:1 1;font-weight:700;text-align:right}.skill-item:hover .progress-bar{transform:scale(1.02);transition:transform .3s ease}@media (max-width:768px){.skills-container{gap:20px;padding:10px}.skills-category{border-left-width:3px;padding:15px}.category-title{font-size:1.5rem}.skill-item{align-items:center;flex-direction:row;gap:10px;justify-content:space-between}.skill-label{font-size:.9rem}.progress-bar-container{height:8px}.skill-percentage{color:#ffc107;margin-left:10px;text-align:left}}#portfolio{background:#0b1120;color:#f8f9fa;padding:30px 10px}h2{color:#ffc107;font-size:1.8rem;margin-bottom:15px;text-align:center}.category-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:20px}.category-button{background-color:#112240;border:2px solid #ffc107;border-radius:20px;color:#fff;cursor:pointer;font-size:1rem;padding:10px 18px;transition:transform .2s,background-color .3s}.category-button:hover{background-color:#ffc107;color:#121212}.category-button.active{background-color:#ffae00;color:#fff;transform:scale(1.1)}.project-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr}.project-card{background:#112240;border-radius:10px;box-shadow:0 4px 12px #0000004d;padding:20px;transition:transform .2s,box-shadow .2s;width:100%}.project-card:hover{box-shadow:0 8px 16px #ffc1074d;transform:translateY(-8px)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.tag{background:#ffc107;border-radius:6px;color:#121212;font-size:.9rem;font-weight:700;padding:6px 10px;transition:transform .2s,background-color .3s}.tag:hover{background:#ffdd57;transform:scale(1.1)}.filter-buttons{display:flex;gap:10px;justify-content:center;margin-bottom:20px}.filter-buttons button{background-color:#ffc107;border:none;border-radius:25px;color:#121212;cursor:pointer;font-size:1rem;padding:10px 20px;transition:transform .2s ease-in-out,background-color .3s ease-in-out}.filter-buttons button:hover{background-color:#ffdd57;transform:scale(1.05)}.filter-buttons button.active{background-color:#ffae00;color:#fff}@media (max-width:480px){h2{font-size:1.4rem}.category-button{font-size:.8rem;padding:8px 12px}.project-card{font-size:.9rem;padding:15px}.tag{font-size:.7rem;padding:4px 8px}}.resume-section{background:linear-gradient(135deg,#1e1e2f,#252542);color:#ffc107;min-height:100vh;padding:2rem 1rem;text-align:center}.resume-section h2{font-size:2.5rem;margin-bottom:1rem}.resume-section p{color:#fff;font-size:1.2rem;margin-bottom:2rem}.resume-category{margin:2rem 0;text-align:left}.resume-category h3{align-items:center;color:#ffc107;display:flex;font-size:1.8rem;gap:.5rem;margin-bottom:1rem}.resume-card{background:#1e1e2f;border:2px solid #ffc107;border-radius:8px;margin-bottom:1rem;padding:1rem}.resume-card h4{font-size:1.5rem;margin-bottom:.5rem}.resume-card span{color:#ccc;font-size:1rem}.resume-card p{color:#fff;font-size:1rem}.skills-grid{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:1rem}.skills-grid span{background:#252542;border-radius:5px;color:#ffc107;font-size:1rem;padding:.5rem 1rem;transition:all .3s}.skills-grid span:hover{background:#ffc107;color:#252542;transform:scale(1.1)}.download-resume{margin-top:2rem}.download-button{align-items:center;background:#ffc107;border-radius:5px;color:#252542;display:inline-flex;font-size:1.2rem;font-weight:700;gap:.5rem;padding:.8rem 1.5rem;text-decoration:none;transition:all .3s}.download-button:hover{background:#fff;color:#252542;transform:scale(1.05)}@media (max-width:768px){.resume-section h2{font-size:2rem}.resume-section p{font-size:1rem}.resume-card{padding:.8rem}.resume-card h4{font-size:1.3rem}.resume-card p,.resume-card span{font-size:.9rem}.skills-grid span{font-size:.9rem;padding:.4rem .8rem}.download-button{font-size:1rem;padding:.6rem 1rem}}@media (max-width:480px){.resume-section h2{font-size:1.8rem}.resume-card{padding:.6rem}.resume-card h4{font-size:1.2rem}.resume-card p,.resume-card span{font-size:.8rem}.skills-grid span{font-size:.8rem;padding:.3rem .6rem}.download-button{font-size:.9rem;padding:.5rem .8rem}}.contact-section{background:linear-gradient(135deg,#1e1e2f,#252542);color:#ffc107;min-height:100vh;padding:2rem;text-align:center}.contact-section h2{font-size:2.5rem;margin-bottom:1rem}.contact-section p{color:#fff;font-size:1.2rem;margin-bottom:2rem}.contact-form{align-items:center;display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.form-input,.form-textarea{background:#1e1e2f;border:2px solid #ffc107;border-radius:5px;color:#fff;font-size:1rem;max-width:500px;outline:none;padding:1rem;transition:.3s;width:80%}.form-input:focus,.form-textarea:focus{background:#252542;border-color:#fff}.form-textarea{height:150px;resize:none}.send-button{align-items:center;background:#ffc107;border:none;border-radius:5px;color:#252542;cursor:pointer;display:flex;font-size:1.2rem;font-weight:700;gap:.5rem;padding:.8rem 1.5rem;transition:all .3s}.send-button:hover{background:#fff;color:#252542;transform:scale(1.05)}.contact-info{color:#fff;margin-top:2rem;text-align:center}.contact-info h3{font-size:1.5rem;margin-bottom:1rem}.contact-link{align-items:center;color:#ffc107;display:flex;font-size:1.1rem;gap:.5rem;justify-content:center;text-decoration:none;transition:color .3s}.contact-link:hover{color:#fff}.contact-info p{font-size:1rem}.connect-with-me{margin-bottom:2rem}.connect-icons,.connect-with-me{align-items:center;display:flex;flex-direction:column;justify-content:center}.connect-icons{gap:.5rem}.image-video-container{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:20px 0}.image-container-left{display:flex;flex:1 1;justify-content:center}.video-image-container{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:20px 0}.video-container-right{display:flex;flex:1 1;justify-content:center}.video-image-container-left{align-items:center;display:flex;gap:20px;justify-content:flex-start;margin:20px 0}.video-image-container-left iframe{width:60%}.video-image-container-left iframe,.video-image-container-left img{aspect-ratio:16/9;border-radius:10px;box-shadow:0 4px 10px #00000080;max-width:800px}.video-image-container-left img{width:48%}.amcl-image{aspect-ratio:16/9;border-radius:10px;box-shadow:0 4px 10px #00000080;max-width:500px;transition:transform .3s ease,box-shadow .3s ease;width:100%}.amcl-image:hover{box-shadow:0 8px 20px #000000b3;transform:scale(1.05)}.video-container-center{align-items:center;display:flex;justify-content:center;margin:20px auto}.video-container-center iframe{aspect-ratio:16/9;border-radius:10px;box-shadow:0 4px 10px #00000080;max-width:1000px;width:80%}.image-container-above{display:flex;justify-content:center;margin-bottom:20px}.image-container-above img{aspect-ratio:auto;max-width:800px;width:80%}.image-container-above img,.video-iframe{border-radius:10px;box-shadow:0 4px 10px #00000080}.video-iframe{aspect-ratio:16/9;max-width:500px;transition:transform .3s ease,box-shadow .3s ease;width:100%}.video-iframe:hover{box-shadow:0 8px 20px #000000b3;transform:scale(1.05)}.video-image-container iframe,.video-image-container img{aspect-ratio:16/9;border-radius:10px;box-shadow:0 4px 10px #00000080;max-width:800px;width:48%}.video-container iframe{aspect-ratio:16/9;display:block;margin:0 auto;max-width:800px;transition:transform .3s ease,box-shadow .3s ease;width:60%}.video-container iframe:hover,.videos-container iframe:hover{box-shadow:0 8px 20px #000000b3;transform:scale(1.05);transition:transform .3s ease,box-shadow .3s ease}.video-container-center iframe{transition:transform .3s ease,box-shadow .3s ease}.video-container-center iframe:hover{box-shadow:0 8px 20px #000000b3;transform:scale(1.05)}.video-container{margin-top:20px;text-align:center}.videos-container iframe:hover{box-shadow:0 8px 20px #000000b3;transform:scale(1.05)}.video-section-center{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:20px auto;text-align:center}.video-section-center iframe{aspect-ratio:16/9;border-radius:10px;box-shadow:0 4px 10px #00000080;display:block;margin:0 auto;max-width:1000px;width:80%}.videos-container{gap:10px;justify-content:space-between}.videos-container iframe{transition:transform .3s ease,box-shadow .3s ease}@media (max-width:768px){.content-header h2{word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.content-header h2,.section-container .content-header h2{font-size:24px!important;text-align:center}.section-container .content-header p{font-size:18px!important;text-align:left}.content-header p{font-size:16px;line-height:1.6;text-align:left}.gallery-container{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.gif{margin:0 auto;width:90%}.responsive-iframe{height:auto;margin-bottom:15px;max-width:100%}.subtitle-container h3{font-size:1.2rem}.videos-container{flex-wrap:nowrap;justify-content:space-evenly}.videos-container iframe{max-width:45%;width:45%}.section-container{padding:10px}}@media (max-width:480px){.content-header h2{word-wrap:break-word;font-size:24px!important;overflow-wrap:break-word;text-align:center;white-space:normal}.content-header p{font-size:14px;line-height:1.5;text-align:match-parent}.gif-container{align-items:center;flex-direction:column;gap:15px}.gif{max-width:350px;width:100%}.video-container iframe{height:250px;width:100%}.videos-container{flex-wrap:nowrap;gap:5px;justify-content:space-evenly}.videos-container iframe{max-width:45%;width:45%}.subtitle-container h3{font-size:1rem}.section-container{padding:5px}}.section-container{margin:40px auto;max-width:1200px;text-align:left}.section-container .content-header h2{font-size:32px}.content-header h2{word-wrap:break-word;line-height:1.9;overflow-wrap:break-word;white-space:normal}.gif-container{flex-wrap:wrap;gap:10px;margin-bottom:20px}@media (max-width:480px){.content-header h2{font-size:18px;text-align:center}.content-header p{font-size:14px;line-height:1.5;text-align:match-parent}.gif-container{align-items:center;flex-direction:column;gap:15px}.gif{max-width:350px;width:100%}.video-container iframe{height:250px;width:100%}.subtitle-container h3{font-size:1rem}.section-container{padding:5px}}.section-container{align-items:center;justify-content:center;margin:0 auto}.section-container .content-header h2{font-size:34px}.section-container .content-header p{font-size:22px}.content-header{margin-bottom:20px}.content-header h2{color:#ffc107;font-size:32px;font-weight:700;margin-bottom:15px;text-align:center}.content-header p{color:#eaeaea;font-size:20px;line-height:1.8;margin-bottom:1em;text-align:justify}.main-image-container{margin:20px 0;text-align:center}.image-container{display:flex;justify-content:center;margin:20px 0}.single-image{height:auto;max-width:100%}.main-image,.single-image{border-radius:10px;box-shadow:0 4px 10px #00000080}.main-image{margin:0 auto;max-width:400px;width:100%}.main-image:hover{transform:scale(1.05)}.gallery-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:20px}.gallery-image{border-radius:10px;box-shadow:0 4px 10px #00000080;max-height:250px;object-fit:cover;transition:transform .3s;width:100%}.gallery-image:hover{transform:scale(1.05)}.responsive-iframe{aspect-ratio:16/9;border:none;max-width:48%;width:100%}.gif-below-container{display:flex;justify-content:center;margin-top:20px}.gif-below{aspect-ratio:auto;border-radius:10px;box-shadow:0 4px 10px #00000080;max-width:800px;width:80%}.top-gif-container{justify-content:center;margin:20px 0;text-align:center}.top-gif{border-radius:10px;box-shadow:0 4px 10px #00000080;justify-content:center;max-width:800px;width:80%}.image-description{color:#eaeaea;font-size:18px;margin:15px 0;text-align:center}.gif-container{display:flex;gap:20px;justify-content:center;margin:20px 0}.gif{width:45%}.bottom-gif-container{margin:30px 0;text-align:center}.bottom-gif{border-radius:10px;max-width:800px;width:80%}.bottom-gif,.gif{box-shadow:0 4px 10px #00000080}.gif{border-radius:5px;width:48%}.gif:hover{transform:scale(1.05)}.video-container iframe{display:block;margin:20px auto;max-width:1200px;width:80%}.video-container iframe,.videos-container iframe{aspect-ratio:16/9;border-radius:10px;box-shadow:0 4px 10px #00000080}.videos-container iframe{max-width:600px;width:48%}.videos-container{align-items:center;display:flex;flex-wrap:nowrap;gap:20px;justify-content:space-around;margin-top:20px}.subtitle-container{margin:20px 0;text-align:center}.subtitle-container h3{color:#fc0;font-size:1.3rem!important;margin-bottom:15px}@media (max-width:768px){.section-container .content-header h2{font-size:24px!important;text-align:center}.section-container .content-header p{font-size:18px!important;text-align:left}.gallery-container{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.gif{margin:0 auto;width:90%}.responsive-iframe{height:auto;margin-bottom:15px;max-width:100%}.subtitle-container h3{font-size:1.2rem}.videos-container{align-items:center;flex-direction:column;flex-wrap:wrap}.videos-container iframe{margin-bottom:20px;max-width:100%;width:90%}.section-container{padding:10px}}@media (max-width:480px){.section-container .content-header h2{font-size:24px!important;text-align:center}.section-container .content-header p{font-size:18px!important;text-align:left}.gif-container{align-items:center;flex-direction:column;gap:15px}.gif{max-width:350px;width:100%}.video-container iframe{height:250px;width:100%}.subtitle-container h3{font-size:1rem}.section-container{padding:5px}}body{background-color:#111;margin:0;min-height:100vh;overflow-y:auto;padding:0}html{height:auto}.content-wrapper{overflow:visible}.content-wrapper,.section-container{display:flex;flex:1 1;flex-direction:column;padding:20px}.section-container{box-sizing:border-box;min-height:calc(100vh - 80px);overflow-x:hidden;overflow-y:auto} -/*# sourceMappingURL=main.cc719a99.css.map*/ \ No newline at end of file +*{box-sizing:border-box;margin:0;padding:0}body,html{height:auto;min-height:100vh;overflow-x:hidden}section{box-sizing:border-box;padding:50px 20px}h1,h2,h3,h4,h5,h6,p{word-wrap:break-word;line-height:1.5;margin:0}.navbar{align-items:center;background-color:#111;display:flex;justify-content:space-between;padding:15px 10px;position:fixed;top:0;width:100%;z-index:1000}.sc-logo{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#ffc107,#ff5722);-webkit-background-clip:text;cursor:pointer;font-size:1.2rem;font-weight:700}.nav-links{display:flex;gap:20px;list-style:none;margin:0;padding:0}.nav-links li a{color:#ffc107;font-size:1rem;font-weight:700;text-decoration:none;transition:color .3s ease}.nav-links li a:hover{color:#fff}.menu-icon{cursor:pointer;display:none;flex-direction:column;gap:5px}.menu-line{background-color:#ffc107;height:3px;width:25px}@media (max-width:768px){.nav-links{background-color:#111;border-radius:5px;display:none;flex-direction:column;gap:10px;padding:10px;position:absolute;right:10px;top:60px}.menu-icon,.nav-links.open{display:flex}}.home-container{align-items:center;background-color:#121212;box-sizing:border-box;color:#fff;display:flex;flex-direction:column;height:100vh;justify-content:center;padding:20px;text-align:center}.greeting{color:#ffc107;font-size:2.5rem;margin-bottom:10px}.wave{animation:wave-animation 2s infinite;display:inline-block;transform-origin:70% 80%}@keyframes wave-animation{0%{transform:rotate(0deg)}25%{transform:rotate(15deg)}50%{transform:rotate(0deg)}}.name{color:#ffc107;font-size:2.8rem;font-weight:700;line-height:1;margin-bottom:15px}.name,.typewriter{white-space:nowrap}.typewriter{color:#a9f0d1;font-size:1.5rem;font-weight:500;margin-top:10px;overflow:hidden;text-overflow:ellipsis}.cursor{animation:blink .7s step-end infinite}@keyframes blink{0%{border-color:#0000}to{border-color:#a9f0d1}}@media (max-width:768px){.greeting{font-size:2rem}.name{font-size:2.4rem}.typewriter{font-size:1.2rem}.home-container{padding:15px}}@media (max-width:480px){.greeting{font-size:1.8rem}.name{font-size:2rem}.typewriter{font-size:1rem}.home-container{padding:10px}}.about-section{background-color:#121212;color:#fff;max-width:100%;padding:2rem}.about-section h2{word-wrap:break-word;color:#ffc107;font-size:2.5rem;line-height:1.2;overflow-wrap:break-word;white-space:normal}.about-intro,.about-section h2{margin-bottom:1.5rem;text-align:center}.about-intro{color:#eaeaea}.intro-box{background-color:#1a1a1a;border-radius:10px;color:#ffc107;padding:1.5rem}.intro-box,.skills{margin-bottom:1.5rem}.skills{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.skill-tag{background-color:#ffc107;border-radius:5px;color:#121212;font-size:1rem;font-weight:700;margin:.5rem;padding:6px 12px}.journey-tabs{align-items:center;display:flex;justify-content:space-around;margin:20px 0}.journey-tabs button{align-items:center;background-color:#ffc107;border:none;border-radius:8px;color:#000;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:10px;padding:10px 20px;transition:transform .2s ease}.journey-tabs button.active{box-shadow:0 4px 10px #0000004d;transform:scale(1.1)}.journey-tabs button:hover{transform:scale(1.05)}.journey-tabs button svg{font-size:1.5rem}.timeline-container{background-color:#1a1a1a;border-radius:10px;display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem;padding:1.5rem}.timeline-item{align-items:center;display:flex;flex-direction:column;text-align:center}.timeline-item .circle{background-color:#ffc107;border-radius:50%;height:15px;margin-bottom:10px;width:15px}.timeline-item .content h4{color:#ffc107;font-size:1.2rem;margin-bottom:.5rem}.timeline-item span{color:#eaeaea;font-size:.9rem}@media (max-width:768px){.about-section{padding:1rem}.about-section h2{word-wrap:break-word;color:#ffc107;font-size:2.5rem;line-height:1.2;margin-bottom:1.5rem;overflow-wrap:break-word;text-align:center;white-space:normal}.skills{gap:5px}.skill-tag{font-size:.9rem;padding:5px 10px}.journey-tabs{gap:10px}.journey-tabs button{font-size:1rem;height:auto;max-width:150px;padding:8px 12px}.journey-tabs button svg{font-size:1.5rem}.timeline-container{gap:1rem;padding:1rem}.timeline-item .content h4{font-size:1.1rem}.timeline-item span{font-size:.8rem}}@media (max-width:480px){.about-section h2{word-wrap:break-word;color:#ffc107;font-size:2.5rem;line-height:1.5;margin-bottom:1.5rem;overflow-wrap:break-word;text-align:center;white-space:normal}.skills{flex-direction:column;gap:5px}.skill-tag{font-size:.8rem;padding:4px 8px}.journey-tabs{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.journey-tabs,.journey-tabs button{align-items:center;justify-content:center}.journey-tabs button{background-color:#ffc107;border:none;border-radius:8px;color:#000;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:8px;height:50px;text-align:center;transition:transform .2s ease;width:130px}.journey-tabs button:hover{transform:scale(1.05)}.journey-tabs button svg{font-size:1.2rem}.journey-tabs button:nth-child(3){grid-column:1/span 2;justify-self:center}.timeline-container{padding:.8rem}.timeline-item .content h4{font-size:1rem}.timeline-item span{font-size:.7rem}}.skills-title{color:#ffc107;font-size:2.5rem;margin-bottom:40px;text-align:center}.skills-container{grid-gap:20px;box-sizing:border-box;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(1000px,1fr));padding:20px;width:100%}.skills-category{background:#1e1e2f;border-left:5px solid;border-radius:10px;box-shadow:0 4px 15px #0003;padding:20px;transition:transform .3s ease}.category-header{align-items:center;display:flex;gap:10px;margin-bottom:20px}.category-icon{color:inherit;font-size:2rem}.category-title{color:#ffc107;font-size:1.8rem;margin-bottom:10px;text-align:center}.skills-list{display:flex;flex-direction:column;gap:15px}.skill-item{gap:15px;justify-content:space-between}.skill-item,.skill-label{align-items:center;display:flex}.skill-label{color:#ddd;flex:1 1;font-weight:700;gap:10px}.progress-bar-container{background:#333;border-radius:10px;box-shadow:inset 0 0 5px #00000080;flex:3 1;height:10px;overflow:hidden}.progress-bar{border-radius:10px;height:100%}.skill-percentage{color:#ddd;flex:1 1;font-weight:700;text-align:right}.skill-item:hover .progress-bar{transform:scale(1.02);transition:transform .3s ease}@media (max-width:768px){.skills-container{gap:20px;padding:10px}.skills-category{border-left-width:3px;padding:15px}.category-title{font-size:1.5rem}.skill-item{align-items:center;flex-direction:row;gap:10px;justify-content:space-between}.skill-label{font-size:.9rem}.progress-bar-container{height:8px}.skill-percentage{color:#ffc107;margin-left:10px;text-align:left}}#portfolio{background:#0b1120;color:#f8f9fa;padding:30px 10px}h2{color:#ffc107;font-size:1.8rem;margin-bottom:15px;text-align:center}.category-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:20px}.category-button{background-color:#112240;border:2px solid #ffc107;border-radius:20px;color:#fff;cursor:pointer;font-size:1rem;padding:10px 18px;transition:transform .2s,background-color .3s}.category-button:hover{background-color:#ffc107;color:#121212}.category-button.active{background-color:#ffae00;color:#fff;transform:scale(1.1)}.project-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr}.project-card{background:#112240;border-radius:10px;box-shadow:0 4px 12px #0000004d;padding:20px;transition:transform .2s,box-shadow .2s;width:100%}.project-card:hover{box-shadow:0 8px 16px #ffc1074d;transform:translateY(-8px)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.tag{background:#ffc107;border-radius:6px;color:#121212;font-size:.9rem;font-weight:700;padding:6px 10px;transition:transform .2s,background-color .3s}.tag:hover{background:#ffdd57;transform:scale(1.1)}.filter-buttons{display:flex;gap:10px;justify-content:center;margin-bottom:20px}.filter-buttons button{background-color:#ffc107;border:none;border-radius:25px;color:#121212;cursor:pointer;font-size:1rem;padding:10px 20px;transition:transform .2s ease-in-out,background-color .3s ease-in-out}.filter-buttons button:hover{background-color:#ffdd57;transform:scale(1.05)}.filter-buttons button.active{background-color:#ffae00;color:#fff}@media (max-width:480px){h2{font-size:1.4rem}.category-button{font-size:.8rem;padding:8px 12px}.project-card{font-size:.9rem;padding:15px}.tag{font-size:.7rem;padding:4px 8px}}.resume-section{background:linear-gradient(135deg,#1e1e2f,#252542);color:#ffc107;min-height:100vh;padding:2rem 1rem;text-align:center}.resume-section h2{font-size:2.5rem;margin-bottom:1rem}.resume-section p{color:#fff;font-size:1.2rem;margin-bottom:2rem}.resume-category{margin:2rem 0;text-align:left}.resume-category h3{align-items:center;color:#ffc107;display:flex;font-size:1.8rem;gap:.5rem;margin-bottom:1rem}.resume-card{background:#1e1e2f;border:2px solid #ffc107;border-radius:8px;margin-bottom:1rem;padding:1rem}.resume-card h4{font-size:1.5rem;margin-bottom:.5rem}.resume-card span{color:#ccc;font-size:1rem}.resume-card p{color:#fff;font-size:1rem}.skills-grid{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:1rem}.skills-grid span{background:#252542;border-radius:5px;color:#ffc107;font-size:1rem;padding:.5rem 1rem;transition:all .3s}.skills-grid span:hover{background:#ffc107;color:#252542;transform:scale(1.1)}.download-resume{margin-top:2rem}.download-button{align-items:center;background:#ffc107;border-radius:5px;color:#252542;display:inline-flex;font-size:1.2rem;font-weight:700;gap:.5rem;padding:.8rem 1.5rem;text-decoration:none;transition:all .3s}.download-button:hover{background:#fff;color:#252542;transform:scale(1.05)}@media (max-width:768px){.resume-section h2{font-size:2rem}.resume-section p{font-size:1rem}.resume-card{padding:.8rem}.resume-card h4{font-size:1.3rem}.resume-card p,.resume-card span{font-size:.9rem}.skills-grid span{font-size:.9rem;padding:.4rem .8rem}.download-button{font-size:1rem;padding:.6rem 1rem}}@media (max-width:480px){.resume-section h2{font-size:1.8rem}.resume-card{padding:.6rem}.resume-card h4{font-size:1.2rem}.resume-card p,.resume-card span{font-size:.8rem}.skills-grid span{font-size:.8rem;padding:.3rem .6rem}.download-button{font-size:.9rem;padding:.5rem .8rem}}.contact-section{background:linear-gradient(135deg,#1e1e2f,#252542);color:#ffc107;min-height:100vh;padding:2rem;text-align:center}.contact-section h2{font-size:2.5rem;margin-bottom:1rem}.contact-section p{color:#fff;font-size:1.2rem;margin-bottom:2rem}.contact-form{align-items:center;display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.form-input,.form-textarea{background:#1e1e2f;border:2px solid #ffc107;border-radius:5px;color:#fff;font-size:1rem;max-width:500px;outline:none;padding:1rem;transition:.3s;width:80%}.form-input:focus,.form-textarea:focus{background:#252542;border-color:#fff}.form-textarea{height:150px;resize:none}.send-button{align-items:center;background:#ffc107;border:none;border-radius:5px;color:#252542;cursor:pointer;display:flex;font-size:1.2rem;font-weight:700;gap:.5rem;padding:.8rem 1.5rem;transition:all .3s}.send-button:hover{background:#fff;color:#252542;transform:scale(1.05)}.contact-info{color:#fff;margin-top:2rem;text-align:center}.contact-info h3{font-size:1.5rem;margin-bottom:1rem}.contact-link{align-items:center;color:#ffc107;display:flex;font-size:1.1rem;gap:.5rem;justify-content:center;text-decoration:none;transition:color .3s}.contact-link:hover{color:#fff}.contact-info p{font-size:1rem}.connect-with-me{margin-bottom:2rem}.connect-icons,.connect-with-me{align-items:center;display:flex;flex-direction:column;justify-content:center}.connect-icons{gap:.5rem}.image-video-container{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:20px 0}.image-container-left{display:flex;flex:1 1;justify-content:center}.video-image-container{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:20px 0}.video-container-right{display:flex;flex:1 1;justify-content:center}.video-image-container-left{align-items:center;display:flex;gap:20px;justify-content:flex-start;margin:20px 0}.video-image-container-left iframe{width:60%}.video-image-container-left iframe,.video-image-container-left img{aspect-ratio:16/9;border-radius:10px;box-shadow:0 4px 10px #00000080;max-width:800px}.video-image-container-left img{width:48%}.amcl-image{aspect-ratio:16/9;border-radius:10px;box-shadow:0 4px 10px #00000080;max-width:500px;transition:transform .3s ease,box-shadow .3s ease;width:100%}.amcl-image:hover{box-shadow:0 8px 20px #000000b3;transform:scale(1.05)}.video-container-center{align-items:center;display:flex;justify-content:center;margin:20px auto}.video-container-center iframe{aspect-ratio:16/9;border-radius:10px;box-shadow:0 4px 10px #00000080;max-width:1000px;width:80%}.image-container-above{display:flex;justify-content:center;margin-bottom:20px}.image-container-above img{aspect-ratio:auto;max-width:800px;width:80%}.image-container-above img,.video-iframe{border-radius:10px;box-shadow:0 4px 10px #00000080}.video-iframe{aspect-ratio:16/9;max-width:500px;transition:transform .3s ease,box-shadow .3s ease;width:100%}.video-iframe:hover{box-shadow:0 8px 20px #000000b3;transform:scale(1.05)}.video-image-container iframe,.video-image-container img{aspect-ratio:16/9;border-radius:10px;box-shadow:0 4px 10px #00000080;max-width:800px;width:48%}.video-container iframe{aspect-ratio:16/9;display:block;margin:0 auto;max-width:800px;transition:transform .3s ease,box-shadow .3s ease;width:60%}.video-container iframe:hover,.videos-container iframe:hover{box-shadow:0 8px 20px #000000b3;transform:scale(1.05);transition:transform .3s ease,box-shadow .3s ease}.video-container-center iframe{transition:transform .3s ease,box-shadow .3s ease}.video-container-center iframe:hover{box-shadow:0 8px 20px #000000b3;transform:scale(1.05)}.video-container{margin-top:20px;text-align:center}.videos-container iframe:hover{box-shadow:0 8px 20px #000000b3;transform:scale(1.05)}.video-section-center{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:20px auto;text-align:center}.video-section-center iframe{aspect-ratio:16/9;border-radius:10px;box-shadow:0 4px 10px #00000080;display:block;margin:0 auto;max-width:1000px;width:80%}.videos-container{gap:10px;justify-content:space-between}.videos-container iframe{transition:transform .3s ease,box-shadow .3s ease}@media (max-width:768px){.content-header h2{word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.content-header h2,.section-container .content-header h2{font-size:24px!important;text-align:center}.section-container .content-header p{font-size:18px!important;text-align:left}.content-header p{font-size:16px;line-height:1.6;text-align:left}.gallery-container{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.gif{margin:0 auto;width:90%}.responsive-iframe{height:auto;margin-bottom:15px;max-width:100%}.subtitle-container h3{font-size:1.2rem}.videos-container{flex-wrap:nowrap;justify-content:space-evenly}.videos-container iframe{max-width:45%;width:45%}.section-container{padding:10px}}@media (max-width:480px){.content-header h2{word-wrap:break-word;font-size:24px!important;overflow-wrap:break-word;text-align:center;white-space:normal}.content-header p{font-size:14px;line-height:1.5;text-align:match-parent}.gif-container{align-items:center;flex-direction:column;gap:15px}.gif{max-width:350px;width:100%}.video-container iframe{height:250px;width:100%}.videos-container{flex-wrap:nowrap;gap:5px;justify-content:space-evenly}.videos-container iframe{max-width:45%;width:45%}.subtitle-container h3{font-size:1rem}.section-container{padding:5px}}.section-container{margin:40px auto;max-width:1200px;text-align:left}.section-container .content-header h2{font-size:32px}.content-header h2{word-wrap:break-word;line-height:1.9;overflow-wrap:break-word;white-space:normal}.gif-container{flex-wrap:wrap;gap:10px;margin-bottom:20px}@media (max-width:480px){.content-header h2{font-size:18px;text-align:center}.content-header p{font-size:14px;line-height:1.5;text-align:match-parent}.gif-container{align-items:center;flex-direction:column;gap:15px}.gif{max-width:350px;width:100%}.video-container iframe{height:250px;width:100%}.subtitle-container h3{font-size:1rem}.section-container{padding:5px}}.section-container{align-items:center;justify-content:center;margin:0 auto}.section-container .content-header h2{font-size:34px}.section-container .content-header p{font-size:22px}.content-header{margin-bottom:20px}.content-header h2{color:#ffc107;font-size:32px;font-weight:700;margin-bottom:15px;text-align:center}.content-header p{color:#eaeaea;font-size:20px;line-height:1.8;margin-bottom:1em;text-align:justify}.main-image-container{margin:20px 0;text-align:center}.image-container{display:flex;justify-content:center;margin:20px 0}.single-image{height:auto;max-width:100%}.main-image,.single-image{border-radius:10px;box-shadow:0 4px 10px #00000080}.main-image{margin:0 auto;max-width:400px;width:100%}.main-image:hover{transform:scale(1.05)}.gallery-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:20px}.gallery-image{border-radius:10px;box-shadow:0 4px 10px #00000080;max-height:250px;object-fit:cover;transition:transform .3s;width:100%}.gallery-image:hover{transform:scale(1.05)}.responsive-iframe{aspect-ratio:16/9;border:none;max-width:48%;width:100%}.gif-below-container{display:flex;justify-content:center;margin-top:20px}.gif-below{aspect-ratio:auto;border-radius:10px;box-shadow:0 4px 10px #00000080;max-width:800px;width:80%}.top-gif-container{justify-content:center;margin:20px 0;text-align:center}.top-gif{border-radius:10px;box-shadow:0 4px 10px #00000080;justify-content:center;max-width:800px;width:80%}.image-description{color:#eaeaea;font-size:18px;margin:15px 0;text-align:center}.gif-container{display:flex;gap:20px;justify-content:center;margin:20px 0}.gif{width:45%}.bottom-gif-container{margin:30px 0;text-align:center}.bottom-gif{max-width:800px;width:80%}.bottom-gif,.gif,.single-image,.top-gif{border-radius:10px;box-shadow:0 4px 10px #00000080}.gif,.single-image,.top-gif{transition:transform .3s ease,box-shadow .3s ease}.gif:hover,.single-image:hover,.top-gif:hover{box-shadow:0 8px 20px #000000b3;filter:brightness(1.2);transform:scale(1.05)}.gif{border-radius:5px;box-shadow:0 4px 10px #00000080;width:48%}.gif:hover{box-shadow:0 8px 20px #000000b3;filter:brightness(1.2);transform:scale(1.05)}.video-container iframe{display:block;margin:20px auto;max-width:1200px;width:80%}.video-container iframe,.videos-container iframe{aspect-ratio:16/9;border-radius:10px;box-shadow:0 4px 10px #00000080}.videos-container iframe{max-width:600px;width:48%}.videos-container{align-items:center;display:flex;flex-wrap:nowrap;gap:20px;justify-content:space-around;margin-top:20px}.subtitle-container{margin:20px 0;text-align:center}.subtitle-container h3{color:#fc0;font-size:1.3rem!important;margin-bottom:15px}@media (max-width:768px){.section-container .content-header h2{font-size:24px!important;text-align:center}.section-container .content-header p{font-size:18px!important;text-align:left}.gallery-container{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.gif{margin:0 auto;width:90%}.responsive-iframe{height:auto;margin-bottom:15px;max-width:100%}.subtitle-container h3{font-size:1.2rem}.videos-container{align-items:center;flex-direction:column;flex-wrap:wrap}.videos-container iframe{margin-bottom:20px;max-width:100%;width:90%}.section-container{padding:10px}}@media (max-width:480px){.section-container .content-header h2{font-size:24px!important;text-align:center}.section-container .content-header p{font-size:18px!important;text-align:left}.gif-container{align-items:center;flex-direction:column;gap:15px}.gif{max-width:350px;width:100%}.video-container iframe{height:250px;width:100%}.subtitle-container h3{font-size:1rem}.section-container{padding:5px}}body{background-color:#111;margin:0;min-height:100vh;overflow-y:auto;padding:0}html{height:auto}.content-wrapper{overflow:visible}.content-wrapper,.section-container{display:flex;flex:1 1;flex-direction:column;padding:20px}.section-container{box-sizing:border-box;min-height:calc(100vh - 80px);overflow-x:hidden;overflow-y:auto} +/*# sourceMappingURL=main.9c8bd7ce.css.map*/ \ No newline at end of file diff --git a/static/css/main.9c8bd7ce.css.map b/static/css/main.9c8bd7ce.css.map new file mode 100644 index 000000000..0473a64f4 --- /dev/null +++ b/static/css/main.9c8bd7ce.css.map @@ -0,0 +1 @@ +{"version":3,"file":"static/css/main.9c8bd7ce.css","mappings":"AAAA,EAGI,qBAAsB,CAFtB,QAAS,CACT,SAEF,CAEA,UACE,WAAY,CACZ,gBAAiB,CACjB,iBACF,CAEA,QAEE,qBAAsB,CADtB,iBAEF,CAEA,oBAGE,oBAAqB,CADrB,eAAgB,CADhB,QAGF,CCpBF,QAKE,kBAAmB,CAJnB,qBAAsB,CAEtB,YAAa,CACb,6BAA8B,CAF9B,iBAAkB,CAIlB,cAAe,CAEf,KAAM,CADN,UAAW,CAEX,YACF,CAGA,SAKE,6BAAoC,CAFpC,iDAAuD,CACvD,4BAA6B,CAE7B,cAAe,CALf,gBAAiB,CACjB,eAKF,CAGA,WAEE,YAAa,CACb,QAAS,CAFT,eAAgB,CAGhB,QAAS,CACT,SACF,CAEA,gBACE,aAAc,CACd,cAAe,CACf,eAAiB,CACjB,oBAAqB,CACrB,yBACF,CAEA,sBACE,UACF,CAGA,WAEE,cAAe,CADf,YAAa,CAEb,qBAAsB,CACtB,OACF,CAEA,WAGE,wBAAyB,CADzB,UAAW,CADX,UAGF,CAGA,yBACE,WAIE,qBAAsB,CAKtB,iBAAkB,CARlB,YAAa,CACb,qBAAsB,CACtB,QAAS,CAKT,YAAa,CAHb,iBAAkB,CAElB,UAAW,CADX,QAIF,CAMA,2BACE,YACF,CACF,CC9EA,gBAKE,kBAAmB,CAEnB,wBAAyB,CAGzB,qBAAsB,CAFtB,UAAW,CANX,YAAa,CACb,qBAAsB,CAFtB,YAAa,CAGb,sBAAuB,CAKvB,YAAa,CAHb,iBAKF,CAGA,UAEE,aAAc,CADd,gBAAiB,CAEjB,kBACF,CAGA,MAGE,oCAAqC,CAFrC,oBAAqB,CACrB,wBAEF,CAEA,0BACE,GACE,sBACF,CACA,IACE,uBACF,CACA,IACE,sBACF,CACF,CAGA,MAGE,aAAc,CAFd,gBAAiB,CACjB,eAAiB,CAGjB,aAAc,CADd,kBAGF,CAEA,kBAHE,kBAWF,CARA,YAGE,aAAc,CAFd,gBAAiB,CACjB,eAAgB,CAEhB,eAAgB,CAEhB,eAAgB,CAChB,sBACF,CAGA,QACE,qCACF,CAEA,iBACE,GACE,kBACF,CACA,GACE,oBACF,CACF,CAEA,yBACE,UACE,cACF,CAEA,MACE,gBACF,CAEA,YACE,gBACF,CACA,gBACE,YACF,CACF,CAEA,yBACE,UACE,gBACF,CAEA,MACE,cACF,CAEA,YACE,cACF,CACA,gBACE,YACF,CACF,CCzGA,eAEE,wBAAyB,CACzB,UAAW,CACX,cAAe,CAHf,YAIF,CAIA,kBAKE,oBAAqB,CAHrB,aAAc,CADd,gBAAiB,CAOjB,eAAgB,CAFhB,wBAAyB,CACzB,kBAEF,CAGA,+BARE,oBAAqB,CADrB,iBAaF,CAJA,aAEE,aAEF,CAEA,WAEE,wBAAyB,CACzB,kBAAmB,CACnB,aAAc,CAHd,cAKF,CAGA,mBAJE,oBAUF,CANA,QACE,YAAa,CACb,cAAe,CAEf,QAAS,CADT,sBAGF,CAEA,WAGE,wBAAyB,CAEzB,iBAAkB,CADlB,aAAc,CAFd,cAAe,CAKf,eAAiB,CANjB,YAAc,CAKd,gBAEF,CAGA,cAGE,kBAAmB,CAFnB,YAAa,CACb,4BAA6B,CAE7B,aACF,CAEA,qBASE,kBAAmB,CARnB,wBAAyB,CACzB,WAAY,CACZ,iBAAkB,CAElB,UAAW,CAMX,cAAe,CAHf,YAAa,CAFb,cAAe,CACf,eAAiB,CAGjB,QAAS,CANT,iBAAkB,CAQlB,6BACF,CAEA,4BAEE,+BAAyC,CADzC,oBAEF,CACA,2BACE,qBACF,CAEA,yBACE,gBACF,CAGA,oBAIE,wBAAyB,CAEzB,kBAAmB,CALnB,YAAa,CACb,qBAAsB,CACtB,UAAW,CAIX,eAAgB,CAFhB,cAGF,CAEA,eAGE,kBAAmB,CAFnB,YAAa,CACb,qBAAsB,CAEtB,iBACF,CAEA,uBAGE,wBAAyB,CACzB,iBAAkB,CAFlB,WAAY,CAGZ,kBAAmB,CAJnB,UAKF,CAEA,2BAEE,aAAc,CADd,gBAAiB,CAEjB,mBACF,CAEA,oBAEE,aAAc,CADd,eAEF,CAKA,yBACE,eACE,YACF,CAEA,kBAKE,oBAAqB,CAHrB,aAAc,CADd,gBAAiB,CAOjB,eAAgB,CAJhB,oBAAqB,CAErB,wBAAyB,CAHzB,iBAAkB,CAIlB,kBAEF,CAGA,QACE,OACF,CAEA,WACE,eAAiB,CACjB,gBACF,CAEA,cACE,QACF,CAEA,qBACE,cAAe,CAGf,WAAY,CADZ,eAAgB,CADhB,gBAGF,CAEA,yBACE,gBACF,CAEA,oBAEE,QAAS,CADT,YAEF,CAEA,2BACE,gBACF,CAEA,oBACE,eACF,CACF,CAGA,yBACE,kBAKE,oBAAqB,CAHrB,aAAc,CADd,gBAAiB,CAOjB,eAAgB,CAJhB,oBAAqB,CAErB,wBAAyB,CAHzB,iBAAkB,CAIlB,kBAEF,CAGA,QACE,qBAAsB,CACtB,OACF,CAEA,WACE,eAAiB,CACjB,eACF,CAEA,cAGE,aAAS,CAFT,YAAa,CAEb,QAAS,CADT,mCAIF,CAEA,mCAHE,kBAAmB,CADnB,sBAoBF,CAhBA,qBASE,wBAAyB,CAEzB,WAAY,CADZ,iBAAkB,CAElB,UAAW,CAEX,cAAe,CAVf,YAAa,CAHb,cAAe,CAYf,eAAiB,CANjB,OAAQ,CAJR,WAAY,CAKZ,iBAAkB,CAOlB,6BAA+B,CAb/B,WAcF,CAEA,2BACE,qBACF,CAEA,yBACE,gBACF,CAEA,kCACE,oBAAuB,CACvB,mBACF,CAEA,oBACE,aACF,CAEA,2BACE,cACF,CAEA,oBACE,eACF,CACF,CCnQA,cAGI,aAAc,CADd,gBAAiB,CAEjB,kBAAmB,CAHnB,iBAIF,CAEA,kBAGE,aAAS,CAGT,qBAAsB,CALtB,YAAa,CAEb,QAAS,CADT,yDAA4D,CAG5D,YAAa,CADb,UAGJ,CAEE,iBACE,kBAAmB,CAInB,qBAAsB,CAFtB,kBAAmB,CACnB,2BAAyC,CAFzC,YAAa,CAIb,6BACF,CAEA,iBAEE,kBAAmB,CADnB,YAAa,CAEb,QAAS,CACT,kBACF,CAEA,eAEE,aAAc,CADd,cAEF,CAEA,gBAEE,aAAc,CADd,gBAAiB,CAEjB,kBAAmB,CACnB,iBACF,CAEA,aACE,YAAa,CACb,qBAAsB,CACtB,QACF,CAEA,YAIE,QAAS,CADT,6BAEF,CAEA,yBALE,kBAAmB,CADnB,YAaF,CAPA,aAKE,UAAW,CADX,QAAO,CAEP,eAAiB,CAHjB,QAIF,CAEA,wBAEE,eAAgB,CAEhB,kBAAmB,CAEnB,kCAA4C,CAL5C,QAAO,CAEP,WAAY,CAEZ,eAEF,CAEA,cAEE,kBAAmB,CADnB,WAEF,CAEA,kBAGE,UAAW,CAFX,QAAO,CAGP,eAAiB,CAFjB,gBAGF,CAEA,gCACE,qBAAsB,CACtB,6BACF,CAGF,yBACE,kBACE,QAAS,CACT,YACF,CAEA,iBAEE,qBAAsB,CADtB,YAEF,CAEA,gBACE,gBACF,CAEA,YAEE,kBAAmB,CADnB,kBAAmB,CAEnB,QAAS,CACT,6BACF,CAEA,aACE,eACF,CAEA,wBACE,UACF,CAEA,kBAGE,aAAc,CADd,gBAAiB,CADjB,eAGF,CACF,CC/HA,WAEE,kBAAmB,CACnB,aAAc,CAFd,iBAGF,CAGA,GAGE,aAAc,CADd,gBAAiB,CAEjB,kBAAmB,CAHnB,iBAIF,CAIA,kBACE,YAAa,CACb,cAAe,CAEf,QAAS,CADT,sBAAuB,CAEvB,kBACF,CAEA,iBAGE,wBAAyB,CAEzB,wBAAyB,CACzB,kBAAmB,CAFnB,UAAW,CAGX,cAAe,CALf,cAAe,CADf,iBAAkB,CAOlB,6CACF,CAEA,uBACE,wBAAyB,CACzB,aACF,CAEA,wBACE,wBAAyB,CACzB,UAAW,CACX,oBACF,CAIA,cAGE,aAAS,CAFT,YAAa,CAEb,QAAS,CADT,yBAEF,CAGA,cAEE,kBAAmB,CACnB,kBAAmB,CAEnB,+BAA2C,CAD3C,YAAa,CAEb,uCAA2C,CAL3C,UAMF,CAEA,oBAEE,+BAA+C,CAD/C,0BAEF,CAIA,MAEE,YAAa,CACb,cAAe,CACf,OAAQ,CAHR,eAIF,CAEA,KACE,kBAAmB,CAGnB,iBAAkB,CAFlB,aAAc,CAGd,eAAiB,CACjB,eAAiB,CAHjB,gBAAiB,CAIjB,6CACF,CAEA,WACE,kBAAmB,CACnB,oBACF,CAGA,gBACE,YAAa,CAEb,QAAS,CADT,sBAAuB,CAEvB,kBACF,CAGA,uBACE,wBAAyB,CAIzB,WAAY,CACZ,kBAAmB,CAJnB,aAAc,CAKd,cAAe,CAJf,cAAe,CACf,iBAAkB,CAIlB,qEACF,CAGA,6BACE,wBAAyB,CACzB,qBACF,CAGA,8BACE,wBAAyB,CACzB,UACF,CAGA,yBACE,GACE,gBACF,CAEA,iBAEE,eAAiB,CADjB,gBAEF,CAEA,cAEE,eAAiB,CADjB,YAEF,CAEA,KACE,eAAiB,CACjB,eACF,CACF,CClJA,gBACE,kDAAqD,CACrD,aAAc,CAGd,gBAAiB,CADjB,iBAAkB,CADlB,iBAGF,CAEA,mBACE,gBAAiB,CACjB,kBACF,CAEA,kBAGE,UAAW,CAFX,gBAAiB,CACjB,kBAEF,CAEA,iBACE,aAAc,CACd,eACF,CAEA,oBAGE,kBAAmB,CAGnB,aAAc,CAJd,YAAa,CADb,gBAAiB,CAGjB,SAAW,CACX,kBAEF,CAEA,aACE,kBAAmB,CAEnB,wBAAyB,CACzB,iBAAkB,CAClB,kBAAmB,CAHnB,YAIF,CAEA,gBACE,gBAAiB,CACjB,mBACF,CAEA,kBAEE,UAAW,CADX,cAEF,CAEA,eAEE,UAAW,CADX,cAEF,CAEA,aACE,YAAa,CACb,cAAe,CACf,QAAS,CACT,sBAAuB,CACvB,eACF,CAEA,kBACE,kBAAmB,CAGnB,iBAAkB,CAFlB,aAAc,CAGd,cAAe,CAFf,kBAAoB,CAGpB,kBACF,CAEA,wBACE,kBAAmB,CACnB,aAAc,CACd,oBACF,CAEA,iBACE,eACF,CAEA,iBAQE,kBAAmB,CAPnB,kBAAmB,CAGnB,iBAAkB,CAFlB,aAAc,CAKd,mBAAoB,CAFpB,gBAAiB,CACjB,eAAiB,CAGjB,SAAW,CANX,oBAAsB,CAOtB,oBAAqB,CACrB,kBACF,CAEA,uBACE,eAAgB,CAChB,aAAc,CACd,qBACF,CAGA,yBACE,mBACE,cACF,CAEA,kBACE,cACF,CAEA,aACE,aACF,CAEA,gBACE,gBACF,CAEA,iCACE,eACF,CAEA,kBACE,eAAiB,CACjB,mBACF,CAEA,iBACE,cAAe,CACf,kBACF,CACF,CAGA,yBACE,mBACE,gBACF,CAEA,aACE,aACF,CAEA,gBACE,gBACF,CAEA,iCACE,eACF,CAEA,kBACE,eAAiB,CACjB,mBACF,CAEA,iBACE,eAAiB,CACjB,mBACF,CACF,CCnKA,iBACI,kDAAqD,CACrD,aAAc,CAGd,gBAAiB,CAFjB,YAAa,CACb,iBAEF,CAEA,oBACE,gBAAiB,CACjB,kBACF,CAEA,mBAGE,UAAW,CAFX,gBAAiB,CACjB,kBAEF,CAEA,cAGE,kBAAmB,CAFnB,YAAa,CACb,qBAAsB,CAEtB,QAAS,CACT,kBACF,CAEA,2BAME,kBAAmB,CAFnB,wBAAyB,CACzB,iBAAkB,CAElB,UAAW,CACX,cAAe,CANf,eAAgB,CAOhB,YAAa,CANb,YAAa,CAOb,cAAgB,CAThB,SAUF,CAEA,uCAEE,kBAAmB,CADnB,iBAEF,CAEA,eACE,YAAa,CACb,WACF,CAEA,aAUE,kBAAmB,CATnB,kBAAmB,CAGnB,WAAY,CACZ,iBAAkB,CAHlB,aAAc,CAMd,cAAe,CACf,YAAa,CAHb,gBAAiB,CACjB,eAAiB,CAIjB,SAAW,CARX,oBAAsB,CAStB,kBACF,CAEA,mBACE,eAAgB,CAChB,aAAc,CACd,qBACF,CAEA,cACE,UAAW,CACX,eAAgB,CAChB,iBACF,CAEA,iBACE,gBAAiB,CACjB,kBACF,CAEA,cAEE,kBAAmB,CAInB,aAAc,CALd,YAAa,CAIb,gBAAiB,CAFjB,SAAW,CACX,sBAAuB,CAGvB,oBAAqB,CACrB,oBACF,CAEA,oBACE,UACF,CAEA,gBACE,cACF,CAEA,iBAKE,kBACF,CAEA,gCALE,kBAAmB,CAFnB,YAAa,CACb,qBAAsB,CAEtB,sBAUF,CANA,eAKE,SACF,CCpEF,uBAEE,kBAAmB,CADnB,YAAa,CAGb,QAAS,CADT,6BAA8B,CAE9B,aACF,CAEA,sBAEE,YAAa,CADb,QAAO,CAEP,sBACF,CA4EA,uBAGE,kBAAmB,CAFnB,YAAa,CAGb,QAAS,CAFT,6BAA8B,CAG9B,aACF,CAGA,uBAEE,YAAa,CADb,QAAO,CAEP,sBACF,CAEA,4BAGE,kBAAmB,CAFnB,YAAa,CAGb,QAAS,CAFT,0BAA2B,CAG3B,aACF,CAEA,mCACE,SAKF,CAEA,mEANE,iBAAoB,CAEpB,kBAAmB,CACnB,+BAAyC,CAFzC,eAWF,CANA,gCACE,SAKF,CAEA,YAGE,iBAAoB,CACpB,kBAAmB,CACnB,+BAAyC,CAHzC,eAAgB,CAIhB,iDAAqD,CALrD,UAMF,CAEA,kBAEE,+BAAyC,CADzC,qBAEF,CAEA,wBAGE,kBAAmB,CAFnB,YAAa,CACb,sBAAuB,CAEvB,gBACF,CAEA,+BAEE,iBAAoB,CAEpB,kBAAmB,CACnB,+BAAyC,CAFzC,gBAAiB,CAFjB,SAKF,CAEA,uBACE,YAAa,CACb,sBAAuB,CACvB,kBACF,CAEA,2BAGE,iBAAkB,CADlB,eAAgB,CADhB,SAKF,CAEA,yCAJE,kBAAmB,CACnB,+BAUF,CAPA,cAGE,iBAAoB,CADpB,eAAgB,CAIhB,iDAAqD,CALrD,UAMF,CAEA,oBAEE,+BAAyC,CADzC,qBAEF,CAEA,yDAGE,iBAAoB,CAEpB,kBAAmB,CACnB,+BAAyC,CAFzC,eAAgB,CAFhB,SAKF,CAYA,wBAGE,iBAAoB,CAGpB,aAAc,CADd,aAAc,CADd,eAAgB,CAGhB,iDAAqD,CALrD,SAMF,CAEA,6DAGI,+BAAyC,CADzC,qBAAsB,CAEtB,iDACJ,CAEA,+BACE,iDACF,CAEA,qCAEE,+BAAyC,CADzC,qBAEF,CAEA,iBAEE,eAAgB,CADhB,iBAEF,CAUA,+BAEE,+BAAyC,CADzC,qBAEF,CAGA,sBAIE,kBAAmB,CAHnB,YAAa,CACb,qBAAsB,CACtB,sBAAuB,CAEvB,gBAAiB,CACjB,iBACF,CACA,6BAEE,iBAAoB,CAEpB,kBAAmB,CACnB,+BAAyC,CAEzC,aAAc,CADd,aAAc,CAHd,gBAAiB,CAFjB,SAOF,CAEA,kBAIE,QAAS,CAFT,6BAKF,CAEA,yBAME,iDACF,CAeA,yBACE,mBAGE,oBAAqB,CACrB,wBAAyB,CACzB,kBACF,CAEA,yDAPE,wBAA0B,CAC1B,iBASF,CAEA,qCACE,wBAA0B,CAC1B,eACF,CAEA,kBAEE,cAAe,CACf,eAAgB,CAFhB,eAGF,CAEA,mBACE,wDACF,CAEA,KAEE,aAAc,CADd,SAEF,CAEA,mBAEE,WAAY,CACZ,kBAAmB,CAFnB,cAGF,CAEA,uBACE,gBACF,CAEA,kBAEE,gBAAiB,CADjB,4BAEF,CAEA,yBAEE,aAAc,CADd,SAEF,CAEA,mBACE,YACF,CACF,CAEA,yBACE,mBAGE,oBAAqB,CAFrB,wBAA0B,CAG1B,wBAAyB,CAFzB,iBAAkB,CAGlB,kBACF,CAEA,kBAEE,cAAe,CACf,eAAgB,CAFhB,uBAGF,CAEA,eAEE,kBAAmB,CADnB,qBAAsB,CAEtB,QACF,CAEA,KAEE,eAAgB,CADhB,UAEF,CAEA,wBAEE,YAAa,CADb,UAEF,CAEA,kBACE,gBAAiB,CAEjB,OAAQ,CADR,4BAEF,CAEA,yBAEE,aAAc,CADd,SAEF,CACA,uBACE,cACF,CAEA,mBACE,WACF,CACF,CClcA,mBACE,gBAAiB,CAEjB,gBAAiB,CACjB,eACF,CAEA,sCACE,cACF,CAWA,mBAME,oBAAqB,CAGrB,eAAgB,CAFhB,wBAAyB,CACzB,kBAEF,CAuEA,eAEE,cAAe,CAEf,QAAS,CACT,kBACF,CAoGA,yBACE,mBACE,cAAe,CACf,iBACF,CAEA,kBAEE,cAAe,CACf,eAAgB,CAFhB,uBAGF,CAEA,eAEE,kBAAmB,CADnB,qBAAsB,CAEtB,QACF,CAEA,KAEE,eAAgB,CADhB,UAEF,CAEA,wBAEE,YAAa,CADb,UAEF,CAEA,uBACE,cACF,CAEA,mBACE,WACF,CACF,CClPA,mBAGE,kBAAmB,CACnB,sBAAuB,CACvB,aACF,CAEA,sCACE,cACF,CAEA,qCACE,cACF,CAGA,gBACE,kBACF,CAEA,mBAGE,aAAc,CAFd,cAAe,CAGf,eAAiB,CAFjB,kBAAmB,CAGnB,iBACF,CAEA,kBAGE,aAAc,CAFd,cAAe,CACf,eAAgB,CAEhB,iBAAkB,CAClB,kBACF,CAGA,sBAEE,aAAc,CADd,iBAEF,CAEA,iBACE,YAAa,CACb,sBAAuB,CACvB,aACF,CAEA,cAEE,WAAY,CADZ,cAIF,CAEA,0BAJE,kBAAmB,CACnB,+BASF,CANA,YAKE,aAAc,CAHd,eAAgB,CADhB,UAKF,CAEA,kBACE,qBACF,CAGA,mBAGE,aAAS,CAFT,YAAa,CAEb,QAAS,CADT,wDAA2D,CAE3D,eACF,CAEA,eAIE,kBAAmB,CACnB,+BAAyC,CAHzC,gBAAiB,CACjB,gBAAiB,CAGjB,wBAA0B,CAL1B,UAMF,CAEA,qBACE,qBACF,CAGA,mBAGE,iBAAoB,CACpB,WAAY,CAFZ,aAAc,CADd,UAIF,CAUA,qBACE,YAAa,CACb,sBAAuB,CACvB,eACF,CAEA,WAGE,iBAAkB,CAClB,kBAAmB,CACnB,+BAAyC,CAHzC,eAAgB,CADhB,SAKF,CAIA,mBAGE,sBAAuB,CADvB,aAAc,CADd,iBAGF,CAEA,SAIE,kBAAmB,CACnB,+BAAyC,CAFzC,sBAAuB,CADvB,eAAgB,CADhB,SAKF,CAEA,mBAGE,aAAc,CADd,cAAe,CAEf,aAAc,CAHd,iBAIF,CAIA,eACE,YAAa,CAEb,QAAS,CADT,sBAAuB,CAEvB,aACF,CAEA,KACE,SAGF,CAIA,sBAEE,aAAc,CADd,iBAEF,CAEA,YAEE,eAAgB,CADhB,SAIF,CAGA,wCALE,kBAAmB,CACnB,+BAQF,CAJA,4BACE,iDAGF,CAEA,8CAEE,+BAAyC,CACzC,sBAAuB,CAFvB,qBAGF,CAIA,KAEE,iBAAkB,CAClB,+BAAyC,CAFzC,SAGF,CAEA,WAEE,+BAAyC,CACzC,sBAAuB,CAFvB,qBAGF,CAGA,wBAKE,aAAc,CADd,gBAAiB,CADjB,gBAAiB,CAFjB,SAOF,CAEA,iDARE,iBAAoB,CAIpB,kBAAmB,CACnB,+BASF,CANA,yBAGE,eAAgB,CAFhB,SAKF,CAEA,kBAGE,kBAAmB,CAFnB,YAAa,CAIb,gBAAiB,CADjB,QAAS,CAFT,4BAA6B,CAI7B,eACF,CAGA,oBAEE,aAAc,CADd,iBAEF,CAEA,uBAEE,UAAc,CADd,0BAA4B,CAE5B,kBACF,CAGA,yBACE,sCACE,wBAA0B,CAC1B,iBACF,CAEA,qCACE,wBAA0B,CAC1B,eACF,CAEA,mBACE,wDACF,CAEA,KAEE,aAAc,CADd,SAEF,CAEA,mBAEE,WAAY,CACZ,kBAAmB,CAFnB,cAGF,CAEA,uBACE,gBACF,CAEA,kBAGE,kBAAmB,CADnB,qBAAsB,CADtB,cAGF,CAEA,yBAGE,kBAAmB,CADnB,cAAe,CADf,SAGF,CAEA,mBACE,YACF,CACF,CAEA,yBACE,sCACE,wBAA0B,CAC1B,iBACF,CAEA,qCACE,wBAA0B,CAC1B,eACF,CAEA,eAEE,kBAAmB,CADnB,qBAAsB,CAEtB,QACF,CAEA,KAEE,eAAgB,CADhB,UAEF,CAEA,wBAEE,YAAa,CADb,UAEF,CAEA,uBACE,cACF,CAEA,mBACE,WACF,CACF,CCjUA,KAGI,qBAAsB,CAFtB,QAAS,CAGT,gBAAiB,CACjB,eAAgB,CAHhB,SAIJ,CAEA,KACI,WACJ,CAEA,iBAII,gBAEF,CAEA,oCANE,YAAa,CADb,QAAO,CAEP,qBAAsB,CAEtB,YAYF,CATA,mBAQE,qBAAsB,CAHtB,6BAA8B,CAE9B,iBAAkB,CADlB,eAGF","sources":["style.css","styles/Navbar.css","styles/Home.css","styles/About.css","styles/Skills.css","styles/Portfolio.css","styles/Resume.css","styles/Contact.css","styles/MultiMapNavigation.css","styles/RoboticVision.css","styles/RobotNavigationStudy.css","styles/App.css"],"sourcesContent":["* {\n margin: 0;\n padding: 0;\n box-sizing: border-box; /* Include padding in element dimensions */\n }\n \n body, html {\n height: auto; /* Allow the document to grow with content */\n min-height: 100vh; /* Ensure full viewport height */\n overflow-x: hidden; /* Prevent horizontal scrolling */\n }\n \n section {\n padding: 50px 20px; /* Add consistent padding to all sections */\n box-sizing: border-box; /* Ensure padding doesn't cause overflow */\n }\n \n h1, h2, h3, h4, h5, h6, p {\n margin: 0; /* Remove default margins */\n line-height: 1.5; /* Set consistent line height */\n word-wrap: break-word; /* Prevent long words from breaking layout */\n }\n ","/* Navbar Container */\n.navbar {\n background-color: #111;\n padding: 15px 10px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n position: fixed;\n width: 100%;\n top: 0;\n z-index: 1000;\n}\n\n/* Logo Styling */\n.sc-logo {\n font-size: 1.2rem;\n font-weight: bold;\n background: linear-gradient(to right, #FFC107, #FF5722);\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n cursor: pointer;\n}\n\n/* Nav Links */\n.nav-links {\n list-style: none;\n display: flex;\n gap: 20px;\n margin: 0;\n padding: 0;\n}\n\n.nav-links li a {\n color: #ffc107;\n font-size: 1rem;\n font-weight: bold;\n text-decoration: none;\n transition: color 0.3s ease;\n}\n\n.nav-links li a:hover {\n color: #fff;\n}\n\n/* Menu Icon Styling */\n.menu-icon {\n display: none;\n cursor: pointer;\n flex-direction: column;\n gap: 5px;\n}\n\n.menu-line {\n width: 25px;\n height: 3px;\n background-color: #ffc107;\n}\n\n/* Responsive Styles */\n@media (max-width: 768px) {\n .nav-links {\n display: none;\n flex-direction: column;\n gap: 10px;\n background-color: #111;\n position: absolute;\n top: 60px;\n right: 10px;\n padding: 10px;\n border-radius: 5px;\n }\n\n .nav-links.open {\n display: flex;\n }\n\n .menu-icon {\n display: flex;\n }\n}\n","/* General Container Styling */\n.home-container {\n height: 100vh;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n text-align: center;\n background-color: #121212; /* Dark background */\n color: #fff; /* White text */\n padding: 20px; /* Add padding for smaller screens */\n box-sizing: border-box; /* Ensure padding doesn't affect width */\n}\n\n/* First Line (Greeting) */\n.greeting {\n font-size: 2.5rem;\n color: #ffc107; /* Yellow color */\n margin-bottom: 10px;\n}\n\n/* Waving Hand Animation */\n.wave {\n display: inline-block;\n transform-origin: 70% 80%; /* Set the bottom of the hand as the pivot point */\n animation: wave-animation 2s infinite;\n}\n\n@keyframes wave-animation {\n 0% {\n transform: rotate(0deg);\n }\n 25% {\n transform: rotate(15deg);\n }\n 50% {\n transform: rotate(0deg);\n }\n}\n\n/* Second Line (Name) */\n.name {\n font-size: 2.8rem;\n font-weight: bold;\n color: #ffc107; /* Yellow */\n margin-bottom: 15px;\n line-height: 1; /* Adjust line height to fit in one row */\n white-space: nowrap; /* Prevent wrapping */\n}\n\n.typewriter {\n font-size: 1.5rem;\n font-weight: 500;\n color: #a9f0d1; /* Aqua green */\n margin-top: 10px;\n white-space: nowrap; /* Prevent typewriter text from wrapping */\n overflow: hidden; /* Ensure text stays within bounds */\n text-overflow: ellipsis; /* Add ellipsis if text overflows */\n}\n\n/* Optional Cursor Blink Styling */\n.cursor {\n animation: blink 0.7s step-end infinite;\n}\n\n@keyframes blink {\n from {\n border-color: transparent;\n }\n to {\n border-color: #a9f0d1;\n }\n}\n\n@media (max-width: 768px) {\n .greeting {\n font-size: 2rem; /* Smaller greeting font size for tablets and smaller devices */\n }\n\n .name {\n font-size: 2.4rem; /* Reduce font size for better fit */\n }\n\n .typewriter {\n font-size: 1.2rem; /* Adjust typewriter font size */\n }\n .home-container {\n padding: 15px; /* Add padding for smaller screens */\n }\n}\n\n@media (max-width: 480px) {\n .greeting {\n font-size: 1.8rem; /* Further reduce for mobile phones */\n }\n\n .name {\n font-size: 2rem;\n }\n\n .typewriter {\n font-size: 1rem;\n }\n .home-container {\n padding: 10px; /* Further reduce padding for smaller devices */\n }\n}\n","/* General About Section Styling */\n.about-section {\n padding: 2rem; /* 預設內距 */\n background-color: #121212; /* 深色背景 */\n color: #fff; /* 白色文字 */\n max-width: 100%; /* 確保容器寬度自適應 */\n}\n\n\n/* Section Heading */\n.about-section h2 {\n font-size: 2.5rem; /* 預設字體大小 */\n color: #ffc107;\n text-align: center;\n margin-bottom: 1.5rem;\n word-wrap: break-word; /* 確保換行 */\n overflow-wrap: break-word; /* 支援所有瀏覽器 */\n white-space: normal; /* 允許換行 */\n line-height: 1.2; /* 增加行高避免擁擠 */\n}\n\n/* About Intro */\n.about-intro {\n text-align: center;\n color: #eaeaea; /* Softer white for intro text */\n margin-bottom: 1.5rem;\n}\n\n.intro-box {\n padding: 1.5rem;\n background-color: #1a1a1a; /* Subtle background for intro box */\n border-radius: 10px; /* Rounded corners */\n color: #ffc107; /* Contrast for text inside the box */\n margin-bottom: 1.5rem;\n}\n\n/* Skill Tags */\n.skills {\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n gap: 10px; /* Space between skill tags */\n margin-bottom: 1.5rem;\n}\n\n.skill-tag {\n margin: 0.5rem;\n font-size: 1rem; /* Standard font size */\n background-color: #ffc107; /* Yellow background for skill tags */\n color: #121212; /* Text color for contrast */\n border-radius: 5px; /* Rounded corners for styling */\n padding: 6px 12px; /* Add padding for better appearance */\n font-weight: bold; /* Emphasize skill text */\n}\n\n/* Journey Tabs */\n.journey-tabs {\n display: flex;\n justify-content: space-around;\n align-items: center;\n margin: 20px 0;\n}\n\n.journey-tabs button {\n background-color: #ffc107;\n border: none;\n border-radius: 8px;\n padding: 10px 20px;\n color: #000;\n font-size: 1rem;\n font-weight: bold;\n display: flex;\n align-items: center;\n gap: 10px;\n cursor: pointer;\n transition: transform 0.2s ease;\n}\n\n.journey-tabs button.active {\n transform: scale(1.1);\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);\n}\n.journey-tabs button:hover {\n transform: scale(1.05);\n}\n\n.journey-tabs button svg {\n font-size: 1.5rem;\n}\n\n/* Timeline Container */\n.timeline-container {\n display: flex;\n flex-direction: column;\n gap: 1.5rem; /* Space between timeline items */\n background-color: #1a1a1a; /* Dark background for timeline */\n padding: 1.5rem;\n border-radius: 10px; /* Rounded corners */\n margin-top: 2rem; /* Add spacing from other sections */\n}\n\n.timeline-item {\n display: flex;\n flex-direction: column;\n align-items: center;\n text-align: center;\n}\n\n.timeline-item .circle {\n width: 15px;\n height: 15px;\n background-color: #ffc107; /* Yellow for timeline dot */\n border-radius: 50%;\n margin-bottom: 10px;\n}\n\n.timeline-item .content h4 {\n font-size: 1.2rem;\n color: #ffc107; /* Yellow color for headings */\n margin-bottom: 0.5rem;\n}\n\n.timeline-item span {\n font-size: 0.9rem;\n color: #eaeaea; /* Softer white for details */\n}\n\n/* Responsive Styles */\n\n/* For medium screens */\n@media (max-width: 768px) {\n .about-section {\n padding: 1rem;\n }\n\n .about-section h2 {\n font-size: 2.5rem; /* 預設字體大小 */\n color: #ffc107;\n text-align: center;\n margin-bottom: 1.5rem;\n word-wrap: break-word; /* 確保換行 */\n overflow-wrap: break-word; /* 支援所有瀏覽器 */\n white-space: normal; /* 允許換行 */\n line-height: 1.2; /* 增加行高避免擁擠 */\n }\n \n\n .skills {\n gap: 5px;\n }\n\n .skill-tag {\n font-size: 0.9rem;\n padding: 5px 10px;\n }\n\n .journey-tabs {\n gap: 10px;\n }\n\n .journey-tabs button {\n font-size: 1rem;\n padding: 8px 12px;\n max-width: 150px;\n height: auto;\n }\n\n .journey-tabs button svg {\n font-size: 1.5rem; /* Slightly larger icons for tablets */\n }\n\n .timeline-container {\n padding: 1rem;\n gap: 1rem;\n }\n\n .timeline-item .content h4 {\n font-size: 1.1rem;\n }\n\n .timeline-item span {\n font-size: 0.8rem;\n }\n}\n\n/* For small screens */\n@media (max-width: 480px) {\n .about-section h2 {\n font-size: 2.5rem; /* 預設字體大小 */\n color: #ffc107;\n text-align: center;\n margin-bottom: 1.5rem;\n word-wrap: break-word; /* 確保換行 */\n overflow-wrap: break-word; /* 支援所有瀏覽器 */\n white-space: normal; /* 允許換行 */\n line-height: 1.5; /* 增加行高避免擁擠 */\n }\n \n\n .skills {\n flex-direction: column; /* Stack skill tags */\n gap: 5px;\n }\n\n .skill-tag {\n font-size: 0.8rem;\n padding: 4px 8px;\n }\n\n .journey-tabs {\n display: grid; /* Use grid layout for buttons */\n grid-template-columns: repeat(2, 1fr); /* Two equal columns for buttons */\n gap: 12px; /* Space between buttons */\n justify-content: center; /* Center the grid horizontally */\n align-items: center; /* Align buttons vertically */\n }\n\n .journey-tabs button {\n font-size: 1rem; /* Standard readable text size */\n width: 130px; /* Fixed button width */\n height: 50px; /* Fixed button height */\n display: flex; /* Align icon and text within the button */\n justify-content: center; /* Center align both icon and text */\n align-items: center; /* Vertically center icon and text */\n gap: 8px; /* Space between icon and text */\n text-align: center; /* Center align text */\n background-color: #ffc107; /* Button background color */\n border-radius: 8px; /* Rounded corners */\n border: none; /* Remove border */\n color: #000; /* Button text color */\n font-weight: bold; /* Bold text for emphasis */\n cursor: pointer; /* Pointer cursor on hover */\n transition: transform 0.2s ease;\n }\n\n .journey-tabs button:hover {\n transform: scale(1.05); /* Slight zoom effect on hover */\n }\n\n .journey-tabs button svg {\n font-size: 1.2rem; /* Icon size adjusted for proper scaling */\n }\n\n .journey-tabs button:nth-child(3) {\n grid-column: 1 / span 2; /* Make the third button span both columns */\n justify-self: center; /* Center align the third button horizontally */\n }\n\n .timeline-container {\n padding: 0.8rem;\n }\n\n .timeline-item .content h4 {\n font-size: 1rem;\n }\n\n .timeline-item span {\n font-size: 0.7rem;\n }\n}\n",".skills-title {\n text-align: center;\n font-size: 2.5rem;\n color: #ffc107;\n margin-bottom: 40px;\n }\n \n .skills-container {\n display: grid; /* 改為使用網格布局 */\n grid-template-columns: repeat(auto-fit, minmax(1000px, 1fr)); /* 自動適配區塊寬度 */\n gap: 20px; /* 增加區塊間距 */\n width: 100%; /* 確保填滿父容器 */\n padding: 20px; /* 增加內距讓區塊有呼吸空間 */\n box-sizing: border-box; /* 確保內距計入總寬度 */\n}\n \n .skills-category {\n background: #1e1e2f;\n padding: 20px;\n border-radius: 10px;\n box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);\n border-left: 5px solid;\n transition: transform 0.3s ease;\n }\n \n .category-header {\n display: flex;\n align-items: center;\n gap: 10px;\n margin-bottom: 20px;\n }\n \n .category-icon {\n font-size: 2rem;\n color: inherit;\n }\n \n .category-title {\n font-size: 1.8rem;\n color: #ffc107;\n margin-bottom: 10px;\n text-align: center;\n }\n \n .skills-list {\n display: flex;\n flex-direction: column;\n gap: 15px;\n }\n \n .skill-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 15px;\n }\n \n .skill-label {\n display: flex;\n align-items: center;\n gap: 10px;\n flex: 1;\n color: #ddd;\n font-weight: bold;\n }\n \n .progress-bar-container {\n flex: 3;\n background: #333;\n height: 10px;\n border-radius: 10px;\n overflow: hidden;\n box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);\n }\n \n .progress-bar {\n height: 100%;\n border-radius: 10px;\n }\n \n .skill-percentage {\n flex: 1;\n text-align: right;\n color: #ddd;\n font-weight: bold;\n }\n \n .skill-item:hover .progress-bar {\n transform: scale(1.02);\n transition: transform 0.3s ease;\n }\n \n /* Responsive Styles for Mobile Devices */\n@media (max-width: 768px) {\n .skills-container {\n gap: 20px;\n padding: 10px;\n }\n\n .skills-category {\n padding: 15px;\n border-left-width: 3px; /* Reduced border width for a cleaner look */\n }\n\n .category-title {\n font-size: 1.5rem;\n }\n\n .skill-item {\n flex-direction: row;\n align-items: center;\n gap: 10px;\n justify-content: space-between; /* Maintain consistent alignment */\n }\n\n .skill-label {\n font-size: 0.9rem; /* Adjust font size for smaller screens */\n }\n\n .progress-bar-container {\n height: 8px; /* Reduced height for better proportion */\n }\n\n .skill-percentage {\n text-align: left;\n margin-left: 10px; /* Added margin to align with the label */\n color: #ffc107; /* Adjusted color for better visibility */\n }\n}\n","/* Portfolio Container */\n#portfolio {\n padding: 30px 10px; /* Reduced padding for smaller devices */\n background: #0b1120;\n color: #f8f9fa;\n}\n\n/* Header Styling */\nh2 {\n text-align: center;\n font-size: 1.8rem; /* Adjust font size for mobile */\n color: #ffc107;\n margin-bottom: 15px;\n}\n\n/* Category Buttons */\n/* Category Buttons */\n.category-buttons {\n display: flex;\n flex-wrap: wrap; /* Allow buttons to wrap */\n justify-content: center;\n gap: 10px; /* Add spacing between buttons */\n margin-bottom: 20px;\n}\n\n.category-button {\n padding: 10px 18px; /* Slightly larger padding for better tap area */\n font-size: 1rem; /* Keep font size readable */\n background-color: #112240; /* Dark background for buttons */\n color: #fff; /* White text */\n border: 2px solid #ffc107; /* Add border for better visibility */\n border-radius: 20px; /* Rounded corners */\n cursor: pointer;\n transition: transform 0.2s, background-color 0.3s;\n}\n\n.category-button:hover {\n background-color: #ffc107; /* Bright yellow on hover */\n color: #121212; /* Dark text on hover */\n}\n\n.category-button.active {\n background-color: #ffae00; /* Highlight active button */\n color: #fff; /* White text for active button */\n transform: scale(1.1); /* Slight zoom to indicate focus */\n}\n\n/* Project Grid */\n/* Project Grid */\n.project-grid {\n display: grid;\n grid-template-columns: 1fr; /* Stacked layout for mobile */\n gap: 15px; /* Reduce spacing for mobile view */\n}\n\n/* Project Card */\n.project-card {\n width: 100%; /* Full width on mobile */\n background: #112240; /* Dark card background */\n border-radius: 10px;\n padding: 20px; /* Slightly larger padding for better readability */\n box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.3); /* Subtle shadow */\n transition: transform 0.2s, box-shadow 0.2s;\n}\n\n.project-card:hover {\n transform: translateY(-8px); /* Lift effect on hover */\n box-shadow: 0px 8px 16px rgba(255, 193, 7, 0.3); /* Highlight shadow */\n}\n\n\n/* Tags */\n.tags {\n margin-top: 15px; /* Add spacing above tags */\n display: flex;\n flex-wrap: wrap; /* Wrap tags for small screens */\n gap: 8px; /* Add spacing between tags */\n}\n\n.tag {\n background: #ffc107; /* Yellow background for tags */\n color: #121212; /* Dark text */\n padding: 6px 10px; /* Slightly larger padding for better visibility */\n border-radius: 6px; /* Rounded corners for tags */\n font-size: 0.9rem; /* Maintain readability */\n font-weight: bold; /* Emphasize tags */\n transition: transform 0.2s, background-color 0.3s;\n}\n\n.tag:hover {\n background: #ffdd57; /* Lighter yellow on hover */\n transform: scale(1.1); /* Slight zoom effect */\n}\n\n/* Filter Buttons Container */\n.filter-buttons {\n display: flex;\n justify-content: center;\n gap: 10px;\n margin-bottom: 20px;\n}\n\n/* Individual Filter Button Styles */\n.filter-buttons button {\n background-color: #ffc107; /* Bright yellow background */\n color: #121212; /* Dark text for contrast */\n font-size: 1rem; /* Adjust text size */\n padding: 10px 20px; /* Spacing inside the button */\n border: none;\n border-radius: 25px; /* Rounded corners */\n cursor: pointer;\n transition: transform 0.2s ease-in-out, background-color 0.3s ease-in-out;\n}\n\n/* Hover Effect */\n.filter-buttons button:hover {\n background-color: #ffdd57; /* Slightly lighter yellow */\n transform: scale(1.05); /* Slight zoom effect */\n}\n\n/* Active Button State */\n.filter-buttons button.active {\n background-color: #ffae00; /* Orange to highlight active button */\n color: #fff; /* White text for better contrast */\n}\n\n/* Responsive Adjustments */\n@media (max-width: 480px) {\n h2 {\n font-size: 1.4rem; /* Adjust font size for very small screens */\n }\n\n .category-button {\n padding: 8px 12px; /* Compact button size for mobile */\n font-size: 0.8rem; /* Smaller text */\n }\n\n .project-card {\n padding: 15px; /* Reduce padding for compact view */\n font-size: 0.9rem; /* Slightly smaller text size */\n }\n\n .tag {\n font-size: 0.7rem; /* Smaller tags for extra-small screens */\n padding: 4px 8px; /* Compact padding */\n }\n}\n",".resume-section {\n background: linear-gradient(135deg, #1e1e2f, #252542);\n color: #ffc107;\n text-align: center;\n padding: 2rem 1rem;\n min-height: 100vh;\n}\n\n.resume-section h2 {\n font-size: 2.5rem;\n margin-bottom: 1rem;\n}\n\n.resume-section p {\n font-size: 1.2rem;\n margin-bottom: 2rem;\n color: #fff;\n}\n\n.resume-category {\n margin: 2rem 0;\n text-align: left;\n}\n\n.resume-category h3 {\n font-size: 1.8rem;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n margin-bottom: 1rem;\n color: #ffc107;\n}\n\n.resume-card {\n background: #1e1e2f;\n padding: 1rem;\n border: 2px solid #ffc107;\n border-radius: 8px;\n margin-bottom: 1rem;\n}\n\n.resume-card h4 {\n font-size: 1.5rem;\n margin-bottom: 0.5rem;\n}\n\n.resume-card span {\n font-size: 1rem;\n color: #ccc;\n}\n\n.resume-card p {\n font-size: 1rem;\n color: #fff;\n}\n\n.skills-grid {\n display: flex;\n flex-wrap: wrap;\n gap: 1rem;\n justify-content: center;\n margin-top: 1rem;\n}\n\n.skills-grid span {\n background: #252542;\n color: #ffc107;\n padding: 0.5rem 1rem;\n border-radius: 5px;\n font-size: 1rem;\n transition: all 0.3s;\n}\n\n.skills-grid span:hover {\n background: #ffc107;\n color: #252542;\n transform: scale(1.1);\n}\n\n.download-resume {\n margin-top: 2rem;\n}\n\n.download-button {\n background: #ffc107;\n color: #252542;\n padding: 0.8rem 1.5rem;\n border-radius: 5px;\n font-size: 1.2rem;\n font-weight: bold;\n display: inline-flex;\n align-items: center;\n gap: 0.5rem;\n text-decoration: none;\n transition: all 0.3s;\n}\n\n.download-button:hover {\n background: #fff;\n color: #252542;\n transform: scale(1.05);\n}\n\n/* Responsive Adjustments for Medium Screens */\n@media (max-width: 768px) {\n .resume-section h2 {\n font-size: 2rem;\n }\n\n .resume-section p {\n font-size: 1rem;\n }\n\n .resume-card {\n padding: 0.8rem;\n }\n\n .resume-card h4 {\n font-size: 1.3rem;\n }\n\n .resume-card p, .resume-card span {\n font-size: 0.9rem;\n }\n\n .skills-grid span {\n font-size: 0.9rem;\n padding: 0.4rem 0.8rem;\n }\n\n .download-button {\n font-size: 1rem;\n padding: 0.6rem 1rem;\n }\n}\n\n/* Responsive Adjustments for Small Screens */\n@media (max-width: 480px) {\n .resume-section h2 {\n font-size: 1.8rem;\n }\n\n .resume-card {\n padding: 0.6rem;\n }\n\n .resume-card h4 {\n font-size: 1.2rem;\n }\n\n .resume-card p, .resume-card span {\n font-size: 0.8rem;\n }\n\n .skills-grid span {\n font-size: 0.8rem;\n padding: 0.3rem 0.6rem;\n }\n\n .download-button {\n font-size: 0.9rem;\n padding: 0.5rem 0.8rem;\n }\n}\n",".contact-section {\n background: linear-gradient(135deg, #1e1e2f, #252542);\n color: #ffc107;\n padding: 2rem;\n text-align: center;\n min-height: 100vh;\n }\n \n .contact-section h2 {\n font-size: 2.5rem;\n margin-bottom: 1rem;\n }\n \n .contact-section p {\n font-size: 1.2rem;\n margin-bottom: 2rem;\n color: #fff;\n }\n \n .contact-form {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 1rem;\n margin-bottom: 2rem;\n }\n \n .form-input, .form-textarea {\n width: 80%;\n max-width: 500px;\n padding: 1rem;\n border: 2px solid #ffc107;\n border-radius: 5px;\n background: #1e1e2f;\n color: #fff;\n font-size: 1rem;\n outline: none;\n transition: 0.3s;\n }\n \n .form-input:focus, .form-textarea:focus {\n border-color: #fff;\n background: #252542;\n }\n \n .form-textarea {\n height: 150px;\n resize: none;\n }\n \n .send-button {\n background: #ffc107;\n color: #252542;\n padding: 0.8rem 1.5rem;\n border: none;\n border-radius: 5px;\n font-size: 1.2rem;\n font-weight: bold;\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n transition: all 0.3s;\n }\n \n .send-button:hover {\n background: #fff;\n color: #252542;\n transform: scale(1.05);\n }\n \n .contact-info {\n color: #fff;\n margin-top: 2rem;\n text-align: center; /* Ensures the text is centered */\n }\n \n .contact-info h3 {\n font-size: 1.5rem;\n margin-bottom: 1rem;\n }\n \n .contact-link {\n display: flex;\n align-items: center;\n gap: 0.5rem; /* Adds spacing between the icon and text */\n justify-content: center; /* Ensures everything is centered horizontally */\n font-size: 1.1rem;\n color: #ffc107;\n text-decoration: none;\n transition: color 0.3s;\n }\n \n .contact-link:hover {\n color: #fff;\n }\n \n .contact-info p {\n font-size: 1rem;\n }\n \n .connect-with-me {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n margin-bottom: 2rem; /* Add spacing between the section and Location */\n }\n \n .connect-icons {\n display: flex;\n flex-direction: column;\n align-items: center; /* Center align items within the container */\n justify-content: center; /* Center align vertically */\n gap: 0.5rem; /* Adds spacing between items */\n }\n ","/* Section Container */\n.section-container {\n margin: 40px auto;\n padding: 20px;\n max-width: 1200px; /* Centralize the content */\n text-align: left;\n}\n\n.section-container .content-header h2 {\n font-size: 32px;\n}\n\n.section-container .content-header p {\n font-size: 22px;\n}\n\n/* Header Styling */\n.content-header {\n margin-bottom: 20px;\n}\n\n.content-header h2 {\n font-size: 32px; /* 可以調整此字型大小以適配較小螢幕 */\n margin-bottom: 15px;\n color: #ffc107;\n font-weight: bold;\n text-align: center;\n word-wrap: break-word; /* 確保長文字自動換行 */\n overflow-wrap: break-word; /* 支援所有瀏覽器的文字換行 */\n white-space: normal; /* 禁止文字一行顯示,允許換行 */\n line-height: 1.9; /* 調整行高以防止文字擁擠 */\n}\n\n.content-header p {\n font-size: 20px;\n line-height: 1.8;\n color: #eaeaea;\n margin-bottom: 1em;\n text-align: justify; /* Align text for better readability */\n}\n\n/* Main Image Section */\n.main-image-container {\n text-align: center;\n margin: 20px 0;\n}\n\n.image-video-container {\n display: flex; /* Arrange items in a row */\n align-items: center; /* Align items vertically */\n justify-content: space-between; /* Add space between image and video */\n gap: 20px; /* Space between the image and video */\n margin: 20px 0; /* Add space above and below */\n}\n\n.image-container-left {\n flex: 1; /* Allow the image to take up equal space */\n display: flex;\n justify-content: center; /* Center the image horizontally */\n}\n\n.image-container {\n display: flex;\n justify-content: center; /* Center the image horizontally */\n margin: 20px 0; /* Add some spacing */\n}\n\n.single-image {\n max-width: 100%; /* Ensure the image scales to fit its container */\n height: auto; /* Maintain the aspect ratio */\n border-radius: 10px; /* Optional: add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: add a shadow effect */\n}\n\n.main-image {\n width: 100%;\n max-width: 400px;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n margin: 0 auto;\n}\n\n.main-image:hover {\n transform: scale(1.05);\n}\n\n/* Gallery Section */\n.gallery-container {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 20px;\n margin-top: 20px;\n}\n\n.gallery-image {\n width: 100%;\n max-height: 250px;\n object-fit: cover;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n transition: transform 0.3s;\n}\n\n.gallery-image:hover {\n transform: scale(1.05);\n}\n\n/* Responsive Iframe */\n.responsive-iframe {\n width: 100%;\n max-width: 48%; /* Side-by-side on desktop */\n aspect-ratio: 16 / 9;\n border: none;\n}\n\n/* GIF Container */\n.gif-container {\n display: flex;\n flex-wrap: wrap;\n justify-content: center; /* Ensure proper alignment on all screens */\n gap: 10px;\n margin-bottom: 20px;\n}\n\n.gif {\n width: 48%; /* Consistent width */\n border-radius: 5px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n}\n\n.gif:hover {\n transform: scale(1.05);\n}\n\n/* Video Container */\n.video-image-container {\n display: flex; /* Use flexbox for side-by-side layout */\n justify-content: space-between; /* Evenly space video and image */\n align-items: center; /* Vertically align video and image */\n gap: 20px; /* Add space between video and image */\n margin: 20px 0; /* Add space above and below */\n}\n\n/* Video container */\n.video-container-right {\n flex: 1; /* Allow the video to take up equal space */\n display: flex;\n justify-content: center; /* Center the video horizontally */\n}\n\n.video-image-container-left {\n display: flex; /* Flexbox for alignment */\n justify-content: flex-start; /* Align to the left */\n align-items: center; /* Center vertically */\n gap: 20px; /* Space between video and image */\n margin: 20px 0; /* Add spacing above and below */\n}\n\n.video-image-container-left iframe {\n width: 60%; /* Increase video size */\n aspect-ratio: 16 / 9; /* Maintain the aspect ratio */\n max-width: 800px; /* Ensure it doesn’t exceed container width */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n.video-image-container-left img {\n width: 48%; /* Equal size for both video and image */\n aspect-ratio: 16 / 9; /* Maintain aspect ratio */\n max-width: 800px; /* Prevent elements from being too large */\n border-radius: 10px; /* Optional: Rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n.amcl-image {\n width: 100%; /* Image takes full width of its container */\n max-width: 500px; /* Limit the maximum size */\n aspect-ratio: 16 / 9; /* Maintain aspect ratio */\n border-radius: 10px; /* Rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Add shadow */\n transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth hover transition */\n}\n\n.amcl-image:hover {\n transform: scale(1.05); /* Slightly enlarge the image on hover */\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.7); /* Stronger shadow on hover */\n}\n\n.video-container-center {\n display: flex; /* Flexbox for alignment */\n justify-content: center; /* Center horizontally */\n align-items: center; /* Center vertically */\n margin: 20px auto; /* Add spacing */\n}\n\n.video-container-center iframe {\n width: 80%; /* Increase video size */\n aspect-ratio: 16 / 9; /* Maintain the 16:9 aspect ratio */\n max-width: 1000px; /* Maximum width for larger screens */\n border-radius: 10px; /* Optional: Rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n.image-container-above {\n display: flex; /* Flexbox for alignment */\n justify-content: center; /* Center the image horizontally */\n margin-bottom: 20px; /* Add spacing below the image */\n}\n\n.image-container-above img {\n width: 80%; /* Set image width */\n max-width: 800px; /* Prevent it from being too large */\n aspect-ratio: auto; /* Maintain the image's aspect ratio */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n.video-iframe {\n width: 100%; /* Video takes full width of its container */\n max-width: 500px; /* Limit the maximum size */\n aspect-ratio: 16 / 9; /* Maintain aspect ratio */\n border-radius: 10px; /* Rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Add shadow */\n transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth hover transition */\n}\n\n.video-iframe:hover {\n transform: scale(1.05); /* Slightly enlarge the video on hover */\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.7); /* Stronger shadow on hover */\n}\n\n.video-image-container iframe,\n.video-image-container img {\n width: 48%; /* Same width for both video and image */\n aspect-ratio: 16 / 9; /* Maintain consistent aspect ratio */\n max-width: 800px; /* Prevent elements from being too large */\n border-radius: 10px; /* Optional: Rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n.video-container iframe {\n width: 80%; /* Use 80% of the container width for better centering */\n aspect-ratio: 16 / 9; /* Maintain the aspect ratio */\n max-width: 1200px; /* Prevent videos from being too wide */\n margin: 20px auto; /* Center the video with spacing */\n display: block;\n border-radius: 10px; /* Add slight rounding for a polished look */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add a shadow */\n}\n\n.video-container iframe,\n.video-container iframe {\n width: 60%; /* Adjust width for consistent size */\n aspect-ratio: 16 / 9; /* Maintain the 16:9 ratio */\n max-width: 800px; /* Prevent video from being too large */\n margin: 0 auto; /* Center horizontally */\n display: block; /* Ensure block display for centering */\n transition: transform 0.3s ease, box-shadow 0.3s ease; \n}\n\n.video-container iframe:hover,\n.videos-container iframe:hover {\n transform: scale(1.05);\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.7);\n transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.video-container-center iframe {\n transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth transition */\n}\n\n.video-container-center iframe:hover {\n transform: scale(1.05); /* Slightly enlarge the video */\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.7); /* Stronger shadow on hover */\n}\n\n.video-container {\n text-align: center; /* Center the container content */\n margin-top: 20px; /* Add space above the video */\n}\n\n.videos-container iframe {\n width: 48%; /* Make each video take up 48% of the container width */\n aspect-ratio: 16 / 9; /* Maintain the 16:9 aspect ratio */\n max-width: 600px; /* Limit the width of each video */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n.videos-container iframe:hover {\n transform: scale(1.05); /* Slightly enlarge the video on hover */\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.7); /* Stronger shadow effect on hover */\n}\n\n/* Center the video for \"How about make it autonomously?\" */\n.video-section-center {\n display: flex; /* Flexbox for alignment */\n flex-direction: column; /* Stack subtitle and video vertically */\n justify-content: center; /* Center horizontally */\n align-items: center; /* Center vertically */\n margin: 20px auto; /* Add spacing */\n text-align: center; /* Center align the text */\n}\n.video-section-center iframe {\n width: 80%; /* Increase width to make the video larger */\n aspect-ratio: 16 / 9; /* Maintain the 16:9 aspect ratio */\n max-width: 1000px; /* Maximum width for larger screens */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n margin: 0 auto; /* Center horizontally */\n display: block; /* Ensure block-level display */\n}\n\n.videos-container {\n display: flex; /* Arrange videos in a row */\n justify-content: space-between; /* Space out the videos evenly */\n align-items: center; /* Vertically align videos */\n gap: 10px; /* Add space between videos */\n flex-wrap: nowrap; /* Prevent videos from wrapping */\n margin-top: 20px; /* Add space above the container */\n}\n\n.videos-container iframe {\n width: 48%; /* Each video takes 48% of the container width */\n aspect-ratio: 16 / 9; /* Maintain the 16:9 aspect ratio */\n max-width: 600px; /* Limit the width of each video */\n border-radius: 10px; /* Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Add shadow effect */\n transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n/* Subtitle Container */\n.subtitle-container {\n text-align: center;\n margin: 20px 0;\n}\n\n.subtitle-container h3 {\n font-size: 1.3rem !important; /* Reduced size */\n color: #ffcc00;\n margin-bottom: 15px;\n}\n\n/* Responsive Adjustments */\n@media (max-width: 768px) {\n .content-header h2 {\n font-size: 24px !important;\n text-align: center;\n word-wrap: break-word;\n overflow-wrap: break-word;\n white-space: normal;\n }\n\n .section-container .content-header h2 {\n font-size: 24px !important;\n text-align: center;\n }\n\n .section-container .content-header p {\n font-size: 18px !important;\n text-align: left;\n }\n\n .content-header p {\n text-align: left; /* Change from justify to left-align */\n font-size: 16px;\n line-height: 1.6;\n }\n\n .gallery-container {\n grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));\n }\n\n .gif {\n width: 90%; /* Reduced width for smaller screens */\n margin: 0 auto; /* Center align */\n }\n\n .responsive-iframe {\n max-width: 100%;\n height: auto; /* Adjust height dynamically */\n margin-bottom: 15px;\n }\n\n .subtitle-container h3 {\n font-size: 1.2rem;\n }\n\n .videos-container {\n justify-content: space-evenly; \n flex-wrap: nowrap; /* Ensure side-by-side layout persists */\n }\n\n .videos-container iframe {\n width: 45%; /* Adjust the width to fit smaller screens */\n max-width: 45%; \n }\n\n .section-container {\n padding: 10px;\n }\n}\n\n@media (max-width: 480px) {\n .content-header h2 {\n font-size: 24px !important;\n text-align: center;\n word-wrap: break-word;\n overflow-wrap: break-word;\n white-space: normal;\n }\n\n .content-header p {\n text-align: match-parent; /* Ensure consistent alignment */\n font-size: 14px;\n line-height: 1.5;\n }\n\n .gif-container {\n flex-direction: column; /* Stack GIFs vertically */\n align-items: center;\n gap: 15px;\n }\n\n .gif {\n width: 100%; /* Full width for very small screens */\n max-width: 350px;\n }\n\n .video-container iframe {\n width: 100%; /* Full width for phones */\n height: 250px; /* Adjust height for smaller screens */\n }\n\n .videos-container {\n flex-wrap: nowrap; /* Keep videos side by side */\n justify-content: space-evenly;\n gap: 5px; /* Adjust spacing for very small screens */\n }\n\n .videos-container iframe {\n width: 45%; /* Reduce width further for small devices */\n max-width: 45%; /* Ensure consistent size */\n }\n .subtitle-container h3 {\n font-size: 1rem;\n }\n\n .section-container {\n padding: 5px;\n }\n}\n","/* Section Container */\n.section-container {\n margin: 40px auto;\n padding: 20px;\n max-width: 1200px; /* Centralize the content */\n text-align: left;\n}\n\n.section-container .content-header h2 {\n font-size: 32px;\n}\n\n.section-container .content-header p {\n font-size: 22px;\n}\n\n/* Header Styling */\n.content-header {\n margin-bottom: 20px;\n}\n\n.content-header h2 {\n font-size: 32px; /* 可以調整此字型大小以適配較小螢幕 */\n margin-bottom: 15px;\n color: #ffc107;\n font-weight: bold;\n text-align: center;\n word-wrap: break-word; /* 確保長文字自動換行 */\n overflow-wrap: break-word; /* 支援所有瀏覽器的文字換行 */\n white-space: normal; /* 禁止文字一行顯示,允許換行 */\n line-height: 1.9; /* 調整行高以防止文字擁擠 */\n}\n\n.content-header p {\n font-size: 20px;\n line-height: 1.8;\n color: #eaeaea;\n margin-bottom: 1em;\n text-align: justify; /* Align text for better readability */\n}\n\n/* Main Image Section */\n.main-image-container {\n text-align: center;\n margin: 20px 0;\n}\n\n.image-container {\n display: flex;\n justify-content: center; /* Center the image horizontally */\n margin: 20px 0; /* Add some spacing */\n}\n\n.single-image {\n max-width: 100%; /* Ensure the image scales to fit its container */\n height: auto; /* Maintain the aspect ratio */\n border-radius: 10px; /* Optional: add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: add a shadow effect */\n}\n\n.main-image {\n width: 100%;\n max-width: 400px;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n margin: 0 auto;\n}\n\n.main-image:hover {\n transform: scale(1.05);\n}\n\n/* Gallery Section */\n.gallery-container {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 20px;\n margin-top: 20px;\n}\n\n.gallery-image {\n width: 100%;\n max-height: 250px;\n object-fit: cover;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n transition: transform 0.3s;\n}\n\n.gallery-image:hover {\n transform: scale(1.05);\n}\n\n/* Responsive Iframe */\n.responsive-iframe {\n width: 100%;\n max-width: 48%; /* Side-by-side on desktop */\n aspect-ratio: 16 / 9;\n border: none;\n}\n\n/* GIF Container */\n.gif-container {\n display: flex;\n flex-wrap: wrap;\n justify-content: center; /* Ensure proper alignment on all screens */\n gap: 10px;\n margin-bottom: 20px;\n}\n\n.gif {\n width: 48%; /* Consistent width */\n border-radius: 5px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n}\n\n.gif:hover {\n transform: scale(1.05);\n}\n\n/* Video Container */\n.video-container iframe {\n width: 80%; /* Use 80% of the container width for better centering */\n aspect-ratio: 16 / 9; /* Maintain the aspect ratio */\n max-width: 1200px; /* Prevent videos from being too wide */\n margin: 20px auto; /* Center the video with spacing */\n display: block;\n border-radius: 10px; /* Add slight rounding for a polished look */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add a shadow */\n}\n\n.videos-container iframe {\n width: 48%; /* Each video takes 48% of the container width */\n aspect-ratio: 16 / 9; /* Maintain a 16:9 aspect ratio */\n max-width: 600px; /* Limit maximum width for consistency */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add a shadow */\n}\n\n.videos-container {\n display: flex; /* Align videos side by side */\n justify-content: space-around; /* Space out the videos evenly */\n align-items: center; /* Align videos vertically */\n gap: 20px; /* Add space between the videos */\n flex-wrap: nowrap; /* Prevent wrapping to the next line */\n margin-top: 20px; /* Add spacing above the videos */\n}\n\n/* Subtitle Container */\n.subtitle-container {\n text-align: center;\n margin: 20px 0;\n}\n\n.subtitle-container h3 {\n font-size: 1.3rem !important; /* Reduced size */\n color: #ffcc00;\n margin-bottom: 15px;\n}\n\n/* Responsive Adjustments */\n@media (max-width: 768px) {\n .section-container .content-header h2 {\n font-size: 24px !important;\n text-align: center;\n }\n\n .section-container .content-header p {\n font-size: 18px !important;\n text-align: left;\n }\n\n .gallery-container {\n grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));\n }\n\n .gif {\n width: 90%; /* Reduced width for smaller screens */\n margin: 0 auto; /* Center align */\n }\n\n .responsive-iframe {\n max-width: 100%;\n height: auto; /* Adjust height dynamically */\n margin-bottom: 15px;\n }\n\n .subtitle-container h3 {\n font-size: 1.2rem;\n }\n\n .videos-container {\n flex-wrap: wrap; /* Allow videos to stack vertically */\n flex-direction: column; /* Stack videos top to bottom */\n align-items: center; /* Center the videos */\n }\n\n .videos-container iframe {\n width: 90%; /* Use 90% of the container width for better spacing */\n max-width: 100%; /* Ensure it doesn’t exceed the container */\n margin-bottom: 20px; /* Add spacing between the videos */\n }\n\n .section-container {\n padding: 10px;\n }\n}\n\n@media (max-width: 480px) {\n .content-header h2 {\n font-size: 18px;\n text-align: center;\n }\n\n .content-header p {\n text-align: match-parent; /* Ensure consistent alignment */\n font-size: 14px;\n line-height: 1.5;\n }\n\n .gif-container {\n flex-direction: column; /* Stack GIFs vertically */\n align-items: center;\n gap: 15px;\n }\n\n .gif {\n width: 100%; /* Full width for very small screens */\n max-width: 350px;\n }\n\n .video-container iframe {\n width: 100%; /* Full width for phones */\n height: 250px; /* Adjust height for smaller screens */\n }\n\n .subtitle-container h3 {\n font-size: 1rem;\n }\n\n .section-container {\n padding: 5px;\n }\n}\n","/* Section Container */\n.section-container {\n display: flex;\n flex-direction: column;\n align-items: center; /* Horizontally center */\n justify-content: center; /* Vertically center */\n margin: 0 auto;\n}\n\n.section-container .content-header h2 {\n font-size: 34px;\n}\n\n.section-container .content-header p {\n font-size: 22px;\n}\n\n/* Header Styling */\n.content-header {\n margin-bottom: 20px;\n}\n\n.content-header h2 {\n font-size: 32px;\n margin-bottom: 15px;\n color: #ffc107;\n font-weight: bold;\n text-align: center;\n}\n\n.content-header p {\n font-size: 20px;\n line-height: 1.8;\n color: #eaeaea;\n margin-bottom: 1em;\n text-align: justify; /* Align text for better readability */\n}\n\n/* Main Image Section */\n.main-image-container {\n text-align: center;\n margin: 20px 0;\n}\n\n.image-container {\n display: flex;\n justify-content: center; /* Center the image horizontally */\n margin: 20px 0; /* Add some spacing */\n}\n\n.single-image {\n max-width: 100%; /* Ensure the image scales to fit its container */\n height: auto; /* Maintain the aspect ratio */\n border-radius: 10px; /* Optional: add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: add a shadow effect */\n}\n\n.main-image {\n width: 100%;\n max-width: 400px;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n margin: 0 auto;\n}\n\n.main-image:hover {\n transform: scale(1.05);\n}\n\n/* Gallery Section */\n.gallery-container {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 20px;\n margin-top: 20px;\n}\n\n.gallery-image {\n width: 100%;\n max-height: 250px;\n object-fit: cover;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n transition: transform 0.3s;\n}\n\n.gallery-image:hover {\n transform: scale(1.05);\n}\n\n/* Responsive Iframe */\n.responsive-iframe {\n width: 100%;\n max-width: 48%; /* Side-by-side on desktop */\n aspect-ratio: 16 / 9;\n border: none;\n}\n\n/* GIF Container */\n.gif-container {\n display: flex;\n justify-content: center; /* Horizontally center */\n gap: 20px; /* Add spacing between GIFs */\n margin: 20px 0;\n}\n\n.gif-below-container {\n display: flex; /* Flexbox for alignment */\n justify-content: center; /* Center the GIF horizontally */\n margin-top: 20px; /* Add space above the GIF */\n}\n\n.gif-below {\n width: 80%; /* Set the width of the GIF */\n max-width: 800px; /* Prevent it from being too large */\n aspect-ratio: auto; /* Maintain the aspect ratio */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n\n/* Top GIF styling */\n.top-gif-container {\n text-align: center;\n margin: 20px 0;\n justify-content: center; \n}\n\n.top-gif {\n width: 80%;\n max-width: 800px;\n justify-content: center; \n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n}\n\n.image-description {\n text-align: center;\n font-size: 18px;\n color: #eaeaea;\n margin: 15px 0;\n}\n\n\n/* Two images side by side */\n.gif-container {\n display: flex;\n justify-content: center;\n gap: 20px;\n margin: 20px 0;\n}\n\n.gif {\n width: 45%; /* Adjust as needed */\n border-radius: 5px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n}\n\n\n/* Bottom GIF styling */\n.bottom-gif-container {\n text-align: center;\n margin: 30px 0;\n}\n\n.bottom-gif {\n width: 80%;\n max-width: 800px;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n}\n\n/* 確保所有 GIF 包括 .gif, .single-image, .top-gif 都有一致的 hover 效果 */\n.gif, .single-image, .top-gif {\n transition: transform 0.3s ease, box-shadow 0.3s ease; /* 平滑過渡 */\n border-radius: 10px; /* 可選,統一圓角 */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* 基礎陰影 */\n}\n\n.gif:hover, .single-image:hover, .top-gif:hover {\n transform: scale(1.05); /* 放大效果 */\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.7); /* 增強陰影 */\n filter: brightness(1.2); /* 提升亮度 */\n}\n\n\n\n.gif {\n width: 48%; /* Consistent width */\n border-radius: 5px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n}\n\n.gif:hover {\n transform: scale(1.05); /* 放大效果 */\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.7); /* 陰影加強效果 */\n filter: brightness(1.2); /* 提升亮度 */\n}\n\n/* Video Container */\n.video-container iframe {\n width: 80%; /* Use 80% of the container width for better centering */\n aspect-ratio: 16 / 9; /* Maintain the aspect ratio */\n max-width: 1200px; /* Prevent videos from being too wide */\n margin: 20px auto; /* Center the video with spacing */\n display: block;\n border-radius: 10px; /* Add slight rounding for a polished look */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add a shadow */\n}\n\n.videos-container iframe {\n width: 48%; /* Each video takes 48% of the container width */\n aspect-ratio: 16 / 9; /* Maintain a 16:9 aspect ratio */\n max-width: 600px; /* Limit maximum width for consistency */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add a shadow */\n}\n\n.videos-container {\n display: flex; /* Align videos side by side */\n justify-content: space-around; /* Space out the videos evenly */\n align-items: center; /* Align videos vertically */\n gap: 20px; /* Add space between the videos */\n flex-wrap: nowrap; /* Prevent wrapping to the next line */\n margin-top: 20px; /* Add spacing above the videos */\n}\n\n/* Subtitle Container */\n.subtitle-container {\n text-align: center;\n margin: 20px 0;\n}\n\n.subtitle-container h3 {\n font-size: 1.3rem !important; /* Reduced size */\n color: #ffcc00;\n margin-bottom: 15px;\n}\n\n/* Responsive Adjustments */\n@media (max-width: 768px) {\n .section-container .content-header h2 {\n font-size: 24px !important;\n text-align: center;\n }\n\n .section-container .content-header p {\n font-size: 18px !important;\n text-align: left;\n }\n\n .gallery-container {\n grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));\n }\n\n .gif {\n width: 90%; /* Reduced width for smaller screens */\n margin: 0 auto; /* Center align */\n }\n\n .responsive-iframe {\n max-width: 100%;\n height: auto; /* Adjust height dynamically */\n margin-bottom: 15px;\n }\n\n .subtitle-container h3 {\n font-size: 1.2rem;\n }\n\n .videos-container {\n flex-wrap: wrap; /* Allow videos to stack vertically */\n flex-direction: column; /* Stack videos top to bottom */\n align-items: center; /* Center the videos */\n }\n\n .videos-container iframe {\n width: 90%; /* Use 90% of the container width for better spacing */\n max-width: 100%; /* Ensure it doesn’t exceed the container */\n margin-bottom: 20px; /* Add spacing between the videos */\n }\n\n .section-container {\n padding: 10px;\n }\n}\n\n@media (max-width: 480px) {\n .section-container .content-header h2 {\n font-size: 24px !important;\n text-align: center;\n }\n\n .section-container .content-header p {\n font-size: 18px !important;\n text-align: left;\n }\n \n .gif-container {\n flex-direction: column; /* Stack GIFs vertically */\n align-items: center;\n gap: 15px;\n }\n\n .gif {\n width: 100%; /* Full width for very small screens */\n max-width: 350px;\n }\n\n .video-container iframe {\n width: 100%; /* Full width for phones */\n height: 250px; /* Adjust height for smaller screens */\n }\n\n .subtitle-container h3 {\n font-size: 1rem;\n }\n\n .section-container {\n padding: 5px;\n }\n}\n","body {\n margin: 0;\n padding: 0;\n background-color: #111;\n min-height: 100vh; /* Allow content to exceed viewport height */\n overflow-y: auto; /* Enable scrolling for overflowing content */\n}\n\nhtml {\n height: auto; /* Allow flexible height */\n}\n\n.content-wrapper {\n flex: 1;\n display: flex;\n flex-direction: column;\n overflow: visible; /* Allow overflowing content */\n padding: 20px; /* Consistent padding around content */\n }\n \n .section-container {\n flex: 1;\n display: flex;\n flex-direction: column;\n padding: 20px; /* Consistent padding */\n min-height: calc(100vh - 80px); /* Adjust for navbar height (replace 80px with your navbar height) */\n overflow-y: auto; /* Allow scrolling if content exceeds viewport height */\n overflow-x: hidden; /* Prevent horizontal scrolling */\n box-sizing: border-box; /* Ensure padding doesn't add extra width */\n }\n "],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/css/main.cc719a99.css.map b/static/css/main.cc719a99.css.map deleted file mode 100644 index 87bf340d8..000000000 --- a/static/css/main.cc719a99.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/css/main.cc719a99.css","mappings":"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","sources":["style.css","styles/Navbar.css","styles/Home.css","styles/About.css","styles/Skills.css","styles/Portfolio.css","styles/Resume.css","styles/Contact.css","styles/MultiMapNavigation.css","styles/RoboticVision.css","styles/RobotNavigationStudy.css","styles/App.css"],"sourcesContent":["* {\n margin: 0;\n padding: 0;\n box-sizing: border-box; /* Include padding in element dimensions */\n }\n \n body, html {\n height: auto; /* Allow the document to grow with content */\n min-height: 100vh; /* Ensure full viewport height */\n overflow-x: hidden; /* Prevent horizontal scrolling */\n }\n \n section {\n padding: 50px 20px; /* Add consistent padding to all sections */\n box-sizing: border-box; /* Ensure padding doesn't cause overflow */\n }\n \n h1, h2, h3, h4, h5, h6, p {\n margin: 0; /* Remove default margins */\n line-height: 1.5; /* Set consistent line height */\n word-wrap: break-word; /* Prevent long words from breaking layout */\n }\n ","/* Navbar Container */\n.navbar {\n background-color: #111;\n padding: 15px 10px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n position: fixed;\n width: 100%;\n top: 0;\n z-index: 1000;\n}\n\n/* Logo Styling */\n.sc-logo {\n font-size: 1.2rem;\n font-weight: bold;\n background: linear-gradient(to right, #FFC107, #FF5722);\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n cursor: pointer;\n}\n\n/* Nav Links */\n.nav-links {\n list-style: none;\n display: flex;\n gap: 20px;\n margin: 0;\n padding: 0;\n}\n\n.nav-links li a {\n color: #ffc107;\n font-size: 1rem;\n font-weight: bold;\n text-decoration: none;\n transition: color 0.3s ease;\n}\n\n.nav-links li a:hover {\n color: #fff;\n}\n\n/* Menu Icon Styling */\n.menu-icon {\n display: none;\n cursor: pointer;\n flex-direction: column;\n gap: 5px;\n}\n\n.menu-line {\n width: 25px;\n height: 3px;\n background-color: #ffc107;\n}\n\n/* Responsive Styles */\n@media (max-width: 768px) {\n .nav-links {\n display: none;\n flex-direction: column;\n gap: 10px;\n background-color: #111;\n position: absolute;\n top: 60px;\n right: 10px;\n padding: 10px;\n border-radius: 5px;\n }\n\n .nav-links.open {\n display: flex;\n }\n\n .menu-icon {\n display: flex;\n }\n}\n","/* General Container Styling */\n.home-container {\n height: 100vh;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n text-align: center;\n background-color: #121212; /* Dark background */\n color: #fff; /* White text */\n padding: 20px; /* Add padding for smaller screens */\n box-sizing: border-box; /* Ensure padding doesn't affect width */\n}\n\n/* First Line (Greeting) */\n.greeting {\n font-size: 2.5rem;\n color: #ffc107; /* Yellow color */\n margin-bottom: 10px;\n}\n\n/* Waving Hand Animation */\n.wave {\n display: inline-block;\n transform-origin: 70% 80%; /* Set the bottom of the hand as the pivot point */\n animation: wave-animation 2s infinite;\n}\n\n@keyframes wave-animation {\n 0% {\n transform: rotate(0deg);\n }\n 25% {\n transform: rotate(15deg);\n }\n 50% {\n transform: rotate(0deg);\n }\n}\n\n/* Second Line (Name) */\n.name {\n font-size: 2.8rem;\n font-weight: bold;\n color: #ffc107; /* Yellow */\n margin-bottom: 15px;\n line-height: 1; /* Adjust line height to fit in one row */\n white-space: nowrap; /* Prevent wrapping */\n}\n\n.typewriter {\n font-size: 1.5rem;\n font-weight: 500;\n color: #a9f0d1; /* Aqua green */\n margin-top: 10px;\n white-space: nowrap; /* Prevent typewriter text from wrapping */\n overflow: hidden; /* Ensure text stays within bounds */\n text-overflow: ellipsis; /* Add ellipsis if text overflows */\n}\n\n/* Optional Cursor Blink Styling */\n.cursor {\n animation: blink 0.7s step-end infinite;\n}\n\n@keyframes blink {\n from {\n border-color: transparent;\n }\n to {\n border-color: #a9f0d1;\n }\n}\n\n@media (max-width: 768px) {\n .greeting {\n font-size: 2rem; /* Smaller greeting font size for tablets and smaller devices */\n }\n\n .name {\n font-size: 2.4rem; /* Reduce font size for better fit */\n }\n\n .typewriter {\n font-size: 1.2rem; /* Adjust typewriter font size */\n }\n .home-container {\n padding: 15px; /* Add padding for smaller screens */\n }\n}\n\n@media (max-width: 480px) {\n .greeting {\n font-size: 1.8rem; /* Further reduce for mobile phones */\n }\n\n .name {\n font-size: 2rem;\n }\n\n .typewriter {\n font-size: 1rem;\n }\n .home-container {\n padding: 10px; /* Further reduce padding for smaller devices */\n }\n}\n","/* General About Section Styling */\n.about-section {\n padding: 2rem; /* 預設內距 */\n background-color: #121212; /* 深色背景 */\n color: #fff; /* 白色文字 */\n max-width: 100%; /* 確保容器寬度自適應 */\n}\n\n\n/* Section Heading */\n.about-section h2 {\n font-size: 2.5rem; /* 預設字體大小 */\n color: #ffc107;\n text-align: center;\n margin-bottom: 1.5rem;\n word-wrap: break-word; /* 確保換行 */\n overflow-wrap: break-word; /* 支援所有瀏覽器 */\n white-space: normal; /* 允許換行 */\n line-height: 1.2; /* 增加行高避免擁擠 */\n}\n\n/* About Intro */\n.about-intro {\n text-align: center;\n color: #eaeaea; /* Softer white for intro text */\n margin-bottom: 1.5rem;\n}\n\n.intro-box {\n padding: 1.5rem;\n background-color: #1a1a1a; /* Subtle background for intro box */\n border-radius: 10px; /* Rounded corners */\n color: #ffc107; /* Contrast for text inside the box */\n margin-bottom: 1.5rem;\n}\n\n/* Skill Tags */\n.skills {\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n gap: 10px; /* Space between skill tags */\n margin-bottom: 1.5rem;\n}\n\n.skill-tag {\n margin: 0.5rem;\n font-size: 1rem; /* Standard font size */\n background-color: #ffc107; /* Yellow background for skill tags */\n color: #121212; /* Text color for contrast */\n border-radius: 5px; /* Rounded corners for styling */\n padding: 6px 12px; /* Add padding for better appearance */\n font-weight: bold; /* Emphasize skill text */\n}\n\n/* Journey Tabs */\n.journey-tabs {\n display: flex;\n justify-content: space-around;\n align-items: center;\n margin: 20px 0;\n}\n\n.journey-tabs button {\n background-color: #ffc107;\n border: none;\n border-radius: 8px;\n padding: 10px 20px;\n color: #000;\n font-size: 1rem;\n font-weight: bold;\n display: flex;\n align-items: center;\n gap: 10px;\n cursor: pointer;\n transition: transform 0.2s ease;\n}\n\n.journey-tabs button.active {\n transform: scale(1.1);\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);\n}\n.journey-tabs button:hover {\n transform: scale(1.05);\n}\n\n.journey-tabs button svg {\n font-size: 1.5rem;\n}\n\n/* Timeline Container */\n.timeline-container {\n display: flex;\n flex-direction: column;\n gap: 1.5rem; /* Space between timeline items */\n background-color: #1a1a1a; /* Dark background for timeline */\n padding: 1.5rem;\n border-radius: 10px; /* Rounded corners */\n margin-top: 2rem; /* Add spacing from other sections */\n}\n\n.timeline-item {\n display: flex;\n flex-direction: column;\n align-items: center;\n text-align: center;\n}\n\n.timeline-item .circle {\n width: 15px;\n height: 15px;\n background-color: #ffc107; /* Yellow for timeline dot */\n border-radius: 50%;\n margin-bottom: 10px;\n}\n\n.timeline-item .content h4 {\n font-size: 1.2rem;\n color: #ffc107; /* Yellow color for headings */\n margin-bottom: 0.5rem;\n}\n\n.timeline-item span {\n font-size: 0.9rem;\n color: #eaeaea; /* Softer white for details */\n}\n\n/* Responsive Styles */\n\n/* For medium screens */\n@media (max-width: 768px) {\n .about-section {\n padding: 1rem;\n }\n\n .about-section h2 {\n font-size: 2.5rem; /* 預設字體大小 */\n color: #ffc107;\n text-align: center;\n margin-bottom: 1.5rem;\n word-wrap: break-word; /* 確保換行 */\n overflow-wrap: break-word; /* 支援所有瀏覽器 */\n white-space: normal; /* 允許換行 */\n line-height: 1.2; /* 增加行高避免擁擠 */\n }\n \n\n .skills {\n gap: 5px;\n }\n\n .skill-tag {\n font-size: 0.9rem;\n padding: 5px 10px;\n }\n\n .journey-tabs {\n gap: 10px;\n }\n\n .journey-tabs button {\n font-size: 1rem;\n padding: 8px 12px;\n max-width: 150px;\n height: auto;\n }\n\n .journey-tabs button svg {\n font-size: 1.5rem; /* Slightly larger icons for tablets */\n }\n\n .timeline-container {\n padding: 1rem;\n gap: 1rem;\n }\n\n .timeline-item .content h4 {\n font-size: 1.1rem;\n }\n\n .timeline-item span {\n font-size: 0.8rem;\n }\n}\n\n/* For small screens */\n@media (max-width: 480px) {\n .about-section h2 {\n font-size: 2.5rem; /* 預設字體大小 */\n color: #ffc107;\n text-align: center;\n margin-bottom: 1.5rem;\n word-wrap: break-word; /* 確保換行 */\n overflow-wrap: break-word; /* 支援所有瀏覽器 */\n white-space: normal; /* 允許換行 */\n line-height: 1.5; /* 增加行高避免擁擠 */\n }\n \n\n .skills {\n flex-direction: column; /* Stack skill tags */\n gap: 5px;\n }\n\n .skill-tag {\n font-size: 0.8rem;\n padding: 4px 8px;\n }\n\n .journey-tabs {\n display: grid; /* Use grid layout for buttons */\n grid-template-columns: repeat(2, 1fr); /* Two equal columns for buttons */\n gap: 12px; /* Space between buttons */\n justify-content: center; /* Center the grid horizontally */\n align-items: center; /* Align buttons vertically */\n }\n\n .journey-tabs button {\n font-size: 1rem; /* Standard readable text size */\n width: 130px; /* Fixed button width */\n height: 50px; /* Fixed button height */\n display: flex; /* Align icon and text within the button */\n justify-content: center; /* Center align both icon and text */\n align-items: center; /* Vertically center icon and text */\n gap: 8px; /* Space between icon and text */\n text-align: center; /* Center align text */\n background-color: #ffc107; /* Button background color */\n border-radius: 8px; /* Rounded corners */\n border: none; /* Remove border */\n color: #000; /* Button text color */\n font-weight: bold; /* Bold text for emphasis */\n cursor: pointer; /* Pointer cursor on hover */\n transition: transform 0.2s ease;\n }\n\n .journey-tabs button:hover {\n transform: scale(1.05); /* Slight zoom effect on hover */\n }\n\n .journey-tabs button svg {\n font-size: 1.2rem; /* Icon size adjusted for proper scaling */\n }\n\n .journey-tabs button:nth-child(3) {\n grid-column: 1 / span 2; /* Make the third button span both columns */\n justify-self: center; /* Center align the third button horizontally */\n }\n\n .timeline-container {\n padding: 0.8rem;\n }\n\n .timeline-item .content h4 {\n font-size: 1rem;\n }\n\n .timeline-item span {\n font-size: 0.7rem;\n }\n}\n",".skills-title {\n text-align: center;\n font-size: 2.5rem;\n color: #ffc107;\n margin-bottom: 40px;\n }\n \n .skills-container {\n display: grid; /* 改為使用網格布局 */\n grid-template-columns: repeat(auto-fit, minmax(1000px, 1fr)); /* 自動適配區塊寬度 */\n gap: 20px; /* 增加區塊間距 */\n width: 100%; /* 確保填滿父容器 */\n padding: 20px; /* 增加內距讓區塊有呼吸空間 */\n box-sizing: border-box; /* 確保內距計入總寬度 */\n}\n \n .skills-category {\n background: #1e1e2f;\n padding: 20px;\n border-radius: 10px;\n box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);\n border-left: 5px solid;\n transition: transform 0.3s ease;\n }\n \n .category-header {\n display: flex;\n align-items: center;\n gap: 10px;\n margin-bottom: 20px;\n }\n \n .category-icon {\n font-size: 2rem;\n color: inherit;\n }\n \n .category-title {\n font-size: 1.8rem;\n color: #ffc107;\n margin-bottom: 10px;\n text-align: center;\n }\n \n .skills-list {\n display: flex;\n flex-direction: column;\n gap: 15px;\n }\n \n .skill-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 15px;\n }\n \n .skill-label {\n display: flex;\n align-items: center;\n gap: 10px;\n flex: 1;\n color: #ddd;\n font-weight: bold;\n }\n \n .progress-bar-container {\n flex: 3;\n background: #333;\n height: 10px;\n border-radius: 10px;\n overflow: hidden;\n box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);\n }\n \n .progress-bar {\n height: 100%;\n border-radius: 10px;\n }\n \n .skill-percentage {\n flex: 1;\n text-align: right;\n color: #ddd;\n font-weight: bold;\n }\n \n .skill-item:hover .progress-bar {\n transform: scale(1.02);\n transition: transform 0.3s ease;\n }\n \n /* Responsive Styles for Mobile Devices */\n@media (max-width: 768px) {\n .skills-container {\n gap: 20px;\n padding: 10px;\n }\n\n .skills-category {\n padding: 15px;\n border-left-width: 3px; /* Reduced border width for a cleaner look */\n }\n\n .category-title {\n font-size: 1.5rem;\n }\n\n .skill-item {\n flex-direction: row;\n align-items: center;\n gap: 10px;\n justify-content: space-between; /* Maintain consistent alignment */\n }\n\n .skill-label {\n font-size: 0.9rem; /* Adjust font size for smaller screens */\n }\n\n .progress-bar-container {\n height: 8px; /* Reduced height for better proportion */\n }\n\n .skill-percentage {\n text-align: left;\n margin-left: 10px; /* Added margin to align with the label */\n color: #ffc107; /* Adjusted color for better visibility */\n }\n}\n","/* Portfolio Container */\n#portfolio {\n padding: 30px 10px; /* Reduced padding for smaller devices */\n background: #0b1120;\n color: #f8f9fa;\n}\n\n/* Header Styling */\nh2 {\n text-align: center;\n font-size: 1.8rem; /* Adjust font size for mobile */\n color: #ffc107;\n margin-bottom: 15px;\n}\n\n/* Category Buttons */\n/* Category Buttons */\n.category-buttons {\n display: flex;\n flex-wrap: wrap; /* Allow buttons to wrap */\n justify-content: center;\n gap: 10px; /* Add spacing between buttons */\n margin-bottom: 20px;\n}\n\n.category-button {\n padding: 10px 18px; /* Slightly larger padding for better tap area */\n font-size: 1rem; /* Keep font size readable */\n background-color: #112240; /* Dark background for buttons */\n color: #fff; /* White text */\n border: 2px solid #ffc107; /* Add border for better visibility */\n border-radius: 20px; /* Rounded corners */\n cursor: pointer;\n transition: transform 0.2s, background-color 0.3s;\n}\n\n.category-button:hover {\n background-color: #ffc107; /* Bright yellow on hover */\n color: #121212; /* Dark text on hover */\n}\n\n.category-button.active {\n background-color: #ffae00; /* Highlight active button */\n color: #fff; /* White text for active button */\n transform: scale(1.1); /* Slight zoom to indicate focus */\n}\n\n/* Project Grid */\n/* Project Grid */\n.project-grid {\n display: grid;\n grid-template-columns: 1fr; /* Stacked layout for mobile */\n gap: 15px; /* Reduce spacing for mobile view */\n}\n\n/* Project Card */\n.project-card {\n width: 100%; /* Full width on mobile */\n background: #112240; /* Dark card background */\n border-radius: 10px;\n padding: 20px; /* Slightly larger padding for better readability */\n box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.3); /* Subtle shadow */\n transition: transform 0.2s, box-shadow 0.2s;\n}\n\n.project-card:hover {\n transform: translateY(-8px); /* Lift effect on hover */\n box-shadow: 0px 8px 16px rgba(255, 193, 7, 0.3); /* Highlight shadow */\n}\n\n\n/* Tags */\n.tags {\n margin-top: 15px; /* Add spacing above tags */\n display: flex;\n flex-wrap: wrap; /* Wrap tags for small screens */\n gap: 8px; /* Add spacing between tags */\n}\n\n.tag {\n background: #ffc107; /* Yellow background for tags */\n color: #121212; /* Dark text */\n padding: 6px 10px; /* Slightly larger padding for better visibility */\n border-radius: 6px; /* Rounded corners for tags */\n font-size: 0.9rem; /* Maintain readability */\n font-weight: bold; /* Emphasize tags */\n transition: transform 0.2s, background-color 0.3s;\n}\n\n.tag:hover {\n background: #ffdd57; /* Lighter yellow on hover */\n transform: scale(1.1); /* Slight zoom effect */\n}\n\n/* Filter Buttons Container */\n.filter-buttons {\n display: flex;\n justify-content: center;\n gap: 10px;\n margin-bottom: 20px;\n}\n\n/* Individual Filter Button Styles */\n.filter-buttons button {\n background-color: #ffc107; /* Bright yellow background */\n color: #121212; /* Dark text for contrast */\n font-size: 1rem; /* Adjust text size */\n padding: 10px 20px; /* Spacing inside the button */\n border: none;\n border-radius: 25px; /* Rounded corners */\n cursor: pointer;\n transition: transform 0.2s ease-in-out, background-color 0.3s ease-in-out;\n}\n\n/* Hover Effect */\n.filter-buttons button:hover {\n background-color: #ffdd57; /* Slightly lighter yellow */\n transform: scale(1.05); /* Slight zoom effect */\n}\n\n/* Active Button State */\n.filter-buttons button.active {\n background-color: #ffae00; /* Orange to highlight active button */\n color: #fff; /* White text for better contrast */\n}\n\n/* Responsive Adjustments */\n@media (max-width: 480px) {\n h2 {\n font-size: 1.4rem; /* Adjust font size for very small screens */\n }\n\n .category-button {\n padding: 8px 12px; /* Compact button size for mobile */\n font-size: 0.8rem; /* Smaller text */\n }\n\n .project-card {\n padding: 15px; /* Reduce padding for compact view */\n font-size: 0.9rem; /* Slightly smaller text size */\n }\n\n .tag {\n font-size: 0.7rem; /* Smaller tags for extra-small screens */\n padding: 4px 8px; /* Compact padding */\n }\n}\n",".resume-section {\n background: linear-gradient(135deg, #1e1e2f, #252542);\n color: #ffc107;\n text-align: center;\n padding: 2rem 1rem;\n min-height: 100vh;\n}\n\n.resume-section h2 {\n font-size: 2.5rem;\n margin-bottom: 1rem;\n}\n\n.resume-section p {\n font-size: 1.2rem;\n margin-bottom: 2rem;\n color: #fff;\n}\n\n.resume-category {\n margin: 2rem 0;\n text-align: left;\n}\n\n.resume-category h3 {\n font-size: 1.8rem;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n margin-bottom: 1rem;\n color: #ffc107;\n}\n\n.resume-card {\n background: #1e1e2f;\n padding: 1rem;\n border: 2px solid #ffc107;\n border-radius: 8px;\n margin-bottom: 1rem;\n}\n\n.resume-card h4 {\n font-size: 1.5rem;\n margin-bottom: 0.5rem;\n}\n\n.resume-card span {\n font-size: 1rem;\n color: #ccc;\n}\n\n.resume-card p {\n font-size: 1rem;\n color: #fff;\n}\n\n.skills-grid {\n display: flex;\n flex-wrap: wrap;\n gap: 1rem;\n justify-content: center;\n margin-top: 1rem;\n}\n\n.skills-grid span {\n background: #252542;\n color: #ffc107;\n padding: 0.5rem 1rem;\n border-radius: 5px;\n font-size: 1rem;\n transition: all 0.3s;\n}\n\n.skills-grid span:hover {\n background: #ffc107;\n color: #252542;\n transform: scale(1.1);\n}\n\n.download-resume {\n margin-top: 2rem;\n}\n\n.download-button {\n background: #ffc107;\n color: #252542;\n padding: 0.8rem 1.5rem;\n border-radius: 5px;\n font-size: 1.2rem;\n font-weight: bold;\n display: inline-flex;\n align-items: center;\n gap: 0.5rem;\n text-decoration: none;\n transition: all 0.3s;\n}\n\n.download-button:hover {\n background: #fff;\n color: #252542;\n transform: scale(1.05);\n}\n\n/* Responsive Adjustments for Medium Screens */\n@media (max-width: 768px) {\n .resume-section h2 {\n font-size: 2rem;\n }\n\n .resume-section p {\n font-size: 1rem;\n }\n\n .resume-card {\n padding: 0.8rem;\n }\n\n .resume-card h4 {\n font-size: 1.3rem;\n }\n\n .resume-card p, .resume-card span {\n font-size: 0.9rem;\n }\n\n .skills-grid span {\n font-size: 0.9rem;\n padding: 0.4rem 0.8rem;\n }\n\n .download-button {\n font-size: 1rem;\n padding: 0.6rem 1rem;\n }\n}\n\n/* Responsive Adjustments for Small Screens */\n@media (max-width: 480px) {\n .resume-section h2 {\n font-size: 1.8rem;\n }\n\n .resume-card {\n padding: 0.6rem;\n }\n\n .resume-card h4 {\n font-size: 1.2rem;\n }\n\n .resume-card p, .resume-card span {\n font-size: 0.8rem;\n }\n\n .skills-grid span {\n font-size: 0.8rem;\n padding: 0.3rem 0.6rem;\n }\n\n .download-button {\n font-size: 0.9rem;\n padding: 0.5rem 0.8rem;\n }\n}\n",".contact-section {\n background: linear-gradient(135deg, #1e1e2f, #252542);\n color: #ffc107;\n padding: 2rem;\n text-align: center;\n min-height: 100vh;\n }\n \n .contact-section h2 {\n font-size: 2.5rem;\n margin-bottom: 1rem;\n }\n \n .contact-section p {\n font-size: 1.2rem;\n margin-bottom: 2rem;\n color: #fff;\n }\n \n .contact-form {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 1rem;\n margin-bottom: 2rem;\n }\n \n .form-input, .form-textarea {\n width: 80%;\n max-width: 500px;\n padding: 1rem;\n border: 2px solid #ffc107;\n border-radius: 5px;\n background: #1e1e2f;\n color: #fff;\n font-size: 1rem;\n outline: none;\n transition: 0.3s;\n }\n \n .form-input:focus, .form-textarea:focus {\n border-color: #fff;\n background: #252542;\n }\n \n .form-textarea {\n height: 150px;\n resize: none;\n }\n \n .send-button {\n background: #ffc107;\n color: #252542;\n padding: 0.8rem 1.5rem;\n border: none;\n border-radius: 5px;\n font-size: 1.2rem;\n font-weight: bold;\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n transition: all 0.3s;\n }\n \n .send-button:hover {\n background: #fff;\n color: #252542;\n transform: scale(1.05);\n }\n \n .contact-info {\n color: #fff;\n margin-top: 2rem;\n text-align: center; /* Ensures the text is centered */\n }\n \n .contact-info h3 {\n font-size: 1.5rem;\n margin-bottom: 1rem;\n }\n \n .contact-link {\n display: flex;\n align-items: center;\n gap: 0.5rem; /* Adds spacing between the icon and text */\n justify-content: center; /* Ensures everything is centered horizontally */\n font-size: 1.1rem;\n color: #ffc107;\n text-decoration: none;\n transition: color 0.3s;\n }\n \n .contact-link:hover {\n color: #fff;\n }\n \n .contact-info p {\n font-size: 1rem;\n }\n \n .connect-with-me {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n margin-bottom: 2rem; /* Add spacing between the section and Location */\n }\n \n .connect-icons {\n display: flex;\n flex-direction: column;\n align-items: center; /* Center align items within the container */\n justify-content: center; /* Center align vertically */\n gap: 0.5rem; /* Adds spacing between items */\n }\n ","/* Section Container */\n.section-container {\n margin: 40px auto;\n padding: 20px;\n max-width: 1200px; /* Centralize the content */\n text-align: left;\n}\n\n.section-container .content-header h2 {\n font-size: 32px;\n}\n\n.section-container .content-header p {\n font-size: 22px;\n}\n\n/* Header Styling */\n.content-header {\n margin-bottom: 20px;\n}\n\n.content-header h2 {\n font-size: 32px; /* 可以調整此字型大小以適配較小螢幕 */\n margin-bottom: 15px;\n color: #ffc107;\n font-weight: bold;\n text-align: center;\n word-wrap: break-word; /* 確保長文字自動換行 */\n overflow-wrap: break-word; /* 支援所有瀏覽器的文字換行 */\n white-space: normal; /* 禁止文字一行顯示,允許換行 */\n line-height: 1.9; /* 調整行高以防止文字擁擠 */\n}\n\n.content-header p {\n font-size: 20px;\n line-height: 1.8;\n color: #eaeaea;\n margin-bottom: 1em;\n text-align: justify; /* Align text for better readability */\n}\n\n/* Main Image Section */\n.main-image-container {\n text-align: center;\n margin: 20px 0;\n}\n\n.image-video-container {\n display: flex; /* Arrange items in a row */\n align-items: center; /* Align items vertically */\n justify-content: space-between; /* Add space between image and video */\n gap: 20px; /* Space between the image and video */\n margin: 20px 0; /* Add space above and below */\n}\n\n.image-container-left {\n flex: 1; /* Allow the image to take up equal space */\n display: flex;\n justify-content: center; /* Center the image horizontally */\n}\n\n.image-container {\n display: flex;\n justify-content: center; /* Center the image horizontally */\n margin: 20px 0; /* Add some spacing */\n}\n\n.single-image {\n max-width: 100%; /* Ensure the image scales to fit its container */\n height: auto; /* Maintain the aspect ratio */\n border-radius: 10px; /* Optional: add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: add a shadow effect */\n}\n\n.main-image {\n width: 100%;\n max-width: 400px;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n margin: 0 auto;\n}\n\n.main-image:hover {\n transform: scale(1.05);\n}\n\n/* Gallery Section */\n.gallery-container {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 20px;\n margin-top: 20px;\n}\n\n.gallery-image {\n width: 100%;\n max-height: 250px;\n object-fit: cover;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n transition: transform 0.3s;\n}\n\n.gallery-image:hover {\n transform: scale(1.05);\n}\n\n/* Responsive Iframe */\n.responsive-iframe {\n width: 100%;\n max-width: 48%; /* Side-by-side on desktop */\n aspect-ratio: 16 / 9;\n border: none;\n}\n\n/* GIF Container */\n.gif-container {\n display: flex;\n flex-wrap: wrap;\n justify-content: center; /* Ensure proper alignment on all screens */\n gap: 10px;\n margin-bottom: 20px;\n}\n\n.gif {\n width: 48%; /* Consistent width */\n border-radius: 5px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n}\n\n.gif:hover {\n transform: scale(1.05);\n}\n\n/* Video Container */\n.video-image-container {\n display: flex; /* Use flexbox for side-by-side layout */\n justify-content: space-between; /* Evenly space video and image */\n align-items: center; /* Vertically align video and image */\n gap: 20px; /* Add space between video and image */\n margin: 20px 0; /* Add space above and below */\n}\n\n/* Video container */\n.video-container-right {\n flex: 1; /* Allow the video to take up equal space */\n display: flex;\n justify-content: center; /* Center the video horizontally */\n}\n\n.video-image-container-left {\n display: flex; /* Flexbox for alignment */\n justify-content: flex-start; /* Align to the left */\n align-items: center; /* Center vertically */\n gap: 20px; /* Space between video and image */\n margin: 20px 0; /* Add spacing above and below */\n}\n\n.video-image-container-left iframe {\n width: 60%; /* Increase video size */\n aspect-ratio: 16 / 9; /* Maintain the aspect ratio */\n max-width: 800px; /* Ensure it doesn’t exceed container width */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n.video-image-container-left img {\n width: 48%; /* Equal size for both video and image */\n aspect-ratio: 16 / 9; /* Maintain aspect ratio */\n max-width: 800px; /* Prevent elements from being too large */\n border-radius: 10px; /* Optional: Rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n.amcl-image {\n width: 100%; /* Image takes full width of its container */\n max-width: 500px; /* Limit the maximum size */\n aspect-ratio: 16 / 9; /* Maintain aspect ratio */\n border-radius: 10px; /* Rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Add shadow */\n transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth hover transition */\n}\n\n.amcl-image:hover {\n transform: scale(1.05); /* Slightly enlarge the image on hover */\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.7); /* Stronger shadow on hover */\n}\n\n.video-container-center {\n display: flex; /* Flexbox for alignment */\n justify-content: center; /* Center horizontally */\n align-items: center; /* Center vertically */\n margin: 20px auto; /* Add spacing */\n}\n\n.video-container-center iframe {\n width: 80%; /* Increase video size */\n aspect-ratio: 16 / 9; /* Maintain the 16:9 aspect ratio */\n max-width: 1000px; /* Maximum width for larger screens */\n border-radius: 10px; /* Optional: Rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n.image-container-above {\n display: flex; /* Flexbox for alignment */\n justify-content: center; /* Center the image horizontally */\n margin-bottom: 20px; /* Add spacing below the image */\n}\n\n.image-container-above img {\n width: 80%; /* Set image width */\n max-width: 800px; /* Prevent it from being too large */\n aspect-ratio: auto; /* Maintain the image's aspect ratio */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n.video-iframe {\n width: 100%; /* Video takes full width of its container */\n max-width: 500px; /* Limit the maximum size */\n aspect-ratio: 16 / 9; /* Maintain aspect ratio */\n border-radius: 10px; /* Rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Add shadow */\n transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth hover transition */\n}\n\n.video-iframe:hover {\n transform: scale(1.05); /* Slightly enlarge the video on hover */\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.7); /* Stronger shadow on hover */\n}\n\n.video-image-container iframe,\n.video-image-container img {\n width: 48%; /* Same width for both video and image */\n aspect-ratio: 16 / 9; /* Maintain consistent aspect ratio */\n max-width: 800px; /* Prevent elements from being too large */\n border-radius: 10px; /* Optional: Rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n.video-container iframe {\n width: 80%; /* Use 80% of the container width for better centering */\n aspect-ratio: 16 / 9; /* Maintain the aspect ratio */\n max-width: 1200px; /* Prevent videos from being too wide */\n margin: 20px auto; /* Center the video with spacing */\n display: block;\n border-radius: 10px; /* Add slight rounding for a polished look */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add a shadow */\n}\n\n.video-container iframe,\n.video-container iframe {\n width: 60%; /* Adjust width for consistent size */\n aspect-ratio: 16 / 9; /* Maintain the 16:9 ratio */\n max-width: 800px; /* Prevent video from being too large */\n margin: 0 auto; /* Center horizontally */\n display: block; /* Ensure block display for centering */\n transition: transform 0.3s ease, box-shadow 0.3s ease; \n}\n\n.video-container iframe:hover,\n.videos-container iframe:hover {\n transform: scale(1.05);\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.7);\n transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.video-container-center iframe {\n transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth transition */\n}\n\n.video-container-center iframe:hover {\n transform: scale(1.05); /* Slightly enlarge the video */\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.7); /* Stronger shadow on hover */\n}\n\n.video-container {\n text-align: center; /* Center the container content */\n margin-top: 20px; /* Add space above the video */\n}\n\n.videos-container iframe {\n width: 48%; /* Make each video take up 48% of the container width */\n aspect-ratio: 16 / 9; /* Maintain the 16:9 aspect ratio */\n max-width: 600px; /* Limit the width of each video */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n.videos-container iframe:hover {\n transform: scale(1.05); /* Slightly enlarge the video on hover */\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.7); /* Stronger shadow effect on hover */\n}\n\n/* Center the video for \"How about make it autonomously?\" */\n.video-section-center {\n display: flex; /* Flexbox for alignment */\n flex-direction: column; /* Stack subtitle and video vertically */\n justify-content: center; /* Center horizontally */\n align-items: center; /* Center vertically */\n margin: 20px auto; /* Add spacing */\n text-align: center; /* Center align the text */\n}\n.video-section-center iframe {\n width: 80%; /* Increase width to make the video larger */\n aspect-ratio: 16 / 9; /* Maintain the 16:9 aspect ratio */\n max-width: 1000px; /* Maximum width for larger screens */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n margin: 0 auto; /* Center horizontally */\n display: block; /* Ensure block-level display */\n}\n\n.videos-container {\n display: flex; /* Arrange videos in a row */\n justify-content: space-between; /* Space out the videos evenly */\n align-items: center; /* Vertically align videos */\n gap: 10px; /* Add space between videos */\n flex-wrap: nowrap; /* Prevent videos from wrapping */\n margin-top: 20px; /* Add space above the container */\n}\n\n.videos-container iframe {\n width: 48%; /* Each video takes 48% of the container width */\n aspect-ratio: 16 / 9; /* Maintain the 16:9 aspect ratio */\n max-width: 600px; /* Limit the width of each video */\n border-radius: 10px; /* Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Add shadow effect */\n transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n/* Subtitle Container */\n.subtitle-container {\n text-align: center;\n margin: 20px 0;\n}\n\n.subtitle-container h3 {\n font-size: 1.3rem !important; /* Reduced size */\n color: #ffcc00;\n margin-bottom: 15px;\n}\n\n/* Responsive Adjustments */\n@media (max-width: 768px) {\n .content-header h2 {\n font-size: 24px !important;\n text-align: center;\n word-wrap: break-word;\n overflow-wrap: break-word;\n white-space: normal;\n }\n\n .section-container .content-header h2 {\n font-size: 24px !important;\n text-align: center;\n }\n\n .section-container .content-header p {\n font-size: 18px !important;\n text-align: left;\n }\n\n .content-header p {\n text-align: left; /* Change from justify to left-align */\n font-size: 16px;\n line-height: 1.6;\n }\n\n .gallery-container {\n grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));\n }\n\n .gif {\n width: 90%; /* Reduced width for smaller screens */\n margin: 0 auto; /* Center align */\n }\n\n .responsive-iframe {\n max-width: 100%;\n height: auto; /* Adjust height dynamically */\n margin-bottom: 15px;\n }\n\n .subtitle-container h3 {\n font-size: 1.2rem;\n }\n\n .videos-container {\n justify-content: space-evenly; \n flex-wrap: nowrap; /* Ensure side-by-side layout persists */\n }\n\n .videos-container iframe {\n width: 45%; /* Adjust the width to fit smaller screens */\n max-width: 45%; \n }\n\n .section-container {\n padding: 10px;\n }\n}\n\n@media (max-width: 480px) {\n .content-header h2 {\n font-size: 24px !important;\n text-align: center;\n word-wrap: break-word;\n overflow-wrap: break-word;\n white-space: normal;\n }\n\n .content-header p {\n text-align: match-parent; /* Ensure consistent alignment */\n font-size: 14px;\n line-height: 1.5;\n }\n\n .gif-container {\n flex-direction: column; /* Stack GIFs vertically */\n align-items: center;\n gap: 15px;\n }\n\n .gif {\n width: 100%; /* Full width for very small screens */\n max-width: 350px;\n }\n\n .video-container iframe {\n width: 100%; /* Full width for phones */\n height: 250px; /* Adjust height for smaller screens */\n }\n\n .videos-container {\n flex-wrap: nowrap; /* Keep videos side by side */\n justify-content: space-evenly;\n gap: 5px; /* Adjust spacing for very small screens */\n }\n\n .videos-container iframe {\n width: 45%; /* Reduce width further for small devices */\n max-width: 45%; /* Ensure consistent size */\n }\n .subtitle-container h3 {\n font-size: 1rem;\n }\n\n .section-container {\n padding: 5px;\n }\n}\n","/* Section Container */\n.section-container {\n margin: 40px auto;\n padding: 20px;\n max-width: 1200px; /* Centralize the content */\n text-align: left;\n}\n\n.section-container .content-header h2 {\n font-size: 32px;\n}\n\n.section-container .content-header p {\n font-size: 22px;\n}\n\n/* Header Styling */\n.content-header {\n margin-bottom: 20px;\n}\n\n.content-header h2 {\n font-size: 32px; /* 可以調整此字型大小以適配較小螢幕 */\n margin-bottom: 15px;\n color: #ffc107;\n font-weight: bold;\n text-align: center;\n word-wrap: break-word; /* 確保長文字自動換行 */\n overflow-wrap: break-word; /* 支援所有瀏覽器的文字換行 */\n white-space: normal; /* 禁止文字一行顯示,允許換行 */\n line-height: 1.9; /* 調整行高以防止文字擁擠 */\n}\n\n.content-header p {\n font-size: 20px;\n line-height: 1.8;\n color: #eaeaea;\n margin-bottom: 1em;\n text-align: justify; /* Align text for better readability */\n}\n\n/* Main Image Section */\n.main-image-container {\n text-align: center;\n margin: 20px 0;\n}\n\n.image-container {\n display: flex;\n justify-content: center; /* Center the image horizontally */\n margin: 20px 0; /* Add some spacing */\n}\n\n.single-image {\n max-width: 100%; /* Ensure the image scales to fit its container */\n height: auto; /* Maintain the aspect ratio */\n border-radius: 10px; /* Optional: add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: add a shadow effect */\n}\n\n.main-image {\n width: 100%;\n max-width: 400px;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n margin: 0 auto;\n}\n\n.main-image:hover {\n transform: scale(1.05);\n}\n\n/* Gallery Section */\n.gallery-container {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 20px;\n margin-top: 20px;\n}\n\n.gallery-image {\n width: 100%;\n max-height: 250px;\n object-fit: cover;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n transition: transform 0.3s;\n}\n\n.gallery-image:hover {\n transform: scale(1.05);\n}\n\n/* Responsive Iframe */\n.responsive-iframe {\n width: 100%;\n max-width: 48%; /* Side-by-side on desktop */\n aspect-ratio: 16 / 9;\n border: none;\n}\n\n/* GIF Container */\n.gif-container {\n display: flex;\n flex-wrap: wrap;\n justify-content: center; /* Ensure proper alignment on all screens */\n gap: 10px;\n margin-bottom: 20px;\n}\n\n.gif {\n width: 48%; /* Consistent width */\n border-radius: 5px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n}\n\n.gif:hover {\n transform: scale(1.05);\n}\n\n/* Video Container */\n.video-container iframe {\n width: 80%; /* Use 80% of the container width for better centering */\n aspect-ratio: 16 / 9; /* Maintain the aspect ratio */\n max-width: 1200px; /* Prevent videos from being too wide */\n margin: 20px auto; /* Center the video with spacing */\n display: block;\n border-radius: 10px; /* Add slight rounding for a polished look */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add a shadow */\n}\n\n.videos-container iframe {\n width: 48%; /* Each video takes 48% of the container width */\n aspect-ratio: 16 / 9; /* Maintain a 16:9 aspect ratio */\n max-width: 600px; /* Limit maximum width for consistency */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add a shadow */\n}\n\n.videos-container {\n display: flex; /* Align videos side by side */\n justify-content: space-around; /* Space out the videos evenly */\n align-items: center; /* Align videos vertically */\n gap: 20px; /* Add space between the videos */\n flex-wrap: nowrap; /* Prevent wrapping to the next line */\n margin-top: 20px; /* Add spacing above the videos */\n}\n\n/* Subtitle Container */\n.subtitle-container {\n text-align: center;\n margin: 20px 0;\n}\n\n.subtitle-container h3 {\n font-size: 1.3rem !important; /* Reduced size */\n color: #ffcc00;\n margin-bottom: 15px;\n}\n\n/* Responsive Adjustments */\n@media (max-width: 768px) {\n .section-container .content-header h2 {\n font-size: 24px !important;\n text-align: center;\n }\n\n .section-container .content-header p {\n font-size: 18px !important;\n text-align: left;\n }\n\n .gallery-container {\n grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));\n }\n\n .gif {\n width: 90%; /* Reduced width for smaller screens */\n margin: 0 auto; /* Center align */\n }\n\n .responsive-iframe {\n max-width: 100%;\n height: auto; /* Adjust height dynamically */\n margin-bottom: 15px;\n }\n\n .subtitle-container h3 {\n font-size: 1.2rem;\n }\n\n .videos-container {\n flex-wrap: wrap; /* Allow videos to stack vertically */\n flex-direction: column; /* Stack videos top to bottom */\n align-items: center; /* Center the videos */\n }\n\n .videos-container iframe {\n width: 90%; /* Use 90% of the container width for better spacing */\n max-width: 100%; /* Ensure it doesn’t exceed the container */\n margin-bottom: 20px; /* Add spacing between the videos */\n }\n\n .section-container {\n padding: 10px;\n }\n}\n\n@media (max-width: 480px) {\n .content-header h2 {\n font-size: 18px;\n text-align: center;\n }\n\n .content-header p {\n text-align: match-parent; /* Ensure consistent alignment */\n font-size: 14px;\n line-height: 1.5;\n }\n\n .gif-container {\n flex-direction: column; /* Stack GIFs vertically */\n align-items: center;\n gap: 15px;\n }\n\n .gif {\n width: 100%; /* Full width for very small screens */\n max-width: 350px;\n }\n\n .video-container iframe {\n width: 100%; /* Full width for phones */\n height: 250px; /* Adjust height for smaller screens */\n }\n\n .subtitle-container h3 {\n font-size: 1rem;\n }\n\n .section-container {\n padding: 5px;\n }\n}\n","/* Section Container */\n.section-container {\n display: flex;\n flex-direction: column;\n align-items: center; /* Horizontally center */\n justify-content: center; /* Vertically center */\n margin: 0 auto;\n}\n\n.section-container .content-header h2 {\n font-size: 34px;\n}\n\n.section-container .content-header p {\n font-size: 22px;\n}\n\n/* Header Styling */\n.content-header {\n margin-bottom: 20px;\n}\n\n.content-header h2 {\n font-size: 32px;\n margin-bottom: 15px;\n color: #ffc107;\n font-weight: bold;\n text-align: center;\n}\n\n.content-header p {\n font-size: 20px;\n line-height: 1.8;\n color: #eaeaea;\n margin-bottom: 1em;\n text-align: justify; /* Align text for better readability */\n}\n\n/* Main Image Section */\n.main-image-container {\n text-align: center;\n margin: 20px 0;\n}\n\n.image-container {\n display: flex;\n justify-content: center; /* Center the image horizontally */\n margin: 20px 0; /* Add some spacing */\n}\n\n.single-image {\n max-width: 100%; /* Ensure the image scales to fit its container */\n height: auto; /* Maintain the aspect ratio */\n border-radius: 10px; /* Optional: add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: add a shadow effect */\n}\n\n.main-image {\n width: 100%;\n max-width: 400px;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n margin: 0 auto;\n}\n\n.main-image:hover {\n transform: scale(1.05);\n}\n\n/* Gallery Section */\n.gallery-container {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 20px;\n margin-top: 20px;\n}\n\n.gallery-image {\n width: 100%;\n max-height: 250px;\n object-fit: cover;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n transition: transform 0.3s;\n}\n\n.gallery-image:hover {\n transform: scale(1.05);\n}\n\n/* Responsive Iframe */\n.responsive-iframe {\n width: 100%;\n max-width: 48%; /* Side-by-side on desktop */\n aspect-ratio: 16 / 9;\n border: none;\n}\n\n/* GIF Container */\n.gif-container {\n display: flex;\n justify-content: center; /* Horizontally center */\n gap: 20px; /* Add spacing between GIFs */\n margin: 20px 0;\n}\n\n.gif-below-container {\n display: flex; /* Flexbox for alignment */\n justify-content: center; /* Center the GIF horizontally */\n margin-top: 20px; /* Add space above the GIF */\n}\n\n.gif-below {\n width: 80%; /* Set the width of the GIF */\n max-width: 800px; /* Prevent it from being too large */\n aspect-ratio: auto; /* Maintain the aspect ratio */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add shadow */\n}\n\n\n/* Top GIF styling */\n.top-gif-container {\n text-align: center;\n margin: 20px 0;\n justify-content: center; \n}\n\n.top-gif {\n width: 80%;\n max-width: 800px;\n justify-content: center; \n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n}\n\n.image-description {\n text-align: center;\n font-size: 18px;\n color: #eaeaea;\n margin: 15px 0;\n}\n\n\n/* Two images side by side */\n.gif-container {\n display: flex;\n justify-content: center;\n gap: 20px;\n margin: 20px 0;\n}\n\n.gif {\n width: 45%; /* Adjust as needed */\n border-radius: 5px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n}\n\n/* Bottom GIF styling */\n.bottom-gif-container {\n text-align: center;\n margin: 30px 0;\n}\n\n.bottom-gif {\n width: 80%;\n max-width: 800px;\n border-radius: 10px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n}\n\n\n.gif {\n width: 48%; /* Consistent width */\n border-radius: 5px;\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);\n}\n\n.gif:hover {\n transform: scale(1.05);\n}\n\n/* Video Container */\n.video-container iframe {\n width: 80%; /* Use 80% of the container width for better centering */\n aspect-ratio: 16 / 9; /* Maintain the aspect ratio */\n max-width: 1200px; /* Prevent videos from being too wide */\n margin: 20px auto; /* Center the video with spacing */\n display: block;\n border-radius: 10px; /* Add slight rounding for a polished look */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add a shadow */\n}\n\n.videos-container iframe {\n width: 48%; /* Each video takes 48% of the container width */\n aspect-ratio: 16 / 9; /* Maintain a 16:9 aspect ratio */\n max-width: 600px; /* Limit maximum width for consistency */\n border-radius: 10px; /* Optional: Add rounded corners */\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5); /* Optional: Add a shadow */\n}\n\n.videos-container {\n display: flex; /* Align videos side by side */\n justify-content: space-around; /* Space out the videos evenly */\n align-items: center; /* Align videos vertically */\n gap: 20px; /* Add space between the videos */\n flex-wrap: nowrap; /* Prevent wrapping to the next line */\n margin-top: 20px; /* Add spacing above the videos */\n}\n\n/* Subtitle Container */\n.subtitle-container {\n text-align: center;\n margin: 20px 0;\n}\n\n.subtitle-container h3 {\n font-size: 1.3rem !important; /* Reduced size */\n color: #ffcc00;\n margin-bottom: 15px;\n}\n\n/* Responsive Adjustments */\n@media (max-width: 768px) {\n .section-container .content-header h2 {\n font-size: 24px !important;\n text-align: center;\n }\n\n .section-container .content-header p {\n font-size: 18px !important;\n text-align: left;\n }\n\n .gallery-container {\n grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));\n }\n\n .gif {\n width: 90%; /* Reduced width for smaller screens */\n margin: 0 auto; /* Center align */\n }\n\n .responsive-iframe {\n max-width: 100%;\n height: auto; /* Adjust height dynamically */\n margin-bottom: 15px;\n }\n\n .subtitle-container h3 {\n font-size: 1.2rem;\n }\n\n .videos-container {\n flex-wrap: wrap; /* Allow videos to stack vertically */\n flex-direction: column; /* Stack videos top to bottom */\n align-items: center; /* Center the videos */\n }\n\n .videos-container iframe {\n width: 90%; /* Use 90% of the container width for better spacing */\n max-width: 100%; /* Ensure it doesn’t exceed the container */\n margin-bottom: 20px; /* Add spacing between the videos */\n }\n\n .section-container {\n padding: 10px;\n }\n}\n\n@media (max-width: 480px) {\n .section-container .content-header h2 {\n font-size: 24px !important;\n text-align: center;\n }\n\n .section-container .content-header p {\n font-size: 18px !important;\n text-align: left;\n }\n \n .gif-container {\n flex-direction: column; /* Stack GIFs vertically */\n align-items: center;\n gap: 15px;\n }\n\n .gif {\n width: 100%; /* Full width for very small screens */\n max-width: 350px;\n }\n\n .video-container iframe {\n width: 100%; /* Full width for phones */\n height: 250px; /* Adjust height for smaller screens */\n }\n\n .subtitle-container h3 {\n font-size: 1rem;\n }\n\n .section-container {\n padding: 5px;\n }\n}\n","body {\n margin: 0;\n padding: 0;\n background-color: #111;\n min-height: 100vh; /* Allow content to exceed viewport height */\n overflow-y: auto; /* Enable scrolling for overflowing content */\n}\n\nhtml {\n height: auto; /* Allow flexible height */\n}\n\n.content-wrapper {\n flex: 1;\n display: flex;\n flex-direction: column;\n overflow: visible; /* Allow overflowing content */\n padding: 20px; /* Consistent padding around content */\n }\n \n .section-container {\n flex: 1;\n display: flex;\n flex-direction: column;\n padding: 20px; /* Consistent padding */\n min-height: calc(100vh - 80px); /* Adjust for navbar height (replace 80px with your navbar height) */\n overflow-y: auto; /* Allow scrolling if content exceeds viewport height */\n overflow-x: hidden; /* Prevent horizontal scrolling */\n box-sizing: border-box; /* Ensure padding doesn't add extra width */\n }\n "],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/main.9d1877c9.js b/static/js/main.f5b29c60.js similarity index 99% rename from static/js/main.9d1877c9.js rename to static/js/main.f5b29c60.js index 4f9fa04ab..aa834750a 100644 --- a/static/js/main.9d1877c9.js +++ b/static/js/main.f5b29c60.js @@ -1,3 +1,3 @@ -/*! For license information please see main.9d1877c9.js.LICENSE.txt */ -(()=>{"use strict";var e={175:(e,t)=>{const n=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,r=/^[\u0021-\u003A\u003C-\u007E]*$/,i=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,o=/^[\u0020-\u003A\u003D-\u007E]*$/,a=Object.prototype.toString,s=(()=>{const e=function(){};return e.prototype=Object.create(null),e})();function l(e,t,n){do{const n=e.charCodeAt(t);if(32!==n&&9!==n)return t}while(++tn;){const n=e.charCodeAt(--t);if(32!==n&&9!==n)return t+1}return n}function c(e){if(-1===e.indexOf("%"))return e;try{return decodeURIComponent(e)}catch(t){return e}}},730:(e,t,n)=>{var r=n(43),i=n(853);function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n