:root{--portfolio-bg: #f4f7fc;--portfolio-bg-alt: #ffffff;--portfolio-text-color: #333a4d;--portfolio-text-secondary: #5b647c;--portfolio-primary-accent: #6d5dfc;--portfolio-secondary-accent: #007bff;--portfolio-border-color: #e0e5ec;--portfolio-shadow-light: rgba(0, 0, 0, .05);--portfolio-shadow-strong: rgba(0, 0, 0, .1);--portfolio-header-bg: rgba(255, 255, 255, .85);--portfolio-code-bg: #eef2f7;--portfolio-highlight-name: var(--portfolio-primary-accent);--portfolio-svg-art-grad-start: var(--portfolio-primary-accent);--portfolio-svg-art-grad-end: var(--portfolio-secondary-accent);--portfolio-svg-art-grad-start-alt: #FF9A8B;--portfolio-svg-art-grad-end-alt: #FF6A88;--portfolio-svg-art-line: var(--portfolio-text-secondary);--portfolio-svg-art-shape-accent: var(--portfolio-primary-accent);--portfolio-svg-art-gridline: var(--portfolio-border-color);--portfolio-svg-art-bg: var(--portfolio-code-bg);--auth-bg-color: #eef2f7;--auth-primary-text-color: #333a4d;--auth-secondary-text-color: #5b647c;--auth-accent-color: #6d5dfc;--auth-accent-hover-color: #5847d8;--auth-input-bg: #e0e5ec;--auth-input-border-color: #c8d0e0;--auth-input-focus-border-color: var(--auth-accent-color);--auth-shadow-outset-light: rgba(255, 255, 255, .8);--auth-shadow-outset-dark: rgba(163, 177, 198, .5);--auth-shadow-inset-light: rgba(255, 255, 255, .7);--auth-shadow-inset-dark: rgba(163, 177, 198, .6);--auth-border-radius: 12px;--auth-button-text-color: #ffffff;--header-height: 70px;--ripple-origin-x: 50%;--ripple-origin-y: 50%}body[data-theme=dark]{--portfolio-bg: #1a1b26;--portfolio-bg-alt: #2a2c3a;--portfolio-text-color: #c9d1d9;--portfolio-text-secondary: #8b949e;--portfolio-primary-accent: #82aaff;--portfolio-secondary-accent: #58a6ff;--portfolio-border-color: #30363d;--portfolio-shadow-light: rgba(255, 255, 255, .05);--portfolio-shadow-strong: rgba(0, 0, 0, .2);--portfolio-header-bg: rgba(26, 27, 38, .85);--portfolio-code-bg: #222430;--portfolio-highlight-name: var(--portfolio-secondary-accent);--portfolio-svg-art-grad-start: var(--portfolio-primary-accent);--portfolio-svg-art-grad-end: var(--portfolio-secondary-accent);--portfolio-svg-art-grad-start-alt: #a87269;--portfolio-svg-art-grad-end-alt: #a14d5f;--portfolio-svg-art-line: var(--portfolio-text-secondary);--portfolio-svg-art-shape-accent: var(--portfolio-primary-accent);--portfolio-svg-art-gridline: var(--portfolio-border-color);--portfolio-svg-art-bg: var(--portfolio-code-bg);--auth-bg-color: #252836;--auth-primary-text-color: #c9d1d9;--auth-secondary-text-color: #8b949e;--auth-accent-color: #82aaff;--auth-accent-hover-color: #6c8fec;--auth-input-bg: #1f212c;--auth-input-border-color: #3a3f51;--auth-input-focus-border-color: var(--auth-accent-color);--auth-shadow-outset-light: rgba(50, 50, 93, .25);--auth-shadow-outset-dark: rgba(0, 0, 0, .3);--auth-shadow-inset-light: rgba(50, 50, 93, .2);--auth-shadow-inset-dark: rgba(0, 0, 0, .25);--auth-button-text-color: #1a1b26}body,html{margin:0;padding:0;font-family:Poppins,sans-serif;background-color:var(--portfolio-bg);color:var(--portfolio-text-color);line-height:1.7;font-size:16px;scroll-behavior:smooth;transition:background-color .3s ease,color .3s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh;display:flex;flex-direction:column}.landing-page-container{flex-grow:1;display:flex;flex-direction:column;position:relative;overflow-x:hidden}.portfolio-parallax-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none;overflow:hidden}.portfolio-parallax-layer{position:absolute;border-radius:30% 70% 70% 30%/30% 30% 70% 70%;opacity:.1;transition:transform .3s cubic-bezier(.25,.1,.25,1);will-change:transform}.p-layer-1{width:clamp(300px,40vw,600px);height:clamp(300px,40vw,600px);background:linear-gradient(135deg,var(--portfolio-primary-accent),var(--portfolio-secondary-accent));top:5%;left:5%;filter:blur(80px);animation:morph 15s infinite alternate ease-in-out}.p-layer-2{width:clamp(250px,30vw,500px);height:clamp(250px,30vw,500px);background:linear-gradient(135deg,#ff9a8b,#ff6a88);bottom:10%;right:10%;filter:blur(70px);opacity:.08;animation:morph 18s infinite alternate-reverse ease-in-out}.p-layer-3{width:clamp(200px,25vw,400px);height:clamp(200px,25vw,400px);background:linear-gradient(135deg,#43e97b,#38f9d7);top:40%;left:50%;transform:translate(-50%,-50%);filter:blur(60px);opacity:.06;animation:morph 20s infinite alternate ease-in-out}.p-layer-4{width:clamp(350px,45vw,650px);height:clamp(350px,45vw,650px);background:radial-gradient(circle,var(--portfolio-secondary-accent) 0%,transparent 70%);top:20%;right:5%;filter:blur(90px);opacity:.05;animation:morph 22s infinite alternate-reverse ease-in-out}@keyframes morph{0%{border-radius:30% 70% 70% 30%/30% 30% 70% 70%}50%{border-radius:50% 50% 30% 70%/40% 60% 30% 70%}to{border-radius:70% 30% 30% 70%/70% 30% 60% 40%}}.portfolio-header{position:fixed;top:0;left:0;width:100%;z-index:1000;transition:background-color .3s ease,padding .3s ease,box-shadow .3s ease;height:var(--header-height);display:flex;align-items:center}.portfolio-header.scrolled{background-color:var(--portfolio-header-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 2px 10px var(--portfolio-shadow-light)}.header-content-wrapper{width:100%;max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.6em;font-weight:700;color:var(--portfolio-primary-accent);text-decoration:none;letter-spacing:-.5px}.desktop-main-nav{display:none}.desktop-main-nav ul{list-style:none;padding:0;margin:0;display:flex;gap:25px}.desktop-main-nav a{text-decoration:none;color:var(--portfolio-text-secondary);font-weight:500;font-size:1em;padding:5px 0;position:relative;transition:color .2s ease}.desktop-main-nav a:after{content:"";position:absolute;bottom:-3px;left:0;width:0;height:2px;background-color:var(--portfolio-primary-accent);transition:width .3s ease}.desktop-main-nav li.active a,.desktop-main-nav a:hover{color:var(--portfolio-primary-accent)}.desktop-main-nav li.active a:after,.desktop-main-nav a:hover:after{width:100%}.header-actions{display:flex;align-items:center;gap:15px}.main-nav{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:990;display:none;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background-color:transparent;-webkit-tap-highlight-color:transparent}.main-nav.visible{display:flex}.nav-ripple-effect{position:absolute;width:100px;height:100px;background-color:var(--portfolio-bg-alt);border-radius:50%;top:var(--ripple-origin-y);left:var(--ripple-origin-x);transform:translate(-50%,-50%) scale(0);opacity:0;will-change:transform,opacity;pointer-events:none}.main-nav.animate-open .nav-ripple-effect{animation:ripple-open-anim .6s cubic-bezier(.25,.8,.25,1) forwards}.main-nav.is-fully-open .nav-ripple-effect{transform:translate(-50%,-50%) scale(35);opacity:1}.main-nav.animate-close .nav-ripple-effect{animation:ripple-close-anim .5s cubic-bezier(.75,0,.75,.25) forwards}@keyframes ripple-open-anim{0%{transform:translate(-50%,-50%) scale(0);opacity:.5}to{transform:translate(-50%,-50%) scale(35);opacity:1}}@keyframes ripple-close-anim{0%{transform:translate(-50%,-50%) scale(35);opacity:1}to{transform:translate(-50%,-50%) scale(0);opacity:0}}.main-nav ul,.main-nav .mobile-nav-actions{position:relative;z-index:1;list-style:none;padding:0;margin:0;display:flex;flex-direction:column;align-items:center;opacity:0;transform:translateY(20px);will-change:opacity,transform}.main-nav ul{gap:10px}.main-nav li{margin:0;width:auto;text-align:center}.main-nav a{text-decoration:none;color:var(--portfolio-text-secondary);font-weight:500;font-size:1.4em;padding:12px 20px;border-radius:8px;transition:color .2s ease,background-color .2s ease;display:block}.main-nav li.active a,.main-nav a:hover{color:var(--portfolio-primary-accent);background-color:#6d5dfc1a}.main-nav .mobile-nav-actions{margin-top:30px;padding-top:20px;border-top:1px solid var(--portfolio-border-color);width:auto;display:flex;justify-content:center}.main-nav.animate-open ul,.main-nav.animate-open .mobile-nav-actions{animation:menu-items-fade-in .4s ease-out .25s forwards}.main-nav.is-fully-open ul,.main-nav.is-fully-open .mobile-nav-actions{opacity:1;transform:translateY(0)}.main-nav.animate-close ul,.main-nav.animate-close .mobile-nav-actions{animation:menu-items-fade-out .2s ease-in forwards}@keyframes menu-items-fade-in{to{opacity:1;transform:translateY(0)}}@keyframes menu-items-fade-out{to{opacity:0;transform:translateY(20px)}}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;z-index:1001;width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;position:relative}.hamburger-lines-container{width:18px;height:12px;display:flex;flex-direction:column;justify-content:space-between;position:relative}.mobile-menu-toggle .line{display:block;width:100%;height:2px;background-color:var(--portfolio-text-color);border-radius:1px;transition:transform .3s ease-in-out,opacity .3s ease-in-out,background-color .3s ease-in-out;transform-origin:center center}.mobile-menu-toggle.is-active .line{background-color:var(--portfolio-primary-accent)}.mobile-menu-toggle.is-active .line-top{transform:translateY(5px) rotate(45deg)}.mobile-menu-toggle.is-active .line-middle{opacity:0;transform:scaleX(0)}.mobile-menu-toggle.is-active .line-bottom{transform:translateY(-5px) rotate(-45deg)}.theme-toggle{background:none;border:1px solid var(--portfolio-border-color);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--portfolio-text-secondary);transition:background-color .2s ease,color .2s ease,border-color .2s ease}.theme-toggle:hover{background-color:#6d5dfc1a;color:var(--portfolio-primary-accent);border-color:var(--portfolio-primary-accent)}.theme-toggle svg{transition:transform .3s ease}.theme-toggle:hover svg{transform:rotate(15deg)}.portfolio-main-content{flex-grow:1;padding-top:var(--header-height)}.portfolio-section{padding:80px 20px;max-width:1000px;margin:0 auto;position:relative}.section-title{font-size:2.8em;font-weight:700;color:var(--portfolio-text-color);margin-bottom:40px;text-align:center;position:relative;padding-bottom:15px}.section-title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0px;height:4px;background-color:var(--portfolio-primary-accent);border-radius:2px;transition:width .5s ease-out}.section-title.is-visible:after{width:60px;transition-delay:.3s}.scroll-fade-up{opacity:0;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out;will-change:opacity,transform}.scroll-fade-up.is-visible{opacity:1;transform:translateY(0)}.hero-section{min-height:calc(100vh - var(--header-height));display:flex;align-items:center;justify-content:center;text-align:center;padding-top:0}.hero-title{font-size:clamp(2.5em,6vw,4.5em);font-weight:800;color:var(--portfolio-text-color);margin-bottom:10px;line-height:1.2}.highlight-name{color:var(--portfolio-highlight-name)}.typed-text-container{display:inline-block;position:relative}.typed-char{display:inline-block;opacity:0;transform:scale(.95);animation:character-appear .2s ease-out forwards;min-width:.1ch}@keyframes character-appear{to{opacity:1;transform:scale(1)}}.cursor{display:inline-block;width:2px;height:1em;background-color:var(--portfolio-highlight-name);margin-left:3px;animation:blinking-cursor 1s infinite ease-in-out;vertical-align:text-bottom}@keyframes blinking-cursor{0%,to{opacity:1}50%{opacity:0}}.hero-subtitle{font-size:clamp(1.1em,2.5vw,1.5em);font-family:Roboto Mono,monospace;color:var(--portfolio-text-secondary);margin-bottom:25px}.hero-description{font-size:1.1em;color:var(--portfolio-text-secondary);margin-bottom:35px;max-width:600px;margin-left:auto;margin-right:auto}.hero-cta-buttons{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.cta-button{padding:12px 25px;border-radius:8px;font-weight:600;font-size:1em;text-decoration:none;cursor:pointer;transition:all .3s ease;border:2px solid transparent;display:inline-block}.primary-cta{background-color:var(--portfolio-primary-accent);color:#fff;box-shadow:0 4px 15px #6d5dfc4d}.primary-cta:hover{background-color:color-mix(in srgb,var(--portfolio-primary-accent) 90%,black);transform:translateY(-2px);box-shadow:0 6px 20px #6d5dfc66}.secondary-cta{background-color:transparent;color:var(--portfolio-primary-accent);border-color:var(--portfolio-primary-accent)}.secondary-cta:hover{background-color:#6d5dfc1a;color:color-mix(in srgb,var(--portfolio-primary-accent) 90%,black);border-color:color-mix(in srgb,var(--portfolio-primary-accent) 90%,black);transform:translateY(-2px)}.header-cta{padding:8px 18px;font-size:.9em}.about-content{display:flex;gap:40px;align-items:flex-start}.about-text{flex:2;font-size:1.05em;color:var(--portfolio-text-secondary)}.about-text p{margin-bottom:1.5em}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}.skill-card{background-color:var(--portfolio-bg-alt);padding:25px;border-radius:var(--auth-border-radius);box-shadow:0 5px 20px var(--portfolio-shadow-light);transition:transform .3s ease,box-shadow .3s ease;border:1px solid var(--portfolio-border-color)}.skill-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px var(--portfolio-shadow-strong)}.skill-card.is-visible:hover{transform:translateY(-5px)!important}.skill-card-icon-wrapper{transition:opacity .6s ease-out .2s,transform .6s ease-out .2s;opacity:0;transform:translateY(15px)}.skill-card-icon-wrapper.is-visible{opacity:1;transform:translateY(0)}.skill-card svg{width:40px;height:40px;fill:var(--portfolio-primary-accent);margin-bottom:15px}.skill-card-title{font-size:1.4em;font-weight:600;color:var(--portfolio-text-color);margin-bottom:15px}.skill-card ul{list-style:none;padding-left:0;margin:0}.skill-card li{color:var(--portfolio-text-secondary);margin-bottom:8px;font-size:.95em;position:relative;padding-left:20px}.skill-card li:before{content:"✓";position:absolute;left:0;color:var(--portfolio-secondary-accent);font-weight:700}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.project-card{background-color:var(--portfolio-bg-alt);border-radius:var(--auth-border-radius);overflow:hidden;box-shadow:0 5px 20px var(--portfolio-shadow-light);transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;border:1px solid var(--portfolio-border-color)}.project-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px var(--portfolio-shadow-strong)}.project-card.is-visible:hover{transform:translateY(-5px)!important}.project-card-image-placeholder{height:200px;background-color:var(--portfolio-code-bg);display:flex;align-items:center;justify-content:center;overflow:hidden}.project-card-art-svg{width:100%;height:100%;display:block}.project-card-art-svg .svg-art-bg{fill:var(--portfolio-svg-art-bg)}.project-card-art-svg .svg-art-grad-start{stop-color:var(--portfolio-svg-art-grad-start)}.project-card-art-svg .svg-art-grad-end{stop-color:var(--portfolio-svg-art-grad-end)}.project-card-art-svg .svg-art-grad-start-alt{stop-color:var(--portfolio-svg-art-grad-start-alt)}.project-card-art-svg .svg-art-grad-end-alt{stop-color:var(--portfolio-svg-art-grad-end-alt)}.project-card-art-svg .svg-art-line{stroke:var(--portfolio-svg-art-line)}.project-card-art-svg .svg-art-shape-accent{fill:var(--portfolio-svg-art-shape-accent)}.project-card-art-svg .svg-art-gridline{stroke:var(--portfolio-svg-art-gridline)}.project-card-title{font-size:1.3em;font-weight:600;color:var(--portfolio-text-color);margin:15px 20px 10px}.project-card-description{font-size:.9em;color:var(--portfolio-text-secondary);margin:0 20px 15px;flex-grow:1}.project-card-tech{padding:0 20px 15px;display:flex;flex-wrap:wrap;gap:8px}.tech-tag{background-color:var(--portfolio-code-bg);color:var(--portfolio-secondary-accent);padding:4px 10px;border-radius:5px;font-size:.75em;font-weight:500}.project-card-link{display:block;text-align:center;padding:10px 20px;background-color:var(--portfolio-primary-accent);color:#fff;text-decoration:none;font-weight:500;transition:background-color .2s ease}.project-card-link:hover{background-color:color-mix(in srgb,var(--portfolio-primary-accent) 90%,black)}.certificate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}.certificate-card{background-color:var(--portfolio-bg-alt);padding:20px;border-radius:var(--auth-border-radius);box-shadow:0 5px 20px var(--portfolio-shadow-light);border:1px solid var(--portfolio-border-color);transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;align-items:stretch;gap:0}.certificate-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px var(--portfolio-shadow-strong)}.certificate-card.is-visible:hover{transform:translateY(-5px)!important}.certificate-card-image{width:100%;height:180px;object-fit:contain;background-color:var(--portfolio-bg);border-radius:var(--auth-border-radius) var(--auth-border-radius) 0 0;margin:-20px -20px 15px;width:calc(100% + 40px);display:block;cursor:zoom-in;transition:opacity .2s ease}.certificate-card-image:hover{opacity:.9}.certificate-card-icon{color:var(--portfolio-primary-accent);flex-shrink:0;margin-top:2px}.certificate-card-icon svg{width:28px;height:28px}.certificate-card-content{flex-grow:1}.certificate-card-title{font-size:1.2em;font-weight:600;color:var(--portfolio-text-color);margin:0 0 2px;line-height:1.2}.certificate-card-issuer{font-size:.95em;color:var(--portfolio-text-secondary);margin-bottom:2px}.certificate-card-date{font-size:.85em;color:var(--portfolio-text-secondary);margin-bottom:5px}.lightbox-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:transparent;z-index:2000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;padding:20px}.lightbox-overlay.active{opacity:1;visibility:visible}.lightbox-content{max-width:90%;max-height:90%;position:relative;background-color:var(--portfolio-bg-alt);padding:40px;border-radius:20px;box-shadow:0 20px 50px #0003;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center}.lightbox-image{max-width:100%;max-height:75vh;display:block;object-fit:contain;border-radius:4px}.lightbox-close{position:absolute;top:15px;right:15px;width:32px;height:32px;background:var(--portfolio-code-bg);color:var(--portfolio-text-color);border-radius:50%;border:none;font-size:1.5em;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;line-height:1;z-index:10}.lightbox-close:hover{background-color:#e0443b;color:#fff;transform:rotate(90deg)}.certificate-card-link{font-size:.9em;color:var(--portfolio-primary-accent);text-decoration:none;font-weight:500;transition:color .2s ease}.certificate-card-link:hover{text-decoration:underline;color:color-mix(in srgb,var(--portfolio-primary-accent) 80%,black)}.contact-section{text-align:center}.contact-subtitle{font-size:1.1em;color:var(--portfolio-text-secondary);max-width:600px;margin:0 auto 30px}.contact-actions-wrapper{display:flex;flex-direction:column;align-items:center;gap:25px;margin-bottom:30px}.contact-actions-wrapper .cta-button.primary-cta{min-width:180px}.social-links-contact{display:flex;justify-content:center;gap:25px}.social-links-contact a{color:var(--portfolio-text-secondary);transition:color .2s ease,transform .2s ease}.social-links-contact a:hover{color:var(--portfolio-primary-accent);transform:scale(1.1)}.social-links-contact svg{width:30px;height:30px;fill:currentColor}.portfolio-footer{text-align:center;padding:30px 20px;border-top:1px solid var(--portfolio-border-color);background-color:var(--portfolio-bg-alt);margin-top:auto}.portfolio-footer p{margin:0;font-size:.9em;color:var(--portfolio-text-secondary)}.section-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;min-height:300px;text-align:center;color:var(--portfolio-text-secondary)}.spinner{border:4px solid var(--portfolio-border-color);border-top:4px solid var(--portfolio-primary-accent);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin-bottom:15px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.section-loader p{font-size:1.1em}@media(min-width:769px){.desktop-main-nav{display:flex;margin-left:auto;margin-right:20px}.mobile-menu-toggle,.main-nav{display:none!important}.contact-actions-wrapper{flex-direction:row;justify-content:center;gap:30px}}@media(max-width:992px){.section-title{font-size:2.4em}.hero-title{font-size:clamp(2.2em,5vw,3.8em)}.hero-subtitle{font-size:clamp(1em,2vw,1.3em)}.portfolio-section{padding:60px 20px}.certificate-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}@media(max-width:768px){body,html{font-size:15px}.desktop-main-nav{display:none}.mobile-menu-toggle{display:flex}.section-title{font-size:2em}.hero-title{font-size:clamp(2em,7vw,3em)}.hero-subtitle{font-size:clamp(.9em,3vw,1.1em)}.hero-description{font-size:1em}.about-content{flex-direction:column}.skills-grid,.projects-grid,.certificate-grid{grid-template-columns:1fr}.p-layer-1{filter:blur(60px);opacity:.08}.p-layer-2{filter:blur(50px);opacity:.06}.p-layer-3{filter:blur(40px);opacity:.04}.p-layer-4{display:none}.certificates-section{padding:40px 15px}.certificate-card{flex-direction:column;align-items:center;text-align:center}.certificate-card-icon{margin-bottom:10px}.header-content-wrapper .header-actions{margin-left:auto;order:2}.mobile-menu-toggle{order:3}.header-content-wrapper .logo{order:1}.hero-cta-buttons{gap:10px}.cta-button{padding:10px 20px;font-size:.95em}.main-nav a{font-size:1.3em}}.auth-body-wrapper .auth-parallax-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:hidden}.auth-body-wrapper .auth-parallax-layer{position:absolute;border-radius:50%;opacity:.1;transition:transform .4s cubic-bezier(.25,.1,.25,1);will-change:transform;background:var(--auth-accent-color);filter:blur(50px)}.auth-body-wrapper .auth-parallax-layer.layer-1{width:clamp(200px,30vw,400px);height:clamp(200px,30vw,400px);top:10%;left:15%;opacity:.15}.auth-body-wrapper .auth-parallax-layer.layer-2{width:clamp(150px,25vw,300px);height:clamp(150px,25vw,300px);bottom:15%;right:20%;opacity:.1}.auth-body-wrapper .auth-parallax-layer.layer-3{width:clamp(100px,20vw,250px);height:clamp(100px,20vw,250px);top:50%;left:50%;transform:translate(-50%,-50%);opacity:.08}.auth-container{padding:20px}.login-form-wrapper{background-color:var(--auth-bg-color);padding:35px 40px;border-radius:var(--auth-border-radius, 12px);box-shadow:-10px -10px 20px var(--auth-shadow-outset-light),10px 10px 20px var(--auth-shadow-outset-dark);position:relative;z-index:1;width:100%;max-width:420px;text-align:center;transition:background-color .3s ease,box-shadow .3s ease;animation:formSlideUpAuthHTML .5s cubic-bezier(.25,.46,.45,.94) .1s forwards;opacity:0;transform:translateY(20px)}@keyframes formSlideUpAuthHTML{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-form-wrapper .login-header{margin-bottom:30px}.login-form-wrapper .login-header h2{color:var(--auth-primary-text-color);font-size:1.8em;font-weight:600;margin:0 0 8px}.login-form-wrapper .login-header p{color:var(--auth-secondary-text-color);font-size:.95em;margin:0}.login-form-wrapper .login-form{display:flex;flex-direction:column;gap:20px}.login-form-wrapper .input-group{position:relative;display:flex;align-items:center}.login-form-wrapper .input-group .input-icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--auth-secondary-text-color);pointer-events:none;transition:color .2s ease}.login-form-wrapper .input-group input{width:100%;padding:14px 15px 14px 45px;background-color:var(--auth-input-bg);color:var(--auth-primary-text-color);border:1px solid var(--auth-input-border-color);border-radius:8px;font-size:1em;box-shadow:inset -3px -3px 6px var(--auth-shadow-inset-dark),inset 3px 3px 6px var(--auth-shadow-inset-light);transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.login-form-wrapper .input-group input::placeholder{color:var(--auth-secondary-text-color);opacity:.7}.login-form-wrapper .input-group input:focus{outline:none;border-color:var(--auth-input-focus-border-color);background-color:var(--auth-bg-color);box-shadow:inset -2px -2px 4px var(--auth-shadow-inset-dark),inset 2px 2px 4px var(--auth-shadow-inset-light),0 0 0 2px var(--auth-input-focus-border-color)}.login-form-wrapper .input-group input:focus~.input-icon{color:var(--auth-accent-color)}.login-form-wrapper .password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;padding:5px;cursor:pointer;color:var(--auth-secondary-text-color);display:flex;align-items:center;justify-content:center}.login-form-wrapper .password-toggle:hover,.login-form-wrapper .password-toggle:focus{color:var(--auth-accent-color)}.login-form-wrapper .password-toggle svg{width:20px;height:20px}.login-form-wrapper .password-toggle .hidden{display:none}.login-form-wrapper .options{display:flex;justify-content:space-between;align-items:center;margin:5px 0}.login-form-wrapper .remember-me{display:flex;align-items:center;font-size:.9em;color:var(--auth-secondary-text-color);cursor:pointer}.login-form-wrapper .remember-me input[type=checkbox]{margin-right:8px;width:16px;height:16px;accent-color:var(--auth-accent-color);background-color:var(--auth-input-bg);border:1px solid var(--auth-input-border-color);border-radius:4px;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;position:relative;box-shadow:inset -2px -2px 3px var(--auth-shadow-inset-dark),inset 2px 2px 3px var(--auth-shadow-inset-light)}.login-form-wrapper .remember-me input[type=checkbox]:checked{background-color:var(--auth-accent-color);border-color:var(--auth-accent-color);box-shadow:none}.login-form-wrapper .remember-me input[type=checkbox]:checked:before{content:"✔";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:12px;color:var(--auth-button-text-color)}body[data-theme=dark] :is(){color:var(--auth-bg-color)}.login-form-wrapper .forgot-password{font-size:.9em;color:var(--auth-secondary-text-color);text-decoration:none;transition:color .2s ease}.login-form-wrapper .forgot-password:hover{color:var(--auth-accent-color);text-decoration:underline}.login-form-wrapper .login-button.primary{width:100%;padding:14px 20px;background-color:var(--auth-accent-color);color:var(--auth-button-text-color);border:none;border-radius:8px;font-size:1.05em;font-weight:600;cursor:pointer;box-shadow:-5px -5px 12px var(--auth-shadow-outset-light),5px 5px 12px var(--auth-shadow-outset-dark);transition:all .2s ease-in-out;letter-spacing:.5px}.login-form-wrapper .login-button.primary:hover{background-color:var(--auth-accent-hover-color);box-shadow:-3px -3px 8px var(--auth-shadow-outset-light),3px 3px 8px var(--auth-shadow-outset-dark);transform:translateY(-1px)}.login-form-wrapper .login-button.primary:active{background-color:color-mix(in srgb,var(--auth-accent-hover-color) 90%,black);box-shadow:inset -4px -4px 8px var(--auth-shadow-inset-dark),inset 4px 4px 8px var(--auth-shadow-inset-light);transform:translateY(1px)}.login-form-wrapper .social-login{margin-top:25px}.login-form-wrapper .social-login-text{font-size:.9em;color:var(--auth-secondary-text-color);margin-bottom:15px;position:relative;display:flex;align-items:center;justify-content:center}.login-form-wrapper .social-login-text:before,.login-form-wrapper .social-login-text:after{content:"";flex-grow:1;height:1px;background-color:var(--auth-input-border-color);margin:0 10px}.login-form-wrapper .social-icons{display:flex;justify-content:center;gap:15px}.login-form-wrapper .social-button{background-color:var(--auth-bg-color);border:1px solid transparent;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--auth-primary-text-color);box-shadow:-4px -4px 8px var(--auth-shadow-outset-light),4px 4px 8px var(--auth-shadow-outset-dark);transition:all .2s ease-in-out}.login-form-wrapper .social-button svg{width:20px;height:20px}.login-form-wrapper .social-button:hover{box-shadow:-2px -2px 5px var(--auth-shadow-outset-light),2px 2px 5px var(--auth-shadow-outset-dark);color:var(--auth-accent-color);transform:translateY(-1px)}.login-form-wrapper .social-button:active{box-shadow:inset -2px -2px 5px var(--auth-shadow-inset-dark),inset 2px 2px 5px var(--auth-shadow-inset-light);transform:translateY(1px)}.login-form-wrapper .social-button.google:hover{color:#4285f4}.login-form-wrapper .social-button.facebook:hover{color:#1877f2}.login-form-wrapper .form-switch-link{margin-top:25px;font-size:.95em;color:var(--auth-secondary-text-color)}.login-form-wrapper .form-switch-link a{color:var(--auth-accent-color);font-weight:500;text-decoration:none;transition:color .2s ease}.login-form-wrapper .form-switch-link a:hover{text-decoration:underline;color:var(--auth-accent-hover-color)}.auth-container .close-auth-button{position:fixed;top:20px;left:20px;background:var(--auth-bg-color);color:var(--auth-primary-text-color);border:none;border-radius:8px;padding:10px 15px;font-size:.9em;font-weight:500;cursor:pointer;z-index:10;text-decoration:none;box-shadow:-4px -4px 8px var(--auth-shadow-outset-light),4px 4px 8px var(--auth-shadow-outset-dark);transition:all .2s ease}.auth-container .close-auth-button:hover{transform:translate(-2px);background-color:var(--auth-accent-color);color:var(--auth-button-text-color);box-shadow:-2px -2px 5px var(--auth-shadow-outset-light),2px 2px 5px var(--auth-shadow-outset-dark)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media(max-width:480px){.login-form-wrapper{padding:30px 20px;margin:0;max-width:100%}.login-form-wrapper .login-header h2{font-size:1.6em}.login-form-wrapper .input-group input{padding-top:12px;padding-bottom:12px}.login-form-wrapper .login-button.primary{padding:12px 18px;font-size:1em}.login-form-wrapper .social-icons{gap:12px}.login-form-wrapper .social-button{width:40px;height:40px}.auth-body-wrapper .auth-parallax-layer.layer-1{width:clamp(150px,40vw,250px);height:clamp(150px,40vw,250px)}.auth-body-wrapper .auth-parallax-layer.layer-2,.auth-body-wrapper .auth-parallax-layer.layer-3{display:none}.login-form-wrapper .options{flex-direction:column;align-items:flex-start;gap:10px}.auth-container .close-auth-button{padding:8px 12px;font-size:.85em;top:15px;left:15px}}
