:root{--bg-color:#fbfdf9;--primary-red:#ce2c2c;--primary-dark:#1e1e1e;--secondary-grey:#535252;--light-grey:#e8e8e8;--card-bg:#e8e8e859;--card-bg-hover:#e8e8e88c;--card-border:#ffffff73;--ripple-color:#5352520a;--header-bg:#fbfdf9d9;--logo-shadow-color:#ce2c2c59;--tooltip-border:#1e1e1e26;--font-sans:"Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"Space Mono", monospace;--transition-smooth:all .3s cubic-bezier(.25, .8, .25, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}[data-theme=dark]{--bg-color:#0e0f0e;--primary-red:#ff4d4d;--primary-dark:#fbfdf9;--secondary-grey:#a0a0a0;--light-grey:#2a2a2a;--card-bg:#1e1e1e73;--card-bg-hover:#2d2d2d8c;--card-border:#ffffff14;--ripple-color:#fbfdf908;--header-bg:#0e0f0ed9;--logo-shadow-color:#ff4a4a80;--tooltip-border:#ffffff26}*{box-sizing:border-box;margin:0;padding:0}::selection{background-color:var(--primary-red);color:var(--bg-color)}html,body{background-color:var(--bg-color);color:var(--primary-dark);font-family:var(--font-sans);scroll-behavior:smooth;transition:background-color .4s,color .4s;overflow-x:hidden}.scroll-container{scroll-snap-type:y mandatory;scroll-behavior:smooth;z-index:1;height:100vh;position:relative;overflow-y:scroll}.scroll-container::-webkit-scrollbar{display:none}.scroll-container{-ms-overflow-style:none;scrollbar-width:none}.ripple-background{pointer-events:none;z-index:0;position:fixed;top:0;left:0}.ripple-circle{border:1.5px solid var(--ripple-color);border-radius:50%;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.ripple-1{width:100px;height:100px}.ripple-2{width:200px;height:200px}.ripple-3{width:320px;height:320px}.ripple-4{width:460px;height:460px}.ripple-5{width:620px;height:620px}.sidebar-left{transform-origin:50%;font-family:var(--font-mono);color:var(--secondary-grey);letter-spacing:2px;white-space:nowrap;pointer-events:none;z-index:10;opacity:.8;font-size:13px;position:fixed;top:50%;left:35px;transform:translateY(-50%)rotate(-90deg)}.sidebar-right-container{z-index:100;pointer-events:auto;align-items:center;display:flex;position:fixed;top:50%;right:35px;transform:translateY(-50%)}.sidebar-right{font-family:var(--font-mono);color:var(--secondary-grey);letter-spacing:2px;white-space:nowrap;cursor:pointer;transition:var(--transition-smooth);opacity:.8;padding:10px 0;font-size:13px;transform:rotate(90deg)}.sidebar-right:hover{opacity:1;color:var(--primary-red)}.birthday-tooltip{background-color:var(--bg-color);color:var(--primary-dark);border:1px solid var(--tooltip-border);z-index:101;pointer-events:auto;border-radius:12px;flex-direction:column;gap:10px;min-width:200px;padding:15px;transition:background-color .4s,color .4s,border-color .4s;animation:.3s cubic-bezier(.16,1,.3,1) forwards fadeInTooltip;display:flex;position:absolute;right:48px;box-shadow:0 10px 30px #00000026}@keyframes fadeInTooltip{0%{opacity:0;transform:translate(10px)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}.tooltip-text{text-align:center;white-space:normal;font-size:13px;font-weight:500;line-height:1.4;font-family:var(--font-sans)}.tooltip-action-btn{font-family:var(--font-sans);background-color:var(--primary-red);color:#fff;cursor:pointer;transition:var(--transition-smooth);border:none;border-radius:6px;padding:8px 12px;font-size:12px;font-weight:600}.tooltip-action-btn:hover{background-color:#a82323;transform:translateY(-1px)}.tooltip-action-btn:active{transform:translateY(0)}.header-nav{z-index:100;pointer-events:none;justify-content:space-between;align-items:center;width:100%;padding:40px 60px;display:flex;position:fixed;top:0;left:0}.header-logo-container{pointer-events:auto;cursor:pointer;align-items:center;display:flex}.header-logo-img{width:32px;height:32px;transition:var(--transition-smooth)}.header-logo-img:hover{transform:scale(1.1)rotate(5deg)}.nav-links{pointer-events:auto;gap:30px;list-style:none;display:flex}.nav-item a{font-family:var(--font-mono);color:var(--secondary-grey);transition:var(--transition-smooth);cursor:pointer;padding:4px 0;font-size:14px;text-decoration:none;position:relative}.nav-item a:hover,.nav-item.active a{color:var(--primary-dark)}.nav-item.active a:after{content:"";border-bottom:2px dotted var(--primary-red);width:100%;height:1px;position:absolute;bottom:0;left:0}.scroll-btn{cursor:pointer;z-index:10;width:44px;height:44px;transition:var(--transition-smooth);color:var(--primary-dark);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:50px;right:50px}.scroll-btn:hover{color:var(--primary-red);transform:translateY(3px)}.scroll-btn-arrow{fill:currentColor;z-index:2;width:20px;height:20px;transition:var(--transition-smooth)}.scroll-btn-progress-svg{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;top:0;left:0;transform:rotate(-90deg)}.portfolio-section{scroll-snap-align:start;z-index:2;justify-content:center;align-items:center;width:100vw;height:100vh;padding:0 100px;display:flex;position:relative}@keyframes pulse{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.pulse-hover:hover{animation:1.5s ease-in-out infinite pulse}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}.header-logo-img{animation:4s ease-in-out infinite float}.nav-theme-btn{font-family:var(--font-mono);color:var(--secondary-grey);cursor:pointer;transition:var(--transition-smooth);opacity:.8;background:0 0;border:none;padding:4px 0;font-size:14px}.nav-theme-btn:hover{color:var(--primary-dark);opacity:1;text-underline-offset:4px;text-decoration:underline;transform:translateY(-1px)}[data-theme=dark] .hero-a-logo{filter:invert(.85)brightness(1.6)}[data-theme=dark] .hh-logo,[data-theme=dark] .dp-logo{filter:invert(.9)brightness(1.3)}@media (width<=1024px){.sidebar-left,.sidebar-right{display:none}.portfolio-section{padding:0 40px}.header-nav{padding:30px 40px}}.hamburger-btn{cursor:pointer;z-index:1100;pointer-events:auto;background:0 0;border:none;flex-direction:column;justify-content:space-between;width:24px;height:18px;padding:0;display:none}.hamburger-line{background-color:var(--primary-dark);width:100%;height:2px;transition:var(--transition-smooth)}.hamburger-btn.open .hamburger-line:first-child{transform:translateY(8px)rotate(45deg)}.hamburger-btn.open .hamburger-line:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger-btn.open .hamburger-line:nth-child(3){transform:translateY(-8px)rotate(-45deg)}@media (width<=768px){.scroll-container{-webkit-overflow-scrolling:touch;scroll-snap-type:y mandatory;height:100dvh;overflow-y:auto}.portfolio-section{scroll-snap-align:start;width:100%;height:auto;min-height:100dvh;padding:100px 20px 80px}.header-nav{background-color:var(--header-bg);-webkit-backdrop-filter:blur(12px);pointer-events:auto;border-bottom:1px solid #5352520d;padding:20px}.header-nav.header-on-home{-webkit-backdrop-filter:none;background-color:#0000;border-bottom:none}.nav-wrapper{display:none!important}.hamburger-btn{display:flex}.mobile-menu-drawer{background-color:var(--header-bg);-webkit-backdrop-filter:blur(25px);z-index:1050;flex-direction:column;justify-content:center;align-items:center;gap:40px;width:100vw;height:100vh;animation:.4s cubic-bezier(.16,1,.3,1) forwards slideInDrawer;display:flex;position:fixed;top:0;left:0}@keyframes slideInDrawer{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.mobile-nav-links{flex-direction:column;align-items:center;gap:25px;padding:0;list-style:none;display:flex}.mobile-nav-item a{font-family:var(--font-mono);color:var(--secondary-grey);cursor:pointer;transition:var(--transition-smooth);font-size:24px;text-decoration:none}.mobile-nav-item.active a{color:var(--primary-dark);font-weight:700}.mobile-nav-item.active a:after{content:"";border-bottom:2px dotted var(--primary-red);width:100%;height:1px;margin-top:4px;display:block}.mobile-menu-actions{flex-direction:column;align-items:center;gap:15px;width:100%;max-width:250px;display:flex}.mobile-theme-btn,.mobile-birthday-btn{width:100%;font-family:var(--font-mono);border:1px solid var(--primary-dark);color:var(--primary-dark);cursor:pointer;transition:var(--transition-smooth);text-align:center;background:0 0;border-radius:50px;padding:12px 20px;font-size:14px;font-weight:600}.mobile-birthday-btn{border-color:var(--primary-red);color:var(--primary-red)}.mobile-theme-btn:hover{background-color:var(--primary-dark);color:var(--bg-color)}.mobile-birthday-btn:hover{background-color:var(--primary-red);color:#fff}.hero-title{letter-spacing:-1.2px;font-size:40px}.hero-subtitle{font-size:16px}.hero-buttons{flex-direction:column;gap:15px;width:100%;max-width:280px}.btn{width:100%;padding:12px 20px;font-size:15px}.hero-system-label-btn{top:25px;right:20px}.scroll-btn{display:none!important}.about-name{font-size:32px}.about-bio{padding:0 10px;font-size:14px}}.horoscope-modal-overlay{-webkit-backdrop-filter:blur(15px);z-index:2000;background-color:#00000073;justify-content:center;align-items:center;width:100vw;height:100vh;padding:20px;display:flex;position:fixed;top:0;left:0}.horoscope-modal{background-color:var(--bg-color);border:1px solid var(--tooltip-border);scrollbar-width:thin;border-radius:24px;width:100%;max-width:500px;max-height:90vh;padding:35px;transition:background-color .4s,border-color .4s;animation:.4s cubic-bezier(.16,1,.3,1) forwards scaleUpModal;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d}@keyframes scaleUpModal{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.horoscope-modal::-webkit-scrollbar{width:6px}.horoscope-modal::-webkit-scrollbar-thumb{background-color:var(--secondary-grey);opacity:.3;border-radius:4px}.horoscope-close-btn{color:var(--secondary-grey);cursor:pointer;transition:var(--transition-smooth);opacity:.7;background:0 0;border:none;font-size:28px;line-height:1;position:absolute;top:20px;right:20px}.horoscope-close-btn:hover{color:var(--primary-red);opacity:1;transform:rotate(90deg)}.horoscope-header{text-align:center;flex-direction:column;align-items:center;gap:5px;margin-bottom:25px;display:flex}.horoscope-stars{font-family:var(--font-mono);color:var(--primary-red);letter-spacing:4px;font-size:14px;animation:2s ease-in-out infinite pulse}.horoscope-modal-title{color:var(--primary-dark);letter-spacing:-.5px;font-size:26px;font-weight:700}.horoscope-modal-subtitle{color:var(--secondary-grey);margin-top:5px;font-size:13px}.horoscope-form-groups{flex-direction:column;gap:15px;display:flex}.horoscope-form-row{gap:15px;width:100%;display:flex}.horoscope-form-row .horoscope-form-group{flex:1}.horoscope-form-group{flex-direction:column;gap:6px;display:flex}.horoscope-form-group label{color:var(--secondary-grey);font-size:12px;font-weight:600;font-family:var(--font-sans)}.horoscope-input{border:1px solid var(--tooltip-border);background-color:var(--card-bg);color:var(--primary-dark);font-family:var(--font-sans);transition:var(--transition-smooth);border-radius:10px;outline:none;padding:12px 16px;font-size:14px}.horoscope-input:focus{border-color:var(--primary-red);box-shadow:0 0 0 3px #ce2c2c26}.horoscope-input[type=date],.horoscope-input[type=time]{font-family:var(--font-mono)}.horoscope-privacy-notice{background-color:#298b6214;border:1.5px dashed #298b6240;border-radius:12px;align-items:flex-start;gap:10px;margin:20px 0;padding:15px;display:flex}.privacy-lock-icon{flex-shrink:0;font-size:18px}.privacy-notice-text{color:var(--secondary-grey);font-size:11.5px;line-height:1.5;font-family:var(--font-sans)}[data-theme=dark] .horoscope-privacy-notice{background-color:#298b620d;border-color:#298b6226}.horoscope-submit-btn{text-align:center;width:100%;margin-top:10px}.horoscope-zodiac-symbol{color:var(--primary-red);font-size:48px;line-height:1}.horoscope-zodiac-name{color:var(--primary-dark);letter-spacing:-1px;font-size:32px;font-weight:700}.horoscope-zodiac-element{font-family:var(--font-mono);color:var(--secondary-grey);text-transform:uppercase;letter-spacing:1px;font-size:12px}.horoscope-reading-cards{flex-direction:column;gap:15px;margin:20px 0;display:flex}.horoscope-card{background-color:var(--card-bg);border:1px solid var(--card-border);text-align:left;border-radius:16px;padding:18px}.horoscope-card h4{font-family:var(--font-sans);color:var(--primary-red);margin-bottom:6px;font-size:13px;font-weight:700}.horoscope-card p{font-family:var(--font-sans);color:var(--primary-dark);margin:0;font-size:13.5px;line-height:1.5}.horoscope-badges{gap:15px;margin-bottom:25px;display:flex}.horoscope-badge{background-color:var(--card-bg);border:1.5px dotted var(--tooltip-border);border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:12px;display:flex}.badge-label{color:var(--secondary-grey);font-size:11px;font-weight:600;font-family:var(--font-sans)}.badge-value{font-family:var(--font-mono);color:var(--primary-dark);font-size:13px;font-weight:700}.horoscope-reset-btn{width:100%}.nav-lang-picker{background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:20px;align-items:center;gap:4px;margin-left:10px;padding:4px;display:flex}.nav-lang-btn{font-family:var(--font-mono);text-transform:uppercase;color:var(--secondary-grey);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:12px;padding:4px 8px;font-size:11px;font-weight:700;line-height:1}.nav-lang-btn:hover{color:var(--primary-dark)}.nav-lang-btn.active{background-color:var(--primary-red);color:#fff}.mobile-lang-picker{background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:50px;justify-content:center;gap:6px;width:100%;margin:10px 0;padding:4px;display:flex}.mobile-lang-btn{font-family:var(--font-mono);color:var(--secondary-grey);cursor:pointer;transition:var(--transition-smooth);text-align:center;background:0 0;border:none;border-radius:50px;flex:1;padding:8px 12px;font-size:11px;font-weight:600}.mobile-lang-btn.active{background-color:var(--primary-red);color:#fff}.hero-content,.about-content,.projects-container,.contact-container{opacity:0;will-change:opacity, transform;transition:opacity .8s cubic-bezier(.25,1,.5,1),transform .8s cubic-bezier(.25,1,.5,1);transform:translateY(30px)scale(.97)}.portfolio-section.in-view .hero-content,.portfolio-section.in-view .about-content,.portfolio-section.in-view .projects-container,.portfolio-section.in-view .contact-container{opacity:1;transform:translateY(0)scale(1)}@media (prefers-reduced-motion:reduce){.hero-content,.about-content,.projects-container,.contact-container{opacity:1!important;transition:none!important;transform:none!important}}.hero-access-btn{color:var(--secondary-grey);cursor:pointer;transition:var(--transition-smooth);opacity:.8;z-index:100;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:36px;right:120px}.hero-access-btn:hover{color:var(--primary-red);opacity:1;transform:scale(1.1)}.nav-access-btn{color:var(--secondary-grey);cursor:pointer;transition:var(--transition-smooth);opacity:.8;background:0 0;border:none;justify-content:center;align-items:center;margin-left:10px;padding:4px;display:flex}.nav-access-btn:hover{color:var(--primary-red);opacity:1;transform:scale(1.15)}.mobile-header-access-btn{color:var(--primary-dark);cursor:pointer;transition:var(--transition-smooth);opacity:.8;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.mobile-header-access-btn:hover{color:var(--primary-red);opacity:1}.mobile-header-actions{display:none}@media (width<=768px){.mobile-header-actions{z-index:1100;pointer-events:auto;align-items:center;gap:20px;display:flex}.hamburger-btn{display:flex!important}}.access-dropdown-overlay{z-index:9999;background:0 0;width:100vw;height:100vh;position:fixed;top:0;left:0}.access-dropdown{background-color:var(--bg-color);border:1px solid var(--tooltip-border);z-index:10000;pointer-events:auto;border-radius:20px;flex-direction:column;gap:20px;width:330px;padding:24px;transition:background-color .4s,border-color .4s;animation:.25s cubic-bezier(.16,1,.3,1) forwards fadeInTooltip;display:flex;position:fixed;top:90px;right:60px;box-shadow:0 16px 40px #00000026}@media (width<=768px){.access-dropdown-overlay{-webkit-backdrop-filter:blur(8px);background:#0006}.access-dropdown{width:90%;max-width:340px;animation:.3s cubic-bezier(.16,1,.3,1) forwards scaleUpModal;top:50%;left:50%;right:auto;transform:translate(-50%,-50%)}}.access-header{border-bottom:1.5px dotted var(--tooltip-border);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.access-title{font-family:var(--font-sans);color:var(--primary-dark);letter-spacing:-.3px;font-size:16px;font-weight:700}.access-close-btn{color:var(--secondary-grey);cursor:pointer;transition:var(--transition-smooth);opacity:.7;background:0 0;border:none;font-size:24px;line-height:1}.access-close-btn:hover{color:var(--primary-red);opacity:1;transform:rotate(90deg)}.access-option{flex-direction:column;gap:10px;display:flex}.access-option-row{justify-content:space-between;align-items:center;display:flex}.access-option-info{flex-direction:column;gap:3px;display:flex}.access-option-label{font-family:var(--font-sans);color:var(--primary-dark);font-size:13.5px;font-weight:600}.access-option-sub{font-family:var(--font-sans);color:var(--secondary-grey);font-size:11px;line-height:1.3}.access-toggle-btn{border:1.5px dashed var(--secondary-grey);color:var(--secondary-grey);font-family:var(--font-mono);cursor:pointer;transition:var(--transition-smooth);background:0 0;border-radius:50px;padding:6px 14px;font-size:12px;font-weight:700}.access-toggle-btn.active{border-color:var(--primary-red);color:var(--primary-red);background-color:#ce2c2c0d}.access-toggle-btn:hover{color:var(--primary-red);border-style:solid;border-color:var(--primary-red)}.access-zoom-controls{background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:50px;gap:6px;width:100%;padding:4px;display:flex}.zoom-btn{font-family:var(--font-mono);color:var(--secondary-grey);cursor:pointer;transition:var(--transition-smooth);text-align:center;background:0 0;border:none;border-radius:50px;flex:1;padding:8px 0;font-size:11px;font-weight:600}.zoom-btn:hover{color:var(--primary-dark)}.zoom-btn.active{background-color:var(--primary-red);color:#fff;font-weight:700}.access-reset-btn{width:100%;font-family:var(--font-mono);color:var(--secondary-grey);border:1.5px dotted var(--tooltip-border);cursor:pointer;transition:var(--transition-smooth);text-align:center;background:0 0;border-radius:12px;padding:10px;font-size:12px;font-weight:600}.access-reset-btn:hover{border-color:var(--primary-red);color:var(--primary-red);background-color:var(--ripple-color)}.tts-highlight{transition:outline .15s,background-color .15s;outline:2px dashed var(--primary-red)!important;outline-offset:4px!important;background-color:#ce2c2c0d!important}.nav-jester-btn{color:var(--secondary-grey);cursor:pointer;transition:var(--transition-smooth);opacity:.8;background:0 0;border:none;justify-content:center;align-items:center;margin-left:10px;padding:4px;display:flex}.nav-jester-btn:hover{color:var(--primary-red);opacity:1;transform:scale(1.15)rotate(10deg)}.jester-flash-overlay{z-index:999999;pointer-events:none;width:100vw;height:100vh;animation:.15s infinite alternate rapidRedFlash;position:fixed;top:0;left:0}@keyframes rapidRedFlash{0%{-webkit-backdrop-filter:brightness(.6)invert(.2)saturate(2.5);background-color:#ce2c2cb3}to{-webkit-backdrop-filter:brightness(.9)invert(0);background-color:#0006}}
