@keyframes videoEntrance{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes contentDisappear{0%{opacity:1;transform:scale(1);filter:blur(0)}to{opacity:0;transform:scale(.95);filter:blur(5px)}}@keyframes contentAppear{0%{opacity:0;transform:scale(.95);filter:blur(5px)}to{opacity:1;transform:scale(1);filter:blur(0)}}@keyframes scan{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes glitch{0%,90%,to{text-shadow:0 0 10px var(--matrix-green-glow),0 0 20px var(--matrix-green-glow),0 0 30px var(--matrix-green-shadow)}91%,93%,95%,97%{text-shadow:-2px 0 var(--matrix-green),2px 0 red}}@keyframes fadeInOut{0%,to{opacity:1}20%{opacity:.8}40%{opacity:.5}60%{opacity:.7}80%{opacity:.3}}@keyframes fall{0%{transform:translateY(-100px);opacity:1}to{transform:translateY(calc(100vh + 100px));opacity:.3}}@keyframes cardFlip{0%,to{transform:rotateY(0deg)}50%{transform:rotateY(90deg)}}@keyframes matrixPulse{0%,to{border-color:var(--matrix-green)}50%{border-color:var(--matrix-dark-green)}}@keyframes pulse{0%,to{box-shadow:inset 0 0 10px rgba(0,255,65,.1),0 0 10px var(--matrix-green-shadow)}50%{box-shadow:inset 0 0 20px rgba(0,255,65,.3),0 0 30px var(--matrix-green-glow)}}@keyframes modalScan{0%,to{box-shadow:inset 0 0 20px rgba(0,255,65,.1),0 0 40px var(--matrix-green-glow)}50%{box-shadow:inset 0 0 30px rgba(0,255,65,.2),0 0 60px var(--matrix-green-glow)}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-10px)}}:root{--matrix-green:#00ff41;--matrix-dark-green:#008f11;--matrix-black:#0d0208;--matrix-dark:#1a1a1a;--matrix-green-glow:rgba(0, 255, 65, 0.5);--matrix-green-shadow:rgba(0, 255, 65, 0.3);--primary-color:#0d0208;--background-gradient:linear-gradient(180deg, #0d0208, #000000);--white:#00ff41;--text-dark:#0d0208;--text-light:#00ff41;--text-gray:#008f11;--border-light:rgba(0, 255, 65, 0.3);--shadow:rgba(0, 255, 65, 0.4);--christmas-red:#ff0000;--christmas-green:#00ff41;--christmas-gold:#00ff41}#portal-overlay,body::before{position:fixed;top:0;left:0;pointer-events:none}#portal-overlay{width:100vw;height:100vh;background:rgba(0,0,0,.98);z-index:10000;display:flex;justify-content:center;align-items:center;transition:opacity .5s ease-out}#portal-overlay.portal-hidden{opacity:0;visibility:hidden}#portal-overlay.portal-active{opacity:1;visibility:visible;pointer-events:auto}#portal-overlay.portal-closing{opacity:0;pointer-events:none}.video-container{width:90%;max-width:853px;aspect-ratio:16/9;background:#000;border-radius:10px;overflow:hidden;box-shadow:0 0 50px rgba(0,0,0,.8);animation:videoEntrance .5s ease-out}.video-container iframe{width:100%;height:100%;border:0}body.portal-open .footer,body.portal-open .header,body.portal-open .main{animation:contentDisappear .5s ease-out forwards}body.portal-closing .footer,body.portal-closing .header,body.portal-closing .main{animation:contentAppear .5s ease-out forwards}*{margin:0;padding:0;box-sizing:border-box}.video-container,body,body>*{position:relative}body{font-family:"Courier New",monospace;background:var(--background-gradient);color:var(--text-light);line-height:1.6;overflow-x:hidden;min-height:100vh}body::before{content:"";width:100%;height:100%;background:repeating-linear-gradient(0deg,rgba(0,255,65,.03)0,transparent 1px,transparent 2px,rgba(0,255,65,.03) 3px);z-index:1}body>*{z-index:2}p{margin:10px 0}a:not(.license-link){color:#fff;font-weight:700;text-decoration:none}a:not(.license-link):hover{color:#fff;text-shadow:0 0 10px rgba(255,255,255,.5)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.header{background:linear-gradient(180deg,rgba(13,2,8,.95),rgba(0,0,0,.8));backdrop-filter:blur(10px);border-bottom:2px solid var(--matrix-green);box-shadow:0 0 20px var(--matrix-green-shadow);position:relative;overflow:hidden}.logo{display:flex;align-items:center;justify-content:center;padding:20px 0;text-decoration:none;transition:all .3s ease}.logo:hover{transform:scale(1.05);filter:drop-shadow(0 0 10px var(--matrix-green-glow))}.logo-img{height:40px;width:auto}.header-wave{position:absolute;bottom:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent 0%,var(--matrix-green) 50%,transparent 100%);animation:scan 3s linear infinite}.hero{text-align:center;padding:80px 0 20px;position:relative}.hero-subtitle,.hero-title{font-family:"Courier New",monospace}.hero-title{font-size:3.5rem;font-weight:700;color:var(--matrix-green);margin-bottom:20px;text-shadow:0 0 10px var(--matrix-green-glow),0 0 20px var(--matrix-green-glow),0 0 30px var(--matrix-green-shadow);letter-spacing:.1em;animation:glitch 5s infinite}.hero-subtitle{font-size:1.3rem;font-weight:400;margin-bottom:40px;text-shadow:0 0 5px var(--matrix-green-shadow)}.snow-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.matrix-char{position:absolute;font-size:1.5rem;color:var(--matrix-green);animation:fall linear infinite,fadeInOut 1s infinite;text-shadow:0 0 5px var(--matrix-green-glow);font-family:"Courier New",monospace;font-weight:700}.matrix-char::before{content:attr(data-char)}.matrix-char:nth-child(1){left:10%;animation-duration:8s;animation-delay:0s}.matrix-char:nth-child(2){left:20%;animation-duration:12s;animation-delay:2s}.matrix-char:nth-child(3){left:30%;animation-duration:10s;animation-delay:4s}.matrix-char:nth-child(4){left:40%;animation-duration:15s;animation-delay:1s}.matrix-char:nth-child(5){left:50%;animation-duration:11s;animation-delay:3s}.matrix-char:nth-child(6){left:60%;animation-duration:9s;animation-delay:5s}.matrix-char:nth-child(7){left:70%;animation-duration:13s;animation-delay:2.5s}.matrix-char:nth-child(8){left:80%;animation-duration:8s;animation-delay:4.5s}.matrix-char:nth-child(9){left:90%;animation-duration:14s;animation-delay:1.5s}.matrix-char:nth-child(10){left:5%;animation-duration:16s;animation-delay:3.5s}.matrix-char:nth-child(11){left:15%;animation-duration:7s;animation-delay:.5s}.matrix-char:nth-child(12){left:25%;animation-duration:12s;animation-delay:4.8s}.matrix-char:nth-child(13){left:35%;animation-duration:9s;animation-delay:2.2s}.matrix-char:nth-child(14){left:45%;animation-duration:11s;animation-delay:1.8s}.matrix-char:nth-child(15){left:55%;animation-duration:13s;animation-delay:3.2s}.matrix-char:nth-child(16){left:65%;animation-duration:10s;animation-delay:5.2s}.matrix-char:nth-child(17){left:75%;animation-duration:8s;animation-delay:.8s}.matrix-char:nth-child(18){left:85%;animation-duration:14s;animation-delay:4.2s}.matrix-char:nth-child(19){left:12%;animation-duration:9.5s;animation-delay:6s}.matrix-char:nth-child(20){left:33%;animation-duration:11.5s;animation-delay:2.8s}.matrix-char:nth-child(21){left:48%;animation-duration:13.5s;animation-delay:5.5s}.matrix-char:nth-child(22){left:67%;animation-duration:10.5s;animation-delay:1.2s}.matrix-char:nth-child(23){left:78%;animation-duration:8.5s;animation-delay:3.8s}.matrix-char:nth-child(24){left:92%;animation-duration:12.5s;animation-delay:.2s}.calendar-section{padding:20px 0}.calendar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:20px;max-width:800px;margin:0 auto}.calendar-day,.day-number{font-family:"Courier New",monospace}.calendar-day{aspect-ratio:1;background:rgba(13,2,8,.9);border:2px solid var(--matrix-dark-green);border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;box-shadow:inset 0 0 10px rgba(0,255,65,.1),0 0 10px var(--matrix-green-shadow);position:relative;overflow:hidden;font-weight:700;color:var(--matrix-green);transform-style:preserve-3d}.calendar-day::before{content:"";position:absolute;top:0;left:-100%;background:linear-gradient(90deg,transparent 0,rgba(0,255,65,.1) 50%,transparent 100%);transition:left .5s}.calendar-day:hover::before{left:100%}#modal-message h1,.calendar-day:hover{text-shadow:0 0 10px var(--matrix-green-glow)}.calendar-day:hover{transform:translateY(-5px);box-shadow:inset 0 0 20px rgba(0,255,65,.2),0 0 20px var(--matrix-green-glow);border-color:var(--matrix-green)}.calendar-day.flipping{animation:cardFlip .6s ease-out}.calendar-day.available{background:rgba(0,255,65,.1);border-color:var(--matrix-green);animation:pulse 2s infinite,matrixPulse 1.5s infinite;box-shadow:inset 0 0 20px rgba(0,255,65,.2),0 0 20px var(--matrix-green-glow)}.calendar-day.opened{background:rgba(0,143,17,.3);border-color:var(--matrix-dark-green);box-shadow:inset 0 0 10px rgba(0,255,65,.1),0 0 10px rgba(0,143,17,.5)}.calendar-day.locked{background:rgba(13,2,8,.5);color:rgba(0,255,65,.3);cursor:not-allowed;border-color:rgba(0,255,65,.2);box-shadow:none}.calendar-day.locked:hover{transform:none;box-shadow:none;border-color:rgba(0,255,65,.2)}.calendar-day.locked::before{display:none}.day-number{font-size:2rem;font-weight:800;margin-bottom:8px;text-shadow:0 0 5px currentColor}.day-icon{font-size:1.5rem;opacity:.8;filter:drop-shadow(0 0 5px currentColor)}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.95);backdrop-filter:blur(10px)}.modal-content{background:rgba(13,2,8,.98);backdrop-filter:blur(20px);border:2px solid var(--matrix-green);margin:5%auto;padding:0;border-radius:4px;width:95%;max-width:900px;max-height:90vh;position:relative;animation:modalSlideIn .3s ease,modalScan 2s infinite;box-shadow:inset 0 0 20px rgba(0,255,65,.1),0 0 40px var(--matrix-green-glow);overflow:hidden}.modal-body{padding:30px 40px;text-align:center;max-height:calc(90vh - 60px);overflow-y:auto}#modal-message pre[data-language]::before,.close{border-radius:0;font-family:"Courier New",monospace}.close{position:absolute;right:20px;top:20px;font-size:30px;font-weight:700;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:all .3s;background-color:rgba(0,255,65,.1);border:1px solid var(--matrix-dark-green)}.close:hover{background-color:var(--matrix-green);color:var(--matrix-black);transform:scale(1.1);box-shadow:0 0 20px var(--matrix-green-glow)}#modal-title,.close,.gift-icon{color:var(--matrix-green)}.gift-icon{width:120px;height:120px;margin-bottom:20px;animation:bounce 1s ease infinite alternate;position:relative;display:inline-block;filter:drop-shadow(0 0 10px var(--matrix-green-glow))}.calendar-day::before,.gift-icon svg{width:100%;height:100%}#modal-title{font-family:"Courier New",monospace;font-size:2rem;font-weight:700;margin-bottom:15px;text-shadow:0 0 10px var(--matrix-green-glow),0 0 20px var(--matrix-green-shadow);letter-spacing:.2em;text-transform:uppercase}#modal-message{font-size:1rem;line-height:1.6;text-align:left;width:100%}#modal-message h1{font-size:1.5rem;margin-bottom:15px}#modal-message,#modal-message code,#modal-message h1,#modal-message h2{color:var(--matrix-green);font-family:"Courier New",monospace}#modal-message h2{font-size:1.3rem;margin:20px 0 10px}#modal-message ol,#modal-message ul{padding-left:30px;margin:15px 0}#modal-message li{margin:8px 0;line-height:1.6}#modal-message code{background:rgba(0,255,65,.1);padding:2px 6px;border-radius:2px;border:1px solid var(--matrix-dark-green);font-size:.9rem}#modal-message pre{padding:15px;background:rgba(0,0,0,.8);border-radius:2px;position:relative}#modal-message pre code{border:0;background:0 0;padding:15px;display:block;font-family:"Monaco","Consolas",monospace;font-size:.9rem;line-height:1.4}.challenge-image{max-width:100%;height:auto;margin:20px auto;display:block;border-radius:12px;box-shadow:0 4px 15px rgba(0,0,0,.1);transition:transform .3s ease}.challenge-image:hover{transform:scale(1.02);cursor:pointer}@media (max-width:768px){.challenge-image{margin:15px auto;border-radius:8px}}.footer{background:linear-gradient(180deg,transparent,rgba(13,2,8,.8));border-top:2px solid var(--matrix-green);margin-top:60px;position:relative;overflow:hidden;box-shadow:0 0 20px var(--matrix-green-shadow)}.footer-wave{position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent 0%,var(--matrix-green) 50%,transparent 100%);animation:scan 3s linear infinite}.footer p,.license-link{color:var(--matrix-green)}.footer p{text-align:center;padding:40px 0;font-family:"Courier New",monospace;text-shadow:0 0 5px var(--matrix-green-shadow)}.license-link{text-decoration:none;transition:all .3s ease;border-bottom:1px solid transparent}.license-link:hover{color:var(--matrix-green);text-shadow:0 0 10px var(--matrix-green-glow);border-bottom:1px solid var(--matrix-green)}@media (max-width:768px){.hero-title{font-size:2.5rem}.calendar-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:15px}.day-number{font-size:1.5rem}.modal-content{width:98%;margin:2%auto;max-height:96vh}.modal-body{padding:20px 15px;max-height:calc(96vh - 40px)}}@media (max-width:480px){.logo-img{height:35px}.calendar-grid{grid-template-columns:repeat(4,1fr);gap:10px}}.inline-code{padding:2px 6px;border-radius:2px;border:1px solid var(--matrix-dark-green);font-family:"Courier New",monospace;font-size:.9rem}#modal-message .hljs{background:#000!important;color:#00ff41!important;padding:15px!important;border-radius:2px;font-size:.9rem;line-height:1.5;font-family:"Courier New",monospace!important}#modal-message pre,#modal-message pre.hljs{margin:15px 0;overflow-x:auto;border:2px solid var(--matrix-dark-green);box-shadow:inset 0 0 10px rgba(0,255,65,.1)}#modal-message pre[data-language]::before{background:var(--matrix-green);color:var(--matrix-black);padding:2px 8px;font-size:.7rem}#modal-message pre::before{content:attr(data-language);position:absolute;top:5px;right:10px;font-size:.7rem;color:var(--text-gray);text-transform:uppercase;font-weight:700}.modal-content table{width:100%;border-collapse:collapse;margin:20px 0;box-shadow:0 0 10px var(--matrix-green-shadow)}.modal-content td,.modal-content th{border:1px solid var(--border-light);padding:8px 12px;text-align:center}.inline-code,.modal-content th{background:rgba(0,255,65,.1);color:var(--matrix-green)}.modal-content th{font-weight:700;border-bottom:2px solid var(--matrix-green)}.modal-content tr:nth-child(even){background:rgba(0,255,65,.03)}.modal-content tr:hover{background:rgba(0,255,65,.08)}.download-btn{display:inline-flex;align-items:center;justify-content:center;margin:20px 0;padding:12px 24px;background:rgba(0,255,65,.1);color:var(--matrix-green);border:2px solid var(--matrix-green);border-radius:2px;cursor:pointer;font-size:16px;font-weight:700;text-decoration:none;transition:all .3s ease;box-shadow:0 0 10px var(--matrix-green-shadow);font-family:"Courier New",monospace;text-transform:uppercase;letter-spacing:.1em}.download-btn:hover{transform:translateY(-2px);background:var(--matrix-green);color:var(--matrix-black);box-shadow:0 0 30px var(--matrix-green-glow)}.download-btn:active{transform:translateY(0);box-shadow:0 0 15px var(--matrix-green-shadow)}blockquote{font-family:"SFMono-Regular","Roboto Mono","ui-monospace","SFMono","Menlo","Monaco",monospace;color:var(--matrix-green);background:rgba(0,0,0,.45);border-left:4px solid var(--matrix-green);padding:1rem 1.25rem;margin:1rem 0;line-height:1.5;box-shadow:0 6px 30px rgba(0,255,102,.06),0 0 18px rgba(0,255,102,.12);backdrop-filter:blur(4px);border-radius:8px;white-space:pre-wrap}