:root{--bg-color: #050505;--text-primary: #ffffff;--text-secondary: #a1a1aa;--card-bg: rgba(255, 255, 255, .03);--card-border: rgba(255, 255, 255, .08);--accent-gradient: linear-gradient(135deg, #FF6B6B 0%, #a855f7 100%);--button-gradient: linear-gradient(135deg, #a855f7 0%, #ec4899 100%);--glow-color: rgba(168, 85, 247, .3);--retro-yellow: #facc15;--error-red: #ef4444}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);font-family:Inter,sans-serif;line-height:1.6;overflow-x:hidden;min-height:100vh;cursor:default}.app-wrapper{min-height:100vh;width:100%;padding:40px 20px;display:flex;flex-direction:column;align-items:center;position:relative;transition:background .5s ease}.party-active .bg-texture{animation:bg-disco 5s infinite alternate}.party-active .hero-title,.party-active h3,.party-active .gift-header{animation:dance .6s infinite ease-in-out}.party-active .ambient-glow{background:radial-gradient(circle,rgba(255,0,100,.5) 0%,transparent 60%);animation:pulse-color 2s infinite}@keyframes bg-disco{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}@keyframes dance{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-3px) rotate(-1deg)}75%{transform:translateY(3px) rotate(1deg)}}@keyframes pulse-color{0%{filter:hue-rotate(0deg);opacity:.5}50%{filter:hue-rotate(180deg);opacity:.8}to{filter:hue-rotate(360deg);opacity:.5}}.bg-texture{position:fixed;top:0;left:0;width:100%;height:100%;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.05'/%3E%3C/svg%3E");pointer-events:none;z-index:-1;opacity:.1;mix-blend-mode:overlay}.ambient-glow{position:fixed;top:-10%;left:50%;transform:translate(-50%);width:100vw;height:100vw;max-width:800px;background:radial-gradient(circle,var(--glow-color) 0%,transparent 60%);filter:blur(100px);z-index:-2;opacity:.5}.cursor-glow{position:fixed;top:0;left:0;width:500px;height:500px;background:radial-gradient(circle,rgba(168,85,247,.15),transparent 70%);border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);z-index:9999;mix-blend-mode:screen;transition:opacity .3s ease}.spotlight-card,.glass-panel{position:relative;background:var(--card-bg);border-radius:24px;padding:30px;border:1px solid var(--card-border);overflow:hidden;isolation:isolate;transition:transform .3s ease,border-color .3s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);margin-bottom:10px}@media (min-width: 1024px){.spotlight-card:hover{transform:translateY(-4px);border-color:#ffffff26}}.spotlight-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(800px circle at var(--mouse-x) var(--mouse-y),rgba(255,255,255,.06),transparent 40%);z-index:-1;opacity:0;transition:opacity .5s ease}.spotlight-card:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(600px circle at var(--mouse-x) var(--mouse-y),rgba(168,85,247,.4),transparent 40%);z-index:-1;border-radius:20px;opacity:0;transition:opacity .5s ease;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask-composite:xor;padding:1px}.spotlight-card:hover:before,.spotlight-card:hover:after{opacity:1}.party-highlight{background:#a855f714;border-color:#a855f74d}.party-highlight .time-box{background:#a855f733;border-color:#a855f766}.party-highlight .time-val{font-size:1.6rem;color:#facc15}.center-container{flex:1;display:flex;align-items:center;justify-content:center;width:100%;min-height:80vh}.login-box,.intro-box{width:100%;max-width:400px;text-align:center}.lock-icon,.celebrate-icon{font-size:3rem;margin-bottom:20px;animation:bounce 2s infinite}.secret-input{background:#0006;border:1px solid var(--card-border);color:#fff;font-size:1.6rem;padding:14px;border-radius:12px;width:100%;text-align:center;letter-spacing:5px;margin:25px 0;outline:none;transition:.3s;font-family:monospace}.secret-input:focus{border-color:#a855f7;box-shadow:0 0 15px #a855f733}.unlock-btn,.gift-btn{background:var(--button-gradient);border:none;color:#fff;padding:16px;border-radius:50px;width:100%;font-weight:700;font-size:1.1rem;text-transform:uppercase;letter-spacing:1px;cursor:pointer;box-shadow:0 4px 15px #a855f766;transition:transform .2s}.unlock-btn:hover,.gift-btn:hover{transform:scale(1.02)}.gold-text{color:var(--retro-yellow);font-weight:900;font-size:1.4rem;display:block;margin-top:10px}.main-layout{width:100%;max-width:500px;margin:0 auto}.grid-container{display:flex;flex-direction:column;gap:40px}.hero-section{text-align:center;margin-bottom:40px}.badge-pill{display:inline-block;background:#ffffff1a;padding:5px 15px;border-radius:20px;font-size:.8rem;letter-spacing:1px;font-weight:700;margin-bottom:10px;color:#facc15;border:1px solid rgba(250,204,21,.4)}.hero-title{font-size:2.5rem;line-height:1.1;font-weight:800;margin-bottom:10px}.text-gradient{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.countdown-section h3{text-align:center;margin-bottom:10px;font-size:1.1rem;text-transform:uppercase;letter-spacing:1px}.emotional-divider{text-align:center;margin-bottom:20px}.emotional-divider p{font-size:.9rem;color:var(--text-secondary);font-style:italic}.center-text{text-align:center;margin-top:10px;font-size:.9rem;color:var(--text-secondary)}.timer-wrapper{margin-bottom:15px}.timer-wrapper h4{font-size:.85rem;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px;text-align:center}.timer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.time-box{background:#0000004d;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:10px 4px;text-align:center;display:flex;flex-direction:column}.time-val{font-size:1.2rem;font-weight:700;color:#fff;line-height:1}.time-label{font-size:.6rem;color:var(--text-secondary);text-transform:uppercase;margin-top:5px}.timer-separator{height:1px;background:#ffffff1a;margin:20px 40px}.timeline-section{text-align:center}.timeline-container{display:flex;flex-direction:column;gap:15px;margin:20px 0;position:relative}.timeline-container:before{content:"";position:absolute;left:50%;top:10px;bottom:10px;width:2px;background:#ffffff1a;transform:translate(-50%);z-index:0}.timeline-item{display:flex;align-items:center;justify-content:center;gap:20px;background:#0006;padding:15px;border-radius:16px;border:1px solid rgba(255,255,255,.05);position:relative;z-index:1}.time{font-size:1.5rem;font-weight:800;color:#a855f7;width:80px;text-align:right;letter-spacing:1px}.timeline-dot{width:10px;height:10px;background:#facc15;border-radius:50%;box-shadow:0 0 10px #facc15;z-index:2}.icon-event{font-size:2.2rem;width:80px;text-align:left}.pulse-icon{animation:pulseIcon 2s infinite alternate}@keyframes pulseIcon{0%{transform:scale(1)}to{transform:scale(1.15)}}.timeline-footer{font-weight:700;color:var(--text-secondary);font-style:italic;margin-top:10px}.gift-card{border-color:#facc1566;background:linear-gradient(135deg,#facc150d,#0000);position:relative;display:flex;flex-direction:column}.gift-header{display:flex;align-items:center;gap:15px;margin-bottom:10px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:15px}.gift-icon{font-size:2rem}.gift-card h3{font-size:1.4rem;color:var(--retro-yellow);text-transform:uppercase;letter-spacing:1px}.gift-reveal-content{transition:all 1.5s ease-in-out;flex:1}.revealed{opacity:1}.gift-list{list-style:none;padding:0}.gift-list li{display:flex;align-items:flex-start;gap:15px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.05)}.gift-list li:last-child{border-bottom:none}.check{font-size:1.4rem;min-width:30px}.gift-list strong{display:block;font-size:1.1rem;color:#fff;margin-bottom:4px}.gift-list small{color:var(--text-secondary);font-size:.9rem}.gift-footer{margin-top:20px;font-weight:700;text-align:center;color:var(--retro-yellow);font-size:1rem}.warning-box{background:#a855f726;color:#e9d5ff;padding:12px;border-radius:12px;text-align:center;font-weight:700;margin-bottom:15px;border:1px solid rgba(168,85,247,.3)}.accent-card{border-color:#facc154d;background:#facc150a;text-align:center;display:flex;flex-direction:column;align-items:center}.icon{font-size:2.2rem;margin-bottom:10px}.big-data{font-size:1.6rem;font-weight:800;color:#fff}.retro-font{color:var(--retro-yellow);font-family:monospace;letter-spacing:-1px}.step-list{list-style:none;padding:0}.step-list li{display:flex;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.05)}.step-list li:last-child{border-bottom:none}.step-icon{font-size:1.4rem;background:#ffffff14;padding:8px;border-radius:10px}.step-list strong{display:block;color:#fff;font-size:.95rem}.step-list small{color:var(--text-secondary);font-size:.85rem}.milestones-section{text-align:center;margin-top:60px}.milestone-intro{margin-bottom:20px;font-style:italic;color:var(--text-secondary)}.milestones-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.milestone-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 15px;min-width:90px;text-align:center}.milestone-year{display:block;color:#a855f7;font-weight:700;font-size:1.1rem}.milestone-age{font-size:.8rem;color:#aaa}.footer{text-align:center;margin-top:60px;padding-bottom:80px;position:relative;color:var(--text-secondary)}.signatures{color:#fff;font-weight:700;margin-top:5px}.road-container{position:absolute;bottom:0;left:0;width:100%;height:60px;overflow:hidden;opacity:.6}.road-line{position:absolute;bottom:10px;left:0;width:200%;height:2px;background-image:linear-gradient(to right,rgba(255,255,255,.5) 50%,transparent 50%);background-size:60px 100%;animation:moveRoad 1s linear infinite}.moving-car{font-size:2.5rem;position:absolute;bottom:12px;left:50%;transform:translate(-50%);animation:bounceCar .6s infinite alternate}.party-switch{position:relative;display:flex;align-items:center;cursor:pointer}.party-switch input{opacity:0;width:0;height:0}.slider{position:relative;display:inline-block;width:40px;height:20px;background-color:#333;transition:.4s;border-radius:34px;border:1px solid #555}.slider:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:2px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.slider{background-color:#ec4899;border-color:#ec4899}input:checked+.slider:before{transform:translate(18px)}.snake-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9999;display:flex;align-items:center;justify-content:center}.nokia-frame{background:#333;border:4px solid #555;border-radius:20px;padding:20px;width:320px;box-shadow:0 0 50px #000c}.snake-header{display:flex;justify-content:space-between;align-items:center;color:#fff;margin-bottom:10px;font-family:monospace;font-size:1.2rem}.close-game{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer}.game-screen{background:#9bbc0f;width:260px;height:260px;margin:0 auto;border:4px solid #8bac0f;display:grid;grid-template-columns:repeat(20,1fr);grid-template-rows:repeat(20,1fr);position:relative}.pixel{width:100%;height:100%;border:1px solid rgba(15,56,15,.05)}.snake-body{background:#0f380f;border-radius:2px}.snake-food{background:#0f380f;border-radius:50%;animation:pulse .5s infinite}.game-over-msg{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0f380fcc;color:#9bbc0f;font-family:monospace}.game-over-msg button{margin-top:10px;padding:5px 10px;background:#9bbc0f;border:none;color:#0f380f;font-weight:700;cursor:pointer}.d-pad{margin-top:20px;display:flex;flex-direction:column;align-items:center;gap:5px}.d-pad button{width:50px;height:50px;background:#444;border:2px solid #666;color:#fff;font-size:1.2rem;border-radius:50%;cursor:pointer}.d-pad button:active{background:#222;transform:scale(.95)}.d-pad-row{display:flex;gap:40px}@media (min-width: 1024px){.main-layout{max-width:1100px}.grid-container{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.column-left,.column-right{display:flex;flex-direction:column;gap:24px}.hero-section{grid-column:span 2;margin-bottom:30px}.hero-title{font-size:4rem}.milestones-section,.footer{grid-column:span 2}}@media (max-width: 768px){.cursor-glow{display:none}}@keyframes moveRoad{0%{transform:translate(0)}to{transform:translate(-60px)}}@keyframes bounceCar{0%{transform:translate(-50%) translateY(0)}to{transform:translate(-50%) translateY(-3px)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px);border-color:#ef4444}75%{transform:translate(5px)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.fade-in{animation:fadeIn .8s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.glitch-effect{position:relative;display:inline-block}.glitch-effect:before,.glitch-effect:after{content:"Dorka!";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.8}.glitch-effect:before{color:#0ff;z-index:-1;animation:glitch1 2.5s infinite linear alternate-reverse}.glitch-effect:after{color:#f0f;z-index:-2;animation:glitch2 2.5s infinite linear alternate-reverse}@keyframes glitch1{0%{clip-path:inset(20% 0 80% 0);transform:translate(-2px,1px)}to{clip-path:inset(10% 0 50% 0);transform:translate(-2px,2px)}}@keyframes glitch2{0%{clip-path:inset(10% 0 60% 0);transform:translate(2px,1px)}to{clip-path:inset(30% 0 20% 0);transform:translate(2px,2px)}}
