@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&family=Luckiest+Guy&display=swap";@import"https://fonts.googleapis.com/css2?family=Geist+Pixel&display=swap";@import"https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&family=Geist+Pixel&family=Press+Start+2P&family=Bungee&family=Luckiest+Guy&display=swap";.auth-container:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle 5px at 10% 20%,#fbbf24 99%,transparent 100%),radial-gradient(circle 4px at 30% 70%,#f472b6 99%,transparent 100%),radial-gradient(circle 6px at 70% 30%,#7dd3fc 99%,transparent 100%),radial-gradient(circle 5px at 85% 80%,#34d399 99%,transparent 100%),radial-gradient(circle 4px at 50% 50%,#a78bfa 99%,transparent 100%),radial-gradient(circle 5px at 20% 90%,#fb923c 99%,transparent 100%),radial-gradient(circle 6px at 90% 10%,#ec4899 99%,transparent 100%),radial-gradient(circle 4px at 60% 85%,#f59e0b 99%,transparent 100%),radial-gradient(circle 5px at 40% 15%,#38bdf8 99%,transparent 100%);background-repeat:repeat;background-size:500px 500px;opacity:.45;animation:confettiDriftLogin 22s linear infinite;pointer-events:none;z-index:0}.auth-container:after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle 4px at 15% 35%,#fbbf24 99%,transparent 100%),radial-gradient(circle 6px at 75% 55%,#f472b6 99%,transparent 100%),radial-gradient(circle 5px at 35% 85%,#7dd3fc 99%,transparent 100%),radial-gradient(circle 4px at 95% 5%,#34d399 99%,transparent 100%);background-repeat:repeat;background-size:700px 700px;opacity:.3;animation:confettiDriftLogin 40s linear infinite reverse;filter:blur(1px);pointer-events:none;z-index:0}@keyframes confettiDriftLogin{0%{transform:translateZ(0)}to{transform:translate3d(-400px,300px,0)}}.panda{position:relative;width:200px;margin:0 auto 20px;transform:scale(1);transform-origin:center;animation:pandaWiggle 3.5s ease-in-out infinite;z-index:2}@keyframes pandaWiggle{0%,to{transform:scale(1) rotate(-1.5deg)}50%{transform:scale(1) rotate(1.5deg)}}.face:after{content:"✦";position:absolute;top:18px;right:42px;color:#fbbf24;font-size:16px;text-shadow:0 0 8px rgba(251,191,36,.8),0 2px 0 #0f172a;z-index:2;animation:sparkleBlink 2s ease-in-out infinite}@keyframes sparkleBlink{0%,to{opacity:1;transform:scale(1) rotate(0)}50%{opacity:.5;transform:scale(1.3) rotate(20deg)}}.ear:after{content:"✧";position:absolute;top:18px;left:22px;color:#f472b6;font-size:14px;text-shadow:0 0 6px rgba(244,114,182,.8);animation:sparkleBlink 2.4s ease-in-out infinite;animation-delay:.3s}.ear:after:before{content:"✧";position:absolute;top:22px;left:20px;color:#7dd3fc;font-size:14px;text-shadow:0 0 6px rgba(125,211,252,.8);animation:sparkleBlink 2.8s ease-in-out infinite;animation-delay:.6s}.auth-form{max-width:400px;width:100%;padding:30px 40px 35px;height:auto;min-height:300px;margin:0 auto;display:block;transition:.3s;position:relative;transform:translateY(-100px);z-index:500;border:4px solid #0f172a;border-radius:28px;background:linear-gradient(180deg,#fff,#f0fdf4,#ecfeff);box-shadow:8px 10px #0f172a,0 30px 60px -20px #0f172a40;overflow:hidden}.auth-form h1{font-family:Luckiest Guy,Fredoka,sans-serif;font-weight:400;font-size:2.4rem;margin:0 0 24px;letter-spacing:.02em;background:linear-gradient(135deg,#fb923c,#ec4899 20%,#8b5cf6,#38bdf8 70%,#10b981 90%,#fbbf24);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rainbowShiftLogin 5s ease-in-out infinite;filter:drop-shadow(0 5px 0 rgba(15,23,42,.22));position:relative;z-index:3}@keyframes rainbowShiftLogin{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.auth-form .form-group+.form-group{margin-top:28px}.auth-form .btn{position:relative;appearance:none;background:#fbbf24;padding:8px 5px;width:170px;height:48px;border:4px solid #0f172a;margin-top:32px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .2s;box-shadow:6px 8px #0f172a;color:#0f172a;font-family:Fredoka,sans-serif;font-size:17px;font-weight:700;border-radius:22px;letter-spacing:.02em;z-index:3}@media(max-width:768px){.panda{transform:scale(.8);animation:pandaWiggleMobile 3.5s ease-in-out infinite}@keyframes pandaWiggleMobile{0%,to{transform:scale(.8) rotate(-1.5deg)}50%{transform:scale(.8) rotate(1.5deg)}}.auth-form{padding:25px 24px 30px;transform:translateY(-80px)}.auth-form.up{transform:translateY(-160px)}.auth-form .alert{display:none}.auth-form .btn{width:100%;max-width:280px}.auth-footer{font-size:14px}}@media(max-width:480px){.auth-container{padding:20px 12px;justify-content:flex-start;padding-top:10vh}.panda{transform:scale(.55);animation:pandaWiggleSmall 3.5s ease-in-out infinite;margin:0 auto}@keyframes pandaWiggleSmall{0%,to{transform:scale(.55) rotate(-1.5deg)}50%{transform:scale(.55) rotate(1.5deg)}}.auth-form{padding:18px 18px 24px;transform:translateY(-40px);border-radius:22px;border-width:3px;box-shadow:5px 6px #0f172a,0 20px 40px -20px #0f172a40}.auth-form.up{transform:translateY(-100px)}.auth-form h1{font-size:1.7rem;margin:0 0 20px}.auth-form .form-group+.form-group{margin-top:22px}.auth-form .btn{width:100%;height:46px;border-radius:18px;font-size:16px;box-shadow:4px 5px #0f172a;border-width:3px}.auth-footer{margin-top:-20px;font-size:13px}.back-button{width:40px;height:40px;border-radius:14px;border-width:3px;top:14px;left:14px;box-shadow:3px 4px #0f172a}}@media(max-width:380px){.panda{transform:scale(.48);animation:pandaWiggleXS 3.5s ease-in-out infinite}@keyframes pandaWiggleXS{0%,to{transform:scale(.48) rotate(-1.5deg)}50%{transform:scale(.48) rotate(1.5deg)}}.auth-form{padding:16px 16px 22px;transform:translateY(-30px)}.auth-form.up{transform:translateY(-90px)}.auth-form h1{font-size:1.5rem}}.auth-container{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:30px 20px;position:relative;z-index:1;text-align:center;font-family:Fredoka,sans-serif;font-weight:500;background:radial-gradient(ellipse 80% 50% at 20% 0%,rgba(251,191,36,.35) 0%,transparent 55%),radial-gradient(ellipse 70% 60% at 100% 20%,rgba(244,114,182,.28) 0%,transparent 55%),radial-gradient(ellipse 100% 70% at 50% 100%,rgba(125,211,252,.4) 0%,transparent 60%),linear-gradient(180deg,#fff7ed,#fef3c7 20%,#dbeafe,#fce7f3);background-attachment:fixed;overflow:hidden}.auth-container:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle 5px at 10% 20%,#fbbf24 99%,transparent 100%),radial-gradient(circle 4px at 30% 70%,#f472b6 99%,transparent 100%),radial-gradient(circle 6px at 70% 30%,#7dd3fc 99%,transparent 100%),radial-gradient(circle 5px at 85% 80%,#34d399 99%,transparent 100%),radial-gradient(circle 4px at 50% 50%,#a78bfa 99%,transparent 100%),radial-gradient(circle 5px at 20% 90%,#fb923c 99%,transparent 100%),radial-gradient(circle 6px at 90% 10%,#ec4899 99%,transparent 100%),radial-gradient(circle 4px at 60% 85%,#f59e0b 99%,transparent 100%),radial-gradient(circle 5px at 40% 15%,#38bdf8 99%,transparent 100%);background-repeat:repeat;background-size:500px 500px;opacity:.45;animation:confettiDriftRegister 22s linear infinite;pointer-events:none;z-index:0}.auth-container:after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle 4px at 15% 35%,#fbbf24 99%,transparent 100%),radial-gradient(circle 6px at 75% 55%,#f472b6 99%,transparent 100%),radial-gradient(circle 5px at 35% 85%,#7dd3fc 99%,transparent 100%),radial-gradient(circle 4px at 95% 5%,#34d399 99%,transparent 100%);background-repeat:repeat;background-size:700px 700px;opacity:.3;animation:confettiDriftRegister 40s linear infinite reverse;filter:blur(1px);pointer-events:none;z-index:0}@keyframes confettiDriftRegister{0%{transform:translateZ(0)}to{transform:translate3d(-400px,300px,0)}}.back-button{position:absolute;top:20px;left:20px;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:16px;border:4px solid #0f172a;background:#fff;color:#0f172a;transition:all .18s ease;box-shadow:4px 5px #0f172a;z-index:10}.back-button:hover{background:#fce7f3;transform:translateY(-2px) rotate(-2deg);box-shadow:6px 7px #0f172a}.back-button:active{transform:translateY(3px) rotate(1deg);box-shadow:2px 2px #0f172a}.panda{position:relative;width:200px;margin:0 auto 20px;transform:scale(1);transform-origin:center;animation:pandaWiggleReg 3.5s ease-in-out infinite;z-index:2}@keyframes pandaWiggleReg{0%,to{transform:scale(1) rotate(-1.5deg)}50%{transform:scale(1) rotate(1.5deg)}}.face{width:200px;height:200px;background:#fff;border-radius:100%;margin:0 auto;z-index:50;position:relative;border:4px solid #0f172a;box-shadow:0 10px 15px #00000026,8px 10px #0f172a,inset 0 -15px 30px #f472b626,inset 0 10px 20px #fffc}.face:before{content:"";position:absolute;width:35px;height:20px;background:#ffffffd9;border-radius:9999px;top:28px;left:48px;transform:rotate(-20deg);filter:blur(1px);z-index:2}.face:after{content:"✦";position:absolute;top:18px;right:42px;color:#fbbf24;font-size:16px;text-shadow:0 0 8px rgba(251,191,36,.8),0 2px 0 #0f172a;z-index:2;animation:sparkleBlinkReg 2s ease-in-out infinite}@keyframes sparkleBlinkReg{0%,to{opacity:1;transform:scale(1) rotate(0)}50%{opacity:.5;transform:scale(1.3) rotate(20deg)}}.ear{position:absolute;width:80px;height:80px;background:#000;z-index:5;border:10px solid #fff;left:-15px;top:-15px;border-radius:100%;outline:4px solid #0f172a;box-shadow:3px 4px #0f172a66}.ear:after{content:"✧";position:absolute;top:18px;left:22px;color:#f472b6;font-size:14px;text-shadow:0 0 6px rgba(244,114,182,.8);animation:sparkleBlinkReg 2.4s ease-in-out infinite;animation-delay:.3s}.ear:after{content:"";position:absolute;width:80px;height:80px;background:#000;z-index:5;border:10px solid #fff;border-radius:100%;left:125px;top:0;outline:4px solid #0f172a;box-shadow:3px 4px #0f172a66}.ear:after:before{content:"✧";position:absolute;top:22px;left:20px;color:#7dd3fc;font-size:14px;text-shadow:0 0 6px rgba(125,211,252,.8);animation:sparkleBlinkReg 2.8s ease-in-out infinite;animation-delay:.6s}.eye-shade{background:#000;width:50px;height:80px;margin:10px;position:absolute;top:35px;left:25px;transform:rotate(220deg);border-radius:25px/20px 30px 35px 40px;outline:2px solid #0f172a;box-shadow:inset 0 -5px 10px #f472b64d}.eye-shade.rgt{transform:rotate(140deg);left:105px;box-shadow:inset 0 -5px 10px #7dd3fc4d}.eye-white{position:absolute;width:30px;height:30px;border-radius:100%;background:#fff;z-index:500;left:40px;top:80px;overflow:hidden;border:2px solid #0f172a;box-shadow:inset 0 2px 4px #0000001a}.eye-white.rgt{right:40px;left:auto}.eye-ball{position:absolute;width:0px;height:0px;left:20px;top:20px;max-width:10px;max-height:10px;transition:.1s}.eye-ball:after{content:"";background:#000;position:absolute;border-radius:100%;right:0;bottom:0;width:20px;height:20px}.nose{position:absolute;height:20px;width:35px;bottom:40px;left:0;right:0;margin:auto;border-radius:50px 20px/30px 15px;transform:rotate(15deg);background:#000;outline:2px solid #0f172a;box-shadow:0 2px #0f172a4d}.mouth{position:absolute;height:10px;width:20px;bottom:30px;left:0;right:0;margin:auto;border-bottom:3px solid #000;border-radius:0 0 10px 10px}.body{background:#fff;position:absolute;top:200px;left:-20px;border-radius:100px/126px 126px 96px 96px;width:250px;height:282px;border:4px solid #0f172a;box-shadow:0 5px 10px #0000004d,6px 8px #0f172a,inset 0 -20px 40px #7dd3fc26,inset 0 15px 25px #ffffffb3}.foot{top:360px;left:-80px;position:absolute;background:#000;z-index:1400;box-shadow:0 5px 5px #0003;border-radius:40px 40px 39px/26px 26px 63px 63px;width:82px;height:120px;border:3px solid #0f172a}.foot:after{content:"";width:55px;height:65px;background:linear-gradient(180deg,#f472b6,#fb923c,#fbbf24);border-radius:100%;position:absolute;bottom:10px;left:0;right:0;margin:auto;box-shadow:inset 0 -5px 12px #00000040,inset 0 4px 8px #fff6}.foot .finger{position:absolute;width:25px;height:35px;background:linear-gradient(135deg,#34d399,#38bdf8);border-radius:100%;top:10px;right:5px;box-shadow:inset 0 -3px 6px #0003,inset 0 2px 4px #fff6}.foot .finger:after,.foot .finger:before{content:"";width:20px;height:35px;background:linear-gradient(135deg,#a78bfa,#ec4899);border-radius:100%;position:absolute;right:30px;top:0;box-shadow:inset 0 -3px 6px #0003,inset 0 2px 4px #fff6}.foot .finger:before{right:55px;top:5px;background:linear-gradient(135deg,#fbbf24,#fb923c)}.foot.rgt{left:auto;right:-80px}.foot.rgt .finger{left:5px;right:auto}.foot.rgt .finger:after{left:30px;right:auto}.foot.rgt .finger:before{left:55px;right:auto}.auth-form{max-width:400px;width:100%;padding:30px 40px 35px;height:auto;min-height:430px;margin:0 auto;display:block;transition:.3s;position:relative;transform:translateY(-100px);z-index:500;border:4px solid #0f172a;border-radius:28px;background:linear-gradient(180deg,#fff,#f0fdf4,#ecfeff);box-shadow:8px 10px #0f172a,0 30px 60px -20px #0f172a40;overflow:hidden}.auth-form:before{content:"";position:absolute;top:12px;left:50%;transform:translate(-50%);width:55%;height:11px;background:#fffffff2;border-radius:9999px;filter:blur(1px);z-index:2;opacity:.9}.auth-form:after{content:"";position:absolute;inset:0;border-radius:28px;background:radial-gradient(circle at 15% 18%,rgba(255,255,255,.75) 0%,transparent 40%),radial-gradient(circle at 85% 88%,rgba(125,211,252,.35) 0%,transparent 45%),radial-gradient(circle at 8% 85%,rgba(52,211,153,.22) 0%,transparent 40%);pointer-events:none;mix-blend-mode:screen}.auth-form.up{transform:translateY(-180px)}.hand{width:40px;height:30px;border-radius:50px;background:#000;margin:5px;position:absolute;top:70px;left:-25px;border:3px solid #0f172a;box-shadow:3px 4px #0f172a66;z-index:10}.hand:after,.hand:before{content:"";width:40px;height:30px;border-radius:50px;background:#000;position:absolute;left:-5px;top:11px;border:3px solid #0f172a;box-shadow:3px 4px #0f172a66}.hand:before{top:26px}.hand.rgt{left:auto;right:-25px}.hand.rgt:after,.hand.rgt:before{left:auto;right:-5px}.auth-form h1{font-family:Luckiest Guy,Fredoka,sans-serif;font-weight:400;font-size:2.4rem;margin:0 0 24px;letter-spacing:.02em;background:linear-gradient(135deg,#fb923c,#ec4899 20%,#8b5cf6,#38bdf8 70%,#10b981 90%,#fbbf24);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rainbowShiftRegister 5s ease-in-out infinite;filter:drop-shadow(0 5px 0 rgba(15,23,42,.22));position:relative;z-index:3}@keyframes rainbowShiftRegister{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.auth-form .form-group{position:relative;font-size:15px;color:#1e293b;font-family:Fredoka,sans-serif;font-weight:600;z-index:3}.auth-form .form-group+.form-group{margin-top:23px}.auth-form .form-label{position:absolute;z-index:1;left:0;top:5px;transition:.3s;font-family:Fredoka,sans-serif;font-weight:600;color:#475569}.auth-form .form-control{width:100%;position:relative;z-index:3;height:40px;background:none;border:none;padding:8px 0 5px;transition:.3s;border-bottom:3px solid #0f172a;color:#1e293b;font-family:Fredoka,sans-serif;font-weight:500;font-size:16px}.auth-form .form-control::placeholder{color:transparent}.auth-form .form-control:invalid{outline:none}.auth-form .form-control:focus,.auth-form .form-control:valid{outline:none;box-shadow:0 3px #ec4899;border-color:#ec4899}.auth-form .form-control:focus+.form-label,.auth-form .form-control:valid+.form-label{font-size:13px;color:#ec4899;transform:translateY(-20px);font-weight:700;text-shadow:0 2px 0 rgba(236,72,153,.15)}.auth-form .password-toggle{position:absolute;right:0;top:50%;transform:translateY(-50%);background:#fff;border:3px solid #0f172a;color:#0f172a;cursor:pointer;padding:6px 10px;display:flex;align-items:center;justify-content:center;transition:all .18s ease;border-radius:12px;box-shadow:3px 4px #0f172a;z-index:10}.auth-form .password-toggle:hover{background:#fce7f3;color:#ec4899;transform:translateY(-54%) rotate(-3deg);box-shadow:4px 6px #0f172a}.auth-form .password-toggle:active{transform:translateY(-46%) rotate(1deg);box-shadow:1px 2px #0f172a}.auth-form .btn{position:relative;appearance:none;background:#fbbf24;padding:8px 5px;width:170px;height:48px;border:4px solid #0f172a;margin-top:27px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .2s;box-shadow:6px 8px #0f172a;color:#0f172a;font-family:Fredoka,sans-serif;font-size:17px;font-weight:700;border-radius:22px;letter-spacing:.02em;z-index:3}.auth-form .btn:hover:not(:disabled){background:#f59e0b;transform:translateY(-3px) rotate(-1deg) scale(1.03);box-shadow:8px 12px #0f172a,0 20px 40px -10px #f59e0b80}.auth-form .btn:active:not(:disabled){transform:translateY(5px) rotate(1deg) scale(.97,.92);box-shadow:2px 3px #0f172a}.auth-form .btn:disabled{opacity:.6;cursor:not-allowed;filter:grayscale(.3)}.auth-form .alert{position:absolute;color:#dc2626;font-size:15px;font-weight:700;font-family:Fredoka,sans-serif;right:-180px;top:-300px;z-index:200;padding:28px 22px;background:#fff;border:4px solid #0f172a;box-shadow:6px 8px #0f172a;border-radius:50%;opacity:0;transform:scale(0);transition:.4s .6s linear}.auth-form .alert:after,.auth-form .alert:before{content:"";position:absolute;width:25px;height:25px;background:#fff;left:-19px;bottom:-8px;border:3px solid #0f172a;box-shadow:2px 3px #0f172a;border-radius:50%}.auth-form .alert:before{width:15px;height:15px;left:-35px;bottom:-25px}.auth-form.wrong-entry{animation:wrong-log .3s}.auth-form.wrong-entry .alert{opacity:1;transform:scale(1)}.auth-footer{margin-top:-60px;color:#1e293b;font-family:Fredoka,sans-serif;font-size:15px;font-weight:600;z-index:3;position:relative}.auth-footer a{color:#ec4899;font-weight:700;margin-left:8px;text-decoration:none;border-bottom:3px solid #f472b6;padding-bottom:2px;transition:all .2s ease;position:relative}.auth-footer a:after{content:"✦";position:absolute;right:-14px;top:-4px;font-size:10px;color:#fbbf24;opacity:0;transform:rotate(0);transition:all .3s ease}.auth-footer a:hover{color:#db2777;border-color:#ec4899;border-bottom-width:4px}.auth-footer a:hover:after{opacity:1;transform:rotate(25deg) scale(1.2)}@keyframes wrong-log{0%,to{left:0}20%,60%{left:20px}40%,80%{left:-20px}}@media(max-width:768px){.panda{transform:scale(.8);animation:pandaWiggleRegMobile 3.5s ease-in-out infinite}@keyframes pandaWiggleRegMobile{0%,to{transform:scale(.8) rotate(-1.5deg)}50%{transform:scale(.8) rotate(1.5deg)}}.auth-form{padding:25px 24px 30px;transform:translateY(-80px)}.auth-form.up{transform:translateY(-160px)}.auth-form .alert{display:none}.auth-form .btn{width:100%;max-width:280px}.auth-footer{font-size:14px}}@media(max-width:480px){.auth-container{padding:20px 12px;justify-content:flex-start;padding-top:10vh}.panda{transform:scale(.55);animation:pandaWiggleRegSmall 3.5s ease-in-out infinite;margin:0 auto}@keyframes pandaWiggleRegSmall{0%,to{transform:scale(.55) rotate(-1.5deg)}50%{transform:scale(.55) rotate(1.5deg)}}.auth-form{padding:18px 18px 24px;transform:translateY(-40px);border-radius:22px;border-width:3px;box-shadow:5px 6px #0f172a,0 20px 40px -20px #0f172a40}.auth-form.up{transform:translateY(-100px)}.auth-form h1{font-size:1.7rem;margin:0 0 20px}.auth-form .form-group+.form-group{margin-top:18px}.auth-form .btn{width:100%;height:46px;border-radius:18px;font-size:16px;box-shadow:4px 5px #0f172a;border-width:3px}.auth-footer{margin-top:-20px;font-size:13px}.back-button{width:40px;height:40px;border-radius:14px;border-width:3px;top:14px;left:14px;box-shadow:3px 4px #0f172a}}@media(max-width:380px){.panda{transform:scale(.48);animation:pandaWiggleRegXS 3.5s ease-in-out infinite}@keyframes pandaWiggleRegXS{0%,to{transform:scale(.48) rotate(-1.5deg)}50%{transform:scale(.48) rotate(1.5deg)}}.auth-form{padding:16px 16px 22px;transform:translateY(-30px)}.auth-form.up{transform:translateY(-90px)}.auth-form h1{font-size:1.5rem}}.homepage-container{position:relative;min-height:100vh;display:flex;flex-direction:column;z-index:1;padding-bottom:60px;overflow:hidden}.homepage-container:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle 6px at 12% 8%,var(--sunshine) 99%,transparent 100%),radial-gradient(circle 5px at 28% 26%,var(--bubblegum) 99%,transparent 100%),radial-gradient(circle 7px at 75% 12%,var(--sky) 99%,transparent 100%),radial-gradient(circle 6px at 88% 44%,var(--mint) 99%,transparent 100%),radial-gradient(circle 5px at 55% 68%,var(--grape) 99%,transparent 100%),radial-gradient(circle 6px at 18% 75%,var(--coral) 99%,transparent 100%),radial-gradient(circle 5px at 45% 40%,var(--sunshine) 99%,transparent 100%),radial-gradient(circle 4px at 80% 85%,var(--bubblegum) 99%,transparent 100%);background-size:600px 600px;background-repeat:repeat;opacity:.45;animation:confettiDrift 30s linear infinite;pointer-events:none;z-index:0}@keyframes confettiDrift{0%{transform:translateZ(0)}to{transform:translate3d(-500px,300px,0)}}.squiggly-svg{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}.interactive-section{width:100%;max-width:1200px;margin:100px auto 0;border-radius:32px;overflow:visible;position:relative;z-index:2;padding:0 20px}.navbar{position:sticky;top:0;z-index:100;padding:16px 32px;margin:20px auto 0;max-width:1280px;width:calc(100% - 40px);background:linear-gradient(135deg,#fff,#ecfeff);border:5px solid var(--card-border);border-radius:24px;box-shadow:var(--comic-shadow);position:relative;overflow:hidden;animation:navbarBounce 6s ease-in-out infinite}@keyframes navbarBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.navbar:after{content:"";position:absolute;inset:0;border-radius:28px;background:radial-gradient(circle at 12% 20%,rgba(251,191,36,.22) 0%,transparent 45%),radial-gradient(circle at 88% 80%,rgba(125,211,252,.28) 0%,transparent 45%);pointer-events:none}.navbar .nav-inner{display:flex;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;position:relative;z-index:3}.navbar .logo .logo-text{font-family:Luckiest Guy,Bungee,Fredoka,sans-serif;font-weight:900;font-size:30px;letter-spacing:.12em;background:linear-gradient(135deg,#fb923c,#ec4899 25%,#8b5cf6,#38bdf8 85%,#fbbf24);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rainbowShift 5s ease-in-out infinite;-webkit-text-stroke:2px #0f172a;paint-order:stroke fill;filter:drop-shadow(4px 5px 0 rgba(15,23,42,.24));transition:transform .3s;display:inline-block}.navbar .logo .logo-text:hover{transform:scale(1.08) rotate(-2deg)}.navbar .nav-actions{display:flex;align-items:center;gap:18px}.navbar .nav-actions .user-section,.navbar .nav-actions .auth-section{display:flex;align-items:center;gap:14px}.navbar .nav-actions .nav-link{font-family:Fredoka,Geist Pixel,sans-serif;font-weight:700;font-size:16px;letter-spacing:.04em;color:#1e293b;position:relative;padding:10px 18px;border-radius:18px;transition:all .22s cubic-bezier(.34,1.56,.64,1);border:3px solid transparent}.navbar .nav-actions .nav-link:after{content:"";position:absolute;bottom:4px;left:50%;transform:translate(-50%) scaleX(0);width:60%;height:4px;background:linear-gradient(90deg,var(--bubblegum),var(--coral));transition:transform .25s ease;border-radius:9999px}.navbar .nav-actions .nav-link:hover{color:var(--card-border);background:linear-gradient(135deg,#fbbf242e,#f472b62e);border-color:#0f172a59;transform:translateY(-3px) rotate(-1deg)}.navbar .nav-actions .nav-link:hover:after{transform:translate(-50%) scaleX(1)}.navbar .nav-actions .btn-nav{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:18px;border:4px solid var(--card-border);background:#fff;transition:all .22s cubic-bezier(.34,1.56,.64,1);box-shadow:4px 5px 0 var(--card-border);color:#1e293b;position:relative;cursor:pointer;overflow:visible}.navbar .nav-actions .btn-nav:hover{background:linear-gradient(135deg,var(--sky),var(--mint));transform:translateY(-3px) rotate(-3deg);box-shadow:6px 8px 0 var(--card-border)}.navbar .nav-actions .btn-nav:active{transform:translateY(2px) rotate(2deg);box-shadow:2px 2px 0 var(--card-border)}.navbar .nav-actions .btn-nav.btn-nav-primary{width:auto;padding:12px 26px;background:linear-gradient(135deg,var(--sunshine) 0%,var(--coral) 60%,var(--bubblegum) 100%);font-family:Geist Pixel,Fredoka,sans-serif;font-weight:700;font-size:16px;letter-spacing:.02em;color:#1e293b;box-shadow:5px 7px 0 var(--card-border)}.navbar .nav-actions .btn-nav.btn-nav-primary:hover{transform:translateY(-3px) rotate(-2deg) scale(1.03);box-shadow:7px 10px 0 var(--card-border)}.navbar .nav-actions .btn-nav.btn-feedback{background:linear-gradient(135deg,#f472b6,#fb923c,#fbbf24);color:#fff;animation:feedbackWobble 2.5s ease-in-out infinite;position:relative;overflow:visible}.navbar .nav-actions .btn-nav.btn-feedback:after{content:"!";position:absolute;top:-8px;right:-6px;width:20px;height:20px;background:#ef4444;border:3px solid var(--card-border);border-radius:9999px;display:flex;align-items:center;justify-content:center;font-family:Geist Pixel,Fredoka,sans-serif;font-size:11px;font-weight:800;color:#fff;box-shadow:2px 2px 0 var(--card-border);animation:feedbackBadgeBounce 1.8s ease-in-out infinite}.navbar .nav-actions .btn-nav.btn-feedback:hover{background:linear-gradient(135deg,#ec4899,#f97316,#f59e0b);transform:translateY(-3px) rotate(-4deg) scale(1.08);box-shadow:6px 8px 0 var(--card-border);animation-play-state:paused}.navbar .nav-actions .btn-nav.btn-feedback:hover:after{animation-play-state:paused}.navbar .nav-actions .btn-nav.btn-feedback:active{transform:translateY(2px) rotate(2deg);box-shadow:2px 2px 0 var(--card-border)}@keyframes feedbackWobble{0%,to{transform:rotate(0)}15%{transform:rotate(-6deg) translateY(-2px)}30%{transform:rotate(5deg)}45%{transform:rotate(-3deg)}60%{transform:rotate(2deg)}}@keyframes feedbackBadgeBounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.15)}}.navbar .nav-actions .user-info{display:flex;align-items:center;gap:14px;padding:8px 18px 8px 8px;background:linear-gradient(135deg,#a78bfa33,#7dd3fc33);border-radius:9999px;border:3px solid var(--card-border);box-shadow:4px 5px 0 var(--card-border)}.navbar .nav-actions .user-info .avatar{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:9999px;background:linear-gradient(135deg,var(--sunshine) 0%,var(--bubblegum) 50%,var(--grape) 100%);border:3px solid var(--card-border);box-shadow:3px 3px #0f172a80;color:#1e293b;position:relative;overflow:visible}.navbar .nav-actions .user-info .avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;position:relative;z-index:1}.navbar .nav-actions .user-info .username{font-family:Fredoka,sans-serif;font-weight:700;font-size:16px;color:#1e293b;letter-spacing:.01em}.main-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px 0;max-width:1200px;margin:0 auto;width:100%;position:relative;z-index:2}.hero{text-align:center;margin-bottom:100px;position:relative;z-index:2}.hero .hero-title{font-size:clamp(54px,16vw,180px);font-weight:900;letter-spacing:.02em;margin-bottom:24px;line-height:.95;animation:heroBob 5s ease-in-out infinite}@keyframes heroBob{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-12px) rotate(1deg)}}.hero .gradient-text{-webkit-text-stroke:6px #0f172a;paint-order:stroke fill;filter:drop-shadow(0 10px 0 rgba(15,23,42,.25)) drop-shadow(0 20px 30px rgba(236,72,153,.25))}.hero .hero-subtitle{font-size:clamp(18px,2.8vw,26px);color:#64748b;margin-bottom:10px;letter-spacing:.06em;font-family:Fredoka,sans-serif;font-weight:600;text-transform:uppercase}.hero .hero-subtitle-secondary{font-size:clamp(15px,2.2vw,19px);color:#94a3b8;margin-bottom:56px;letter-spacing:.02em;font-weight:500}.hero:after{content:"try not to laugh";position:absolute;right:clamp(-28px,-4vw,20px);top:clamp(6px,4vw,44px);padding:10px 18px;border:4px solid #0f172a;border-radius:999px;background:#34d399;color:#0f172a;box-shadow:5px 6px #0f172a;font-family:Geist Pixel,Fredoka,sans-serif;font-size:clamp(11px,1.5vw,15px);font-weight:800;letter-spacing:.04em;text-transform:uppercase;transform:rotate(8deg);animation:comicPop .7s ease both .9s,stickerJiggle 2.8s ease-in-out infinite 1.8s}.play-button{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;gap:14px;padding:10px 48px;background:linear-gradient(180deg,#fde68a 0%,var(--sunshine) 35%,var(--coral) 100%);border:5px solid #0f172a;border-radius:22px;color:#1e293b;font-family:Geist Pixel,Fredoka,sans-serif;font-weight:700;font-size:50px;letter-spacing:.04em;text-transform:uppercase;animation:playSquiggly .4s linear infinite,playBounce 3.5s ease-in-out infinite;transition:transform .18s,box-shadow .18s,filter .2s;cursor:pointer;text-decoration:none!important;box-shadow:10px 12px #0f172a,0 30px 60px -20px #f59e0b99;position:relative;overflow:visible}.play-button:hover{animation-play-state:running,paused;transform:translate(-4px,-7px) rotate(-3deg) scale(1.06);box-shadow:14px 18px #0f172a,0 40px 70px -10px #f97316a6}.play-button:active{animation-play-state:paused;transform:translateY(5px) rotate(1deg) scale(.98);box-shadow:3px 4px #0f172a}@keyframes playBounce{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(.5deg)}}@keyframes playSquiggly{0%{filter:url(#squiggly-0)}25%{filter:url(#squiggly-1)}50%{filter:url(#squiggly-2)}75%{filter:url(#squiggly-3)}to{filter:url(#squiggly-4)}}@keyframes squiggly{0%{filter:url(#squiggly-0)}25%{filter:url(#squiggly-1)}50%{filter:url(#squiggly-2)}75%{filter:url(#squiggly-3)}to{filter:url(#squiggly-4)}}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;width:100%;position:relative;z-index:2}.feature-card{position:relative;background:#fff;border:5px solid var(--card-border);border-radius:22px;padding:44px 32px 32px;box-shadow:var(--comic-shadow),0 40px 60px -24px #0f172a40;transition:box-shadow .28s ease,background .28s ease;transform-origin:center;overflow:hidden;will-change:transform}.feature-card:nth-child(1){transform:rotate(-2deg);background:linear-gradient(180deg,#ecfeff,#fff 55%)}.feature-card:nth-child(2){transform:rotate(1deg);background:linear-gradient(180deg,#fef3c7,#fff 55%);animation-delay:.5s}.feature-card:nth-child(3){transform:rotate(-1.5deg);background:linear-gradient(180deg,#fce7f3,#fff 55%);animation-delay:1s}.feature-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 18% 22%,rgba(255,255,255,.85) 0%,transparent 40%),radial-gradient(circle at 85% 92%,rgba(251,191,36,.18) 0%,transparent 45%)}.feature-card:hover{transform:translateY(-14px) rotate(0) scale(1.04);box-shadow:14px 18px 0 var(--card-border),0 50px 80px -30px #0f172a59}.feature-card:before{position:absolute;top:-17px;right:20px;padding:7px 13px;border:4px solid #0f172a;border-radius:999px;box-shadow:4px 5px #0f172a;color:#0f172a;font-family:Geist Pixel,Fredoka,sans-serif;font-size:13px;font-weight:800;letter-spacing:.03em;z-index:4;transform:rotate(7deg)}.feature-card:nth-child(1):before{content:"FOCUS!";background:#7dd3fc}.feature-card:nth-child(2):before{content:"NOPE!";background:#f472b6}.feature-card:nth-child(3):before{content:"GO!";background:#fbbf24}.feature-card .feature-icon{width:92px;height:92px;display:flex;align-items:center;justify-content:center;border-radius:18px;border:5px solid var(--card-border);margin:0 auto 28px;position:relative;overflow:visible;box-shadow:5px 6px 0 var(--card-border);color:#1e293b;animation:floaty 3.8s ease-in-out infinite;will-change:transform}.feature-card:nth-child(1) .feature-icon{background:linear-gradient(135deg,var(--sunshine),var(--coral))}.feature-card:nth-child(2) .feature-icon{background:linear-gradient(135deg,var(--bubblegum),var(--grape))}.feature-card:nth-child(3) .feature-icon{background:linear-gradient(135deg,var(--sky),var(--mint))}@keyframes floaty{0%,to{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-12px) rotate(4deg)}}.feature-card .feature-title{font-family:Fredoka,Bungee,sans-serif;font-size:28px;font-weight:700;margin-bottom:14px;letter-spacing:-.01em;color:#0f172a;text-align:center;position:relative;z-index:3}@keyframes stickerJiggle{0%,to{transform:rotate(8deg) scale(1)}50%{transform:rotate(5deg) scale(1.04)}}.feature-card .feature-desc{color:#64748b;font-size:16px;line-height:1.65;text-align:center;font-family:Fredoka,sans-serif;font-weight:500;position:relative;z-index:3}@media(max-width:768px){.navbar{padding:14px 16px;margin:12px auto 0;width:calc(100% - 24px);border-radius:22px;box-shadow:6px 8px 0 var(--card-border);animation:none;overflow:visible}.navbar .nav-inner{flex-direction:column;align-items:stretch;gap:14px}.navbar .logo{text-align:center}.navbar .nav-actions,.navbar .nav-actions .user-section,.navbar .nav-actions .auth-section{gap:10px;flex-wrap:wrap;justify-content:center;width:100%}.navbar .nav-actions .nav-link{font-size:14px;padding:8px 14px}.navbar .nav-actions .user-info{padding:6px 14px 6px 6px}.navbar .nav-actions .user-info .username{display:none}.navbar .nav-actions .user-info .avatar{width:40px;height:40px}.navbar .nav-actions .btn-nav{width:46px;height:46px;border-radius:16px}.navbar .nav-actions .btn-nav.btn-feedback{animation:none}.navbar .nav-actions .btn-nav.btn-feedback:after{top:-6px;right:-4px;width:17px;height:17px;font-size:10px}.navbar .nav-actions .btn-nav.btn-nav-primary{width:auto;padding:10px 22px;font-size:14px}.navbar .logo .logo-text{font-size:22px;letter-spacing:.1em}.main-content{padding:36px 18px 0}.hero{margin-bottom:64px}.hero .hero-title{font-size:clamp(52px,17vw,96px)}.hero .gradient-text{-webkit-text-stroke:4px #0f172a}.hero:after{top:auto;right:50%;bottom:-26px;transform:translate(50%) rotate(4deg);white-space:nowrap;box-shadow:4px 5px #0f172a}.play-button{font-size:30px;padding:8px 32px;border-radius:22px;box-shadow:6px 8px #0f172a}.features-grid{grid-template-columns:1fr;gap:28px}.feature-card{padding:36px 24px 28px}.feature-card:nth-child(n){transform:rotate(0)}.feature-card .feature-title{font-size:22px}.feature-card .feature-icon{width:78px;height:78px;border-radius:22px}.interactive-section{margin-top:70px;border-radius:22px;padding:0 10px}}@media(max-width:480px){.homepage-container{padding-bottom:44px}.navbar{width:calc(100% - 18px);padding:12px;border-width:4px;box-shadow:4px 5px 0 var(--card-border)}.navbar .nav-actions .nav-link{font-size:13px;padding:7px 10px}.navbar .nav-actions .btn-nav{width:40px;height:40px;border-width:3px;border-radius:14px}.main-content{padding:30px 12px 0}.hero{margin-bottom:58px}.hero .hero-title{font-size:clamp(42px,16vw,58px);margin-bottom:16px}.hero .gradient-text{-webkit-text-stroke:3px #0f172a}.hero .hero-subtitle{font-size:14px;letter-spacing:.03em}.hero .hero-subtitle-secondary{font-size:13px;margin-bottom:42px}.hero:after{bottom:-18px;padding:7px 12px;border-width:3px;font-size:10px}.play-button{font-size:22px;padding:8px 24px;border-width:4px;box-shadow:4px 5px #0f172a}.feature-card{border-radius:18px;padding:32px 16px 22px;border-width:4px;box-shadow:5px 6px 0 var(--card-border)}.feature-card:before{top:-13px;right:14px;padding:5px 10px;border-width:3px;font-size:11px}.feature-card .feature-icon{width:68px;height:68px;border-radius:18px}.feature-card .feature-title{font-size:20px}.feature-card .feature-desc{font-size:14px}.navbar .nav-actions .btn-nav.btn-nav-primary{font-size:13px;padding:8px 18px}}@media(max-width:380px){.navbar{padding:10px}.navbar .logo .logo-text{font-size:18px}.navbar .nav-actions{gap:8px}.navbar .nav-actions .btn-nav.btn-nav-primary{font-size:12px;padding:6px 14px}.hero .hero-subtitle{font-size:14px}.play-button{font-size:18px;padding:8px 20px;border-width:4px;border-radius:20px}.main-content{padding:26px 10px 0}.features-grid{gap:22px}.feature-card{padding:24px 16px 20px}.feature-card .feature-icon{width:60px;height:60px;border-radius:16px}.feature-card .feature-title{font-size:18px}}.interactive-text-container{width:100%;min-height:580px;background:radial-gradient(ellipse 80% 50% at 20% 0%,rgba(251,191,36,.35) 0%,transparent 55%),radial-gradient(ellipse 70% 60% at 100% 20%,rgba(244,114,182,.28) 0%,transparent 55%),radial-gradient(ellipse 100% 70% at 50% 100%,rgba(125,211,252,.38) 0%,transparent 60%),linear-gradient(180deg,#fff7ed,#fef3c7 20%,#dbeafe,#fce7f3);border:4px solid #0f172a;border-radius:28px;box-shadow:8px 10px #0f172a,0 30px 60px -20px #0f172a40,0 0 0 8px #ffffff8c inset;display:flex;justify-content:center;align-items:center;overflow:hidden;font-family:Luckiest Guy,Bungee,Arial Black,sans-serif;position:relative;padding:40px 20px}.interactive-text-container:before{content:"";position:absolute;top:10px;left:50%;transform:translate(-50%);width:55%;height:10px;background:#ffffffe6;border-radius:9999px;filter:blur(1px);z-index:2;opacity:.9}.interactive-text-container:after{content:"";position:absolute;inset:0;border-radius:28px;background:radial-gradient(circle at 15% 15%,rgba(255,255,255,.7) 0%,transparent 40%),radial-gradient(circle at 85% 90%,rgba(125,211,252,.25) 0%,transparent 45%);pointer-events:none;mix-blend-mode:screen;z-index:1}.confetti-bg:before,.confetti-bg:after{content:"";position:absolute;width:100%;height:100%;background-image:radial-gradient(circle 5px at 10% 20%,#fbbf24 99%,transparent 100%),radial-gradient(circle 4px at 30% 70%,#f472b6 99%,transparent 100%),radial-gradient(circle 6px at 70% 30%,#7dd3fc 99%,transparent 100%),radial-gradient(circle 5px at 85% 80%,#34d399 99%,transparent 100%),radial-gradient(circle 4px at 50% 50%,#a78bfa 99%,transparent 100%),radial-gradient(circle 5px at 20% 90%,#fb923c 99%,transparent 100%);background-repeat:repeat;background-size:500px 500px;opacity:.5;animation:confettiDrift 22s linear infinite}.stage{position:relative;width:100%;min-height:580px;max-width:1200px;display:flex;justify-content:center;align-items:center;z-index:3}.container{text-align:right;font-size:13rem;line-height:.82;font-weight:900;letter-spacing:-2px;color:#fff;text-transform:uppercase;transition:filter .15s ease,font-size .2s ease;display:flex;flex-direction:column;align-items:flex-end;-webkit-text-stroke:4px #0f172a;paint-order:stroke fill;position:relative;animation:wobbleCombo 3.2s ease-in-out infinite}.container .line-1,.container .line-2{background:linear-gradient(135deg,#fb923c,#ec4899 20%,#8b5cf6,#38bdf8 70%,#10b981 90%,#fbbf24);background-size:300% 300%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:rainbowShift 5s ease-in-out infinite;filter:drop-shadow(0 6px 0 rgba(15,23,42,.18))}@keyframes wobbleCombo{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-8px) rotate(-2deg)}50%{transform:translateY(-14px) rotate(2deg)}75%{transform:translateY(-6px) rotate(-1deg)}}.line-1,.line-2{padding-right:4px}.line-1:empty,.line-2:empty{display:none}.svg-filters{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}@media(max-width:700px){.interactive-text-container{min-height:440px;padding:32px 16px}.stage{min-height:440px}.container{font-size:5.5rem;line-height:.78;-webkit-text-stroke:3px #0f172a}}@media(max-width:450px){.interactive-text-container{min-height:360px;padding:24px 12px;border-radius:22px}.stage{min-height:360px}.container{font-size:4rem;line-height:.75;-webkit-text-stroke:2.5px #0f172a}}.feedback-modal-overlay{position:fixed;inset:0;background:#0f172a8c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto}.feedback-modal-overlay:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle 5px at 10% 15%,rgba(251,191,36,.35) 99%,transparent 100%),radial-gradient(circle 4px at 85% 30%,rgba(244,114,182,.35) 99%,transparent 100%),radial-gradient(circle 6px at 25% 80%,rgba(56,189,248,.35) 99%,transparent 100%),radial-gradient(circle 5px at 70% 70%,rgba(16,185,129,.35) 99%,transparent 100%);background-size:400px 400px;background-repeat:repeat;opacity:.6;pointer-events:none;animation:confettiDrift 25s linear infinite}.feedback-modal{position:relative;width:100%;max-width:720px;max-height:90vh;overflow-y:auto;background:linear-gradient(180deg,#fffbeb,#fff 40%,#eff6ff);border:5px solid var(--card-border);border-radius:32px;box-shadow:10px 14px 0 var(--card-border),0 50px 80px -20px #0f172a66;padding:32px 28px 28px;z-index:2}.feedback-modal::-webkit-scrollbar{width:12px}.feedback-modal::-webkit-scrollbar-track{background:#f1f5f9;border-radius:0 28px 28px 0}.feedback-modal::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--grape),var(--sky));border-radius:9999px;border:3px solid #f1f5f9}.confetti-container{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:50;border-radius:32px}.confetti-piece{position:absolute;width:12px;height:12px;border-radius:3px;animation:confettiFall 2.5s ease-out forwards;border:2px solid var(--card-border);box-shadow:2px 2px #0f172a4d}@keyframes confettiFall{0%{transform:translateY(0) rotate(0);opacity:1}70%{opacity:1}to{transform:translateY(600px) rotate(720deg);opacity:0}}.spin-icon{animation:spin .9s linear infinite;transform-origin:center}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.feedback-close-btn{position:absolute;top:20px;right:20px;width:48px;height:48px;border-radius:18px;background:#fff;border:4px solid var(--card-border);color:#1e293b;box-shadow:4px 5px 0 var(--card-border);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);z-index:10}.feedback-close-btn:before{content:"";position:absolute;top:5px;left:50%;transform:translate(-50%);width:45%;height:5px;background:#ffffffe6;border-radius:9999px;opacity:.9;pointer-events:none}.feedback-close-btn:hover{background:linear-gradient(135deg,#fecaca,#fca5a5);transform:translateY(-3px) rotate(8deg);box-shadow:5px 7px 0 var(--card-border)}.feedback-close-btn:active{transform:translateY(2px) rotate(-4deg);box-shadow:2px 2px 0 var(--card-border)}.feedback-header{display:flex;align-items:center;gap:18px;margin-bottom:24px;position:relative;z-index:2}.feedback-header-icon{width:82px;height:82px;border-radius:26px;border:4px solid var(--card-border);background:linear-gradient(135deg,#f472b6,#fb923c,#fbbf24);box-shadow:5px 7px 0 var(--card-border);display:flex;align-items:center;justify-content:center;color:#fff;position:relative;animation:floaty 3.5s ease-in-out infinite}.feedback-header-icon:after{content:"";position:absolute;top:7px;left:50%;transform:translate(-50%);width:50%;height:8px;background:#ffffffe6;border-radius:9999px;opacity:.9}.feedback-title{font-size:36px;font-weight:800;letter-spacing:-.02em;font-family:Fredoka,Geist Pixel,sans-serif;margin:0;line-height:1.05}.feedback-subtitle{font-family:Fredoka,sans-serif;color:#64748b;font-size:17px;margin-top:4px;font-weight:500}.feedback-tabs{display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap;position:relative;z-index:2;padding:8px;background:#fff9;border:3px solid var(--card-border);border-radius:22px;box-shadow:4px 5px 0 var(--card-border)}.feedback-tab{flex:1;min-width:130px;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;background:#fff;border:3px solid transparent;border-radius:16px;font-family:Fredoka,Geist Pixel,sans-serif;font-weight:700;font-size:14px;color:#475569;cursor:pointer;transition:all .22s cubic-bezier(.34,1.56,.64,1)}.feedback-tab:hover{transform:translateY(-2px);color:var(--card-border);background:linear-gradient(135deg,#7dd3fc33,#a78bfa33)}.feedback-tab.active{background:linear-gradient(135deg,var(--sunshine) 0%,var(--coral) 60%,var(--bubblegum) 100%);color:var(--card-border);border-color:var(--card-border);box-shadow:3px 4px 0 var(--card-border);transform:translateY(-1px)}.feedback-content{position:relative;z-index:2}.feedback-section{margin-bottom:22px}.section-heading{font-family:Fredoka,Geist Pixel,sans-serif;font-weight:700;font-size:19px;color:#0f172a;margin-bottom:16px;display:flex;align-items:center;gap:10px}.section-heading svg{color:var(--grape)}.rating-section{background:linear-gradient(180deg,#fffbeb,#fff);border:4px solid var(--card-border);border-radius:26px;padding:26px 22px;box-shadow:5px 7px 0 var(--card-border);text-align:center;position:relative;overflow:hidden}.rating-section:before{content:"";position:absolute;top:10px;left:50%;transform:translate(-50%);width:45%;height:8px;background:#ffffffe6;border-radius:9999px;opacity:.9}.stars-container{display:flex;justify-content:center;gap:10px;margin:18px 0 14px}.star-btn{background:none;border:none;padding:6px;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);color:var(--card-border)}.star-btn:hover{transform:translateY(-6px) scale(1.15) rotate(-6deg)}.star-btn:active{transform:translateY(2px) scale(.92)}.star-btn.filled{color:var(--sunshine)}.star-btn.filled svg{animation:squish .4s ease}.rating-label{font-family:Fredoka,sans-serif;font-weight:700;font-size:22px;color:var(--card-border);background:linear-gradient(135deg,#fbbf2440,#f9731640);padding:10px 22px;border-radius:9999px;display:inline-block;border:3px solid var(--card-border);box-shadow:3px 4px 0 var(--card-border)}.feedback-form{background:linear-gradient(180deg,#ecfeff,#fff);border:4px solid var(--card-border);border-radius:26px;padding:26px 22px;box-shadow:5px 7px 0 var(--card-border);position:relative;overflow:hidden}.feedback-form:before{content:"";position:absolute;top:10px;left:50%;transform:translate(-50%);width:45%;height:8px;background:#ffffffe6;border-radius:9999px;opacity:.9}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.form-group{margin-bottom:14px}.form-group label{display:block;font-family:Fredoka,sans-serif;font-weight:700;font-size:14px;color:#334155;margin-bottom:8px;letter-spacing:.02em}.form-input{width:100%;padding:14px 16px;background:#fff;border:3px solid var(--card-border);border-radius:18px;font-family:Fredoka,sans-serif;font-size:15px;color:#0f172a;outline:none;transition:all .2s;box-shadow:3px 4px #0f172a33;caret-color:auto;-webkit-user-select:text;user-select:text}.form-input::placeholder{color:#94a3b8;font-weight:400}.form-input:focus{border-color:var(--grape-deep);box-shadow:4px 5px 0 var(--grape),0 0 0 5px #8b5cf626;transform:translateY(-1px)}.form-textarea{resize:vertical;min-height:110px;line-height:1.55}.checkbox-label{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:linear-gradient(135deg,#10b9811f,#38bdf81f);border:3px solid var(--card-border);border-radius:16px;font-family:Fredoka,sans-serif;font-weight:500;font-size:14px;color:#1e293b;cursor:pointer;transition:all .2s;margin-bottom:18px}.checkbox-label input[type=checkbox]{width:22px;height:22px;accent-color:var(--grape-deep);margin-top:2px;cursor:pointer}.checkbox-label:hover{background:linear-gradient(135deg,#10b98133,#38bdf833);transform:translateY(-1px)}.submit-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px}.submit-btn:disabled{opacity:.5;cursor:not-allowed;animation-play-state:paused;transform:none!important;box-shadow:6px 8px 0 var(--card-border)!important}.success-content{text-align:center;padding:40px 20px}.success-icon{display:inline-block;margin-bottom:20px;background:linear-gradient(135deg,var(--sunshine),var(--coral));padding:24px;border-radius:32px;border:4px solid var(--card-border);box-shadow:6px 8px 0 var(--card-border);color:#fff}.success-title{font-size:48px;font-weight:800;letter-spacing:-.01em;margin-bottom:12px;-webkit-text-stroke:3px var(--card-border);paint-order:stroke fill;filter:drop-shadow(0 6px 0 rgba(15,23,42,.2))}.success-subtitle{font-family:Fredoka,sans-serif;font-size:18px;color:#475569;margin-bottom:10px;line-height:1.5;font-weight:500}.success-tip{font-family:Geist Pixel,Fredoka,sans-serif;font-weight:700;font-size:15px;color:var(--grape-deep);animation:bounceSoft 1.2s ease-in-out infinite}.github-section{margin-bottom:26px}.github-card{padding:28px 24px;text-align:center;position:relative;z-index:2}.github-icon-wrap{display:inline-flex;width:110px;height:110px;align-items:center;justify-content:center;border-radius:32px;background:linear-gradient(135deg,#0f172a,#334155 60%,#475569);color:#fff;border:4px solid var(--card-border);box-shadow:5px 7px 0 var(--card-border);margin-bottom:18px;position:relative;animation:floaty 4s ease-in-out infinite}.github-icon-wrap:after{content:"";position:absolute;top:9px;left:50%;transform:translate(-50%);width:50%;height:9px;background:#ffffff26;border-radius:9999px}.github-heading{font-family:Fredoka,Geist Pixel,sans-serif;font-size:26px;font-weight:800;color:#0f172a;margin-bottom:10px}.github-text{font-family:Fredoka,sans-serif;color:#475569;font-size:16px;line-height:1.65;margin-bottom:22px;font-weight:500}.github-text svg{color:#ec4899}.github-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}.stat-item{background:linear-gradient(180deg,#fff,#f8fafc);border:3px solid var(--card-border);border-radius:18px;padding:14px 10px;box-shadow:3px 4px 0 var(--card-border);display:flex;align-items:center;justify-content:center;gap:10px}.stat-item svg{color:var(--grape);flex-shrink:0}.stat-item:nth-child(1) svg{color:var(--bubblegum)}.stat-item:nth-child(2) svg{color:var(--sunshine)}.stat-item:nth-child(3) svg{color:var(--mint)}.stat-num{display:block;font-family:Geist Pixel,Fredoka,sans-serif;font-weight:800;font-size:17px;color:#0f172a;line-height:1.1}.stat-label{display:block;font-family:Fredoka,sans-serif;font-weight:500;font-size:11px;color:#64748b;margin-top:2px}.github-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-bottom:16px}.github-btn{display:flex;align-items:center;gap:10px;text-decoration:none!important}.github-note{font-family:Fredoka,sans-serif;color:#64748b;font-size:13px;margin:0;display:inline-flex;align-items:center;gap:6px}.github-note svg{color:var(--sunshine)}.proof-section .section-heading svg{color:var(--sky-deep)}.proof-subheading{font-family:Fredoka,sans-serif;color:#64748b;font-size:13px;margin:-8px 0 14px;font-weight:500;padding-left:30px}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.proof-card{border:3px solid var(--card-border);border-radius:20px;padding:16px 14px;box-shadow:4px 5px 0 var(--card-border);position:relative;overflow:hidden;transition:all .3s cubic-bezier(.34,1.56,.64,1);cursor:default}.proof-card:nth-child(1){background:linear-gradient(180deg,#fef3c7,#fff);transform:rotate(-2deg)}.proof-card:nth-child(2){background:linear-gradient(180deg,#dcfce7,#fff);transform:rotate(1.5deg)}.proof-card:nth-child(3){background:linear-gradient(180deg,#ede9fe,#fff);transform:rotate(-1deg)}.proof-card:before{content:"";position:absolute;top:7px;left:50%;transform:translate(-50%);width:40%;height:6px;background:#ffffffe6;border-radius:9999px;opacity:.9}.proof-card:hover{transform:rotate(0) translateY(-4px);box-shadow:6px 9px 0 var(--card-border)}.proof-emoji{font-size:42px;margin-bottom:10px;text-align:center;animation:bounceSoft 2.2s ease-in-out infinite}.proof-text{font-family:Fredoka,sans-serif;font-size:13px;color:#334155;line-height:1.55;margin-bottom:10px;font-weight:500}.proof-tag{display:inline-block;font-family:Geist Pixel,Fredoka,sans-serif;font-weight:700;font-size:11px;padding:5px 10px;border-radius:9999px;background:#0f172ad9;color:#fff;letter-spacing:.02em}.wall-header{margin-bottom:22px}.wall-summary{padding:20px;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;z-index:2}.wall-empty{padding:32px 26px;text-align:center;position:relative;z-index:2;background:linear-gradient(180deg,#fffbeb,#fff 55%,#ede9fe)}.wall-empty-emoji{font-size:64px;margin-bottom:12px;animation:bounceSoft 1.8s ease-in-out infinite;display:inline-block}.wall-empty-title{font-family:Fredoka,Geist Pixel,sans-serif;font-size:22px;font-weight:700;color:#0f172a;margin-bottom:10px;letter-spacing:-.01em}.wall-empty-desc{font-family:Fredoka,sans-serif;font-size:15px;color:#475569;line-height:1.6;margin-bottom:18px;font-weight:500}.wall-empty-btn{display:inline-flex;align-items:center;gap:10px;justify-content:center}.wall-rating-num{display:block;font-family:Geist Pixel,Fredoka,sans-serif;font-size:60px;font-weight:800;color:var(--coral-deep);line-height:1;-webkit-text-stroke:2px var(--card-border);filter:drop-shadow(0 4px 0 rgba(15,23,42,.2))}.wall-stars{display:flex;justify-content:center;gap:4px;margin:8px 0 6px;color:var(--sunshine)}.wall-count{font-family:Fredoka,sans-serif;font-weight:600;color:#64748b;font-size:14px}.wall-list{display:flex;flex-direction:column;gap:14px}.testimonial-card{background:linear-gradient(180deg,#fff,#fef9ff);border:4px solid var(--card-border);border-radius:24px;padding:18px 18px 14px;box-shadow:5px 7px 0 var(--card-border);transition:all .3s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}.testimonial-card:before{content:"";position:absolute;top:9px;left:50%;transform:translate(-50%);width:45%;height:7px;background:#ffffffe6;border-radius:9999px;opacity:.9;z-index:2}.testimonial-card:nth-child(2n){background:linear-gradient(180deg,#fff,#eff6ff)}.testimonial-card:hover{transform:translateY(-5px) rotate(0)!important;box-shadow:7px 11px 0 var(--card-border)}.testimonial-card.verified{background:linear-gradient(180deg,#fff,#f0fdf4)}.testimonial-card.verified:after{content:"";position:absolute;inset:0;border-radius:24px;background:radial-gradient(circle at 92% 8%,rgba(16,185,129,.22) 0%,transparent 35%);pointer-events:none}.testi-top{display:flex;align-items:center;gap:12px;margin-bottom:12px;position:relative;z-index:3}.testi-avatar{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,var(--sunshine),var(--bubblegum));border:3px solid var(--card-border);box-shadow:3px 4px 0 var(--card-border);display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0}.testi-info{flex:1;min-width:0}.testi-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.testi-name{font-family:Fredoka,Geist Pixel,sans-serif;font-weight:700;font-size:16px;color:#0f172a}.verified-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:linear-gradient(135deg,var(--mint),var(--sky));color:#fff;border-radius:9999px;font-family:Geist Pixel,Fredoka,sans-serif;font-weight:700;font-size:10px;border:2px solid var(--card-border);box-shadow:2px 2px 0 var(--card-border)}.testi-stars{display:flex;align-items:center;gap:2px;color:var(--sunshine);flex-wrap:wrap}.testi-date{font-family:Fredoka,sans-serif;font-weight:500;font-size:12px;color:#94a3b8;margin-left:6px}.testi-text{font-family:Fredoka,sans-serif;font-size:15px;color:#334155;line-height:1.6;margin-bottom:12px;font-weight:500;position:relative;z-index:3}.testi-actions{position:relative;z-index:3}.like-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;background:#fff;border:3px solid var(--card-border);border-radius:9999px;font-family:Geist Pixel,Fredoka,sans-serif;font-weight:700;font-size:13px;color:#475569;cursor:pointer;box-shadow:2px 3px 0 var(--card-border);transition:all .2s cubic-bezier(.34,1.56,.64,1)}.like-btn:hover{transform:translateY(-2px);color:var(--bubblegum-deep);box-shadow:3px 4px 0 var(--card-border)}.like-btn:active{transform:translateY(1px);box-shadow:1px 1px 0 var(--card-border)}.like-btn.liked{background:linear-gradient(135deg,#f472b633,#fbbf2433);color:var(--bubblegum-deep)}.like-btn.liked svg{fill:currentColor;animation:squish .35s ease}@media(max-width:768px){.feedback-modal{padding:24px 18px 18px;border-radius:26px;border-width:4px;box-shadow:7px 10px 0 var(--card-border);max-height:92vh}.feedback-close-btn{top:14px;right:14px;width:42px;height:42px;border-radius:16px}.feedback-header{flex-direction:column;text-align:center;gap:12px;margin-bottom:18px;padding-right:36px}.feedback-header-icon{width:68px;height:68px;border-radius:22px}.feedback-header-icon svg{width:30px;height:30px}.feedback-title{font-size:26px}.feedback-subtitle{font-size:15px}.feedback-tabs{padding:6px;border-radius:18px;gap:6px}.feedback-tab{min-width:0;padding:10px;font-size:12px;gap:5px}.feedback-tab svg{width:15px;height:15px}.rating-section{padding:22px 16px;border-radius:22px}.stars-container{gap:6px;margin:14px 0 12px}.star-btn svg{width:40px;height:40px}.rating-label{font-size:18px;padding:8px 18px}.feedback-form{padding:22px 16px;border-radius:22px}.form-row{grid-template-columns:1fr;gap:0}.github-card{padding:22px 18px}.github-icon-wrap{width:88px;height:88px}.github-icon-wrap svg{width:44px;height:44px}.github-heading{font-size:22px}.github-text{font-size:15px}.github-stats{grid-template-columns:repeat(3,1fr);gap:8px}.stat-item{flex-direction:column;gap:6px;padding:12px 8px;border-radius:15px}.stat-num{font-size:15px;text-align:center}.stat-label{font-size:10px;text-align:center}.github-actions{flex-direction:column}.github-btn{width:100%;justify-content:center}.proof-grid{grid-template-columns:1fr}.proof-card:nth-child(n){transform:rotate(0)}.proof-subheading{padding-left:0;text-align:center}.wall-rating-num{font-size:46px}.wall-empty{padding:26px 20px}.wall-empty-emoji{font-size:52px}.wall-empty-title{font-size:19px}.wall-empty-desc{font-size:14px}.wall-empty-btn{width:100%;max-width:280px}.success-title{font-size:32px}.success-subtitle{font-size:16px}.testimonial-card{padding:16px 14px 12px;border-radius:20px}.testi-avatar{width:46px;height:46px;font-size:22px;border-radius:15px}.testi-name,.testi-text{font-size:14px}}@media(max-width:420px){.feedback-tabs{flex-direction:column;align-items:stretch}.feedback-tab{justify-content:center}.star-btn svg{width:34px;height:34px}.github-stats{grid-template-columns:1fr}}*{margin:0;padding:0;box-sizing:border-box}.app-container{min-height:100vh;background-color:#0f172a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e2e8f0}.app-header{display:flex;justify-content:space-between;align-items:center;padding:24px 40px;border-bottom:1px solid rgba(255,255,255,.05)}.header-left{text-align:left}.header-right{display:flex;align-items:center;gap:16px}.user-info{font-size:16px;color:#cbd5e1}.logout-btn{background-color:transparent;border:1px solid rgba(255,255,255,.1);padding:8px 20px;border-radius:8px;color:#ef4444;cursor:pointer;transition:all .2s ease;font-weight:600}.logout-btn:hover{background-color:#ef44441a;border-color:#ef44444d}.app-title{font-size:36px;font-weight:700;background:linear-gradient(135deg,#6366f1,#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.app-subtitle{font-size:16px;color:#64748b}.main-content{max-width:1600px;margin:0 auto;padding:32px 20px;display:grid;grid-template-columns:2fr 1fr;gap:32px}.video-section{display:flex;flex-direction:column;gap:20px}.video-wrapper{position:relative;border-radius:16px;overflow:hidden;background-color:#1e293b;border:1px solid rgba(255,255,255,.05);width:100%;height:100%}.video,.mesh-canvas{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.video{transform:scaleX(-1)}.mesh-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.loader{position:absolute;inset:0;background:#0f172af2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:10}.loader-spinner{width:50px;height:50px;border:3px solid rgba(99,102,241,.2);border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite}.loader-text{font-size:16px;color:#94a3b8}.calibration{position:absolute;inset:0;background:#0f172ae6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:10}.calibration-circle{width:100px;height:100px;border:2px solid #6366f1;border-radius:50%;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.1);opacity:1}}.calibration-number{font-size:48px;font-weight:700;color:#6366f1}.calibration-text{font-size:14px;color:#94a3b8}.calibrate-btn{padding:14px 28px;background:linear-gradient(135deg,#6366f1,#a855f7);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s ease,transform .2s ease;align-self:center}.calibrate-btn:hover:not(:disabled){transform:translateY(-2px);opacity:.9}.calibrate-btn:disabled{opacity:.5;cursor:not-allowed}.smile-section{background-color:#1e293b;border:1px solid rgba(255,255,255,.05);border-radius:16px;padding:24px}.smile-bar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.smile-label{font-size:16px;font-weight:600}.smile-value{font-size:18px;font-weight:700;color:#22c55e}.smile-bar-container{height:12px;background-color:#ffffff0d;border-radius:12px;overflow:hidden}.smile-bar-fill{height:100%;border-radius:12px;transition:width .15s ease}.eyes-status-container{display:flex;flex-direction:column;gap:16px}.eyes-status{background-color:#1e293b;border:1px solid rgba(255,255,255,.05);border-radius:16px;padding:16px 20px;display:flex;align-items:center;gap:16px}.eyes-status.good{border-color:#22c55e4d}.eyes-status.bad{border-color:#ef44444d;animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.eyes-icon{font-size:32px}.eyes-status-content{flex:1;display:flex;flex-direction:column;gap:8px}.eyes-text{font-size:15px;font-weight:600}.eyes-status.good .eyes-text{color:#22c55e}.eyes-status.bad .eyes-text{color:#ef4444}.eyes-score-bar{height:6px;background-color:#ffffff0d;border-radius:6px;overflow:hidden}.eyes-score-fill{height:100%;border-radius:6px;transition:width .15s ease,background-color .15s ease}.data-section{display:flex;flex-direction:column;gap:20px}.data-card{background-color:#1e293b;border:1px solid rgba(255,255,255,.05);border-radius:16px;padding:24px}.data-label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px}.expression-display{font-size:32px;font-weight:700;margin:0}.confidence-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.confidence-value{font-size:16px;font-weight:700}.confidence-bar{height:8px;background-color:#ffffff0d;border-radius:8px;overflow:hidden}.confidence-fill{height:100%;border-radius:8px;transition:width .2s ease}.valence-arousal{display:flex;justify-content:space-between;gap:20px}.valence-arousal-item{flex:1;text-align:center}.valence-arousal-label{display:block;font-size:12px;color:#64748b;margin-bottom:8px}.valence-arousal-value{font-size:24px;font-weight:700}.blendshapes-card{flex:1;overflow-y:auto;max-height:500px}.blendshapes-list{display:flex;flex-direction:column;gap:16px}.blendshape-item{display:flex;flex-direction:column;gap:8px}.blendshape-info{display:flex;justify-content:space-between;align-items:center}.blendshape-name{font-size:14px;font-weight:500}.blendshape-value{font-size:14px;font-weight:700;color:#94a3b8}.blendshape-bar{height:6px;background-color:#ffffff0d;border-radius:6px;overflow:hidden}.blendshape-fill{height:100%;border-radius:6px;transition:width .15s ease}@media(max-width:1024px){.main-content{grid-template-columns:1fr}}@media(max-width:768px){.app-header{flex-direction:column;padding:20px;gap:16px;align-items:flex-start}.header-right{width:100%;justify-content:space-between}.app-title{font-size:28px}.main-content{padding:20px 14px;gap:20px}.smile-section,.data-card,.eyes-status{padding:18px}.expression-display{font-size:26px}}@media(max-width:480px){.app-header{padding:16px 14px}.header-right{flex-direction:column;align-items:stretch;gap:12px}.user-info{font-size:14px;text-align:center}.logout-btn{width:100%}.app-title{font-size:22px;margin-bottom:4px}.app-subtitle{font-size:13px}.main-content{padding:16px 10px;gap:16px}.smile-section,.data-card{padding:14px}.eyes-status{padding:12px 14px}.valence-arousal{flex-direction:column;gap:14px}.expression-display{font-size:22px}}@media(max-width:380px){.smile-section,.data-card{padding:12px}.expression-display{font-size:18px}.smile-label,.eyes-text,.data-label{font-size:12px}.smile-value,.valence-arousal-value{font-size:14px}}.game-page{position:fixed;top:0;left:0;width:100vw;height:100vh;overflow:hidden;background:linear-gradient(180deg,#fff7ed,#fef3c7,#fce7f3);z-index:1}.back-btn{position:fixed;top:24px;left:24px;z-index:100;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px;border:5px solid #0f172a;background:linear-gradient(135deg,#fff,#ecfeff);color:#0f172a;box-shadow:5px 6px #0f172a;transition:all .2s cubic-bezier(.34,1.56,.64,1);cursor:pointer}.back-btn:hover{transform:translate(-2px,-2px) rotate(-3deg);box-shadow:7px 8px #0f172a;animation:wiggle .4s ease-in-out infinite}.back-btn:active{transform:translate(3px,4px);box-shadow:2px 2px #0f172a}.back-btn svg{width:28px;height:28px;stroke-width:3}.level-indicator{position:fixed;top:24px;left:50%;transform:translate(-50%);z-index:100;padding:16px 40px;text-align:center;border-radius:18px;border:5px solid #0f172a;background:linear-gradient(180deg,#fde68a,#fbbf24,#fb923c);box-shadow:9px 11px #0f172a;transform:translate(-50%) rotate(-1deg)}.level-number{font-family:Fredoka,Comic Sans MS,cursive,sans-serif;font-size:32px;font-weight:800;color:#0f172a;letter-spacing:.02em;text-shadow:2px 2px 0 rgba(255,255,255,.5);line-height:1}.tagline{font-size:12px;margin-top:4px;color:#0f172a;letter-spacing:.12em;text-transform:uppercase;font-weight:700;opacity:.8;font-family:Fredoka,sans-serif}.face-circle{position:fixed;top:24px;right:24px;width:200px;height:200px;border-radius:50%;overflow:hidden;z-index:100;padding:0;border:5px solid #0f172a;box-shadow:9px 11px #0f172a;background:linear-gradient(135deg,#fff,#fce7f3);box-sizing:border-box}.face-circle:before{content:"";position:absolute;inset:8px;border-radius:50%;border:4px solid rgba(255,255,255,.7);z-index:5;pointer-events:none}.face-circle-inner{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.fullscreen-video{position:fixed;top:0;left:0;width:100vw;height:100vh;object-fit:cover;object-position:center center;display:block;max-width:100%;max-height:100%;margin:0;padding:0;border:none}.loading-screen{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:28px;background:linear-gradient(180deg,#fff7ed,#fef3c7,#fce7f3)}.loader-text{font-size:22px;color:#0f172a;font-family:Fredoka,Comic Sans MS,cursive,sans-serif;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.start-screen-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 1px 1px,rgba(15,23,42,.16) 1px,transparent 0),#fffaf0e0;background-size:18px 18px,auto;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;justify-content:center;align-items:center;z-index:200;padding:20px;box-sizing:border-box}.start-screen-content{padding:56px 64px;text-align:center;background:linear-gradient(135deg,#fff,#ecfeff 52%,#fef3c7);border-radius:24px;border:5px solid #0f172a;box-shadow:10px 12px #0f172a;max-width:560px;width:100%;box-sizing:border-box;position:relative}.start-screen-content:before{content:"do not crack";position:absolute;top:-18px;right:24px;padding:8px 14px;border:4px solid #0f172a;border-radius:999px;background:#f472b6;box-shadow:4px 5px #0f172a;color:#0f172a;font-family:Geist Pixel,Fredoka,sans-serif;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;transform:rotate(7deg)}.level-preview{font-family:Fredoka,Comic Sans MS,cursive,sans-serif;font-size:48px;font-weight:800;letter-spacing:.02em;margin-bottom:32px;background:linear-gradient(135deg,#a78bfa,#f472b6,#fbbf24 66%,#34d399);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gradient-shift 3s ease infinite;line-height:1.1;filter:drop-shadow(2px 3px 0 rgba(15,23,42,.15))}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.rules{margin-bottom:48px}.rules-title{font-size:24px;font-weight:800;margin-bottom:24px;color:#0f172a;font-family:Fredoka,Comic Sans MS,cursive,sans-serif;letter-spacing:.04em}.rules-list{list-style:none;text-align:left;display:inline-block;padding:0;margin:0}.rules-list li{font-size:18px;margin-bottom:16px;color:#0f172a;font-family:Fredoka,sans-serif;font-weight:500;padding-left:36px;position:relative;line-height:1.4}.rules-list li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:24px;height:24px;background:#34d399;border:3px solid #0f172a;border-radius:6px;box-shadow:2px 2px #0f172a}.rules-list li:after{content:"✓";position:absolute;left:5px;top:50%;transform:translateY(-55%);font-size:16px;font-weight:900;color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,.15)}.start-game-btn{padding:20px 72px;font-size:20px;letter-spacing:.06em;font-family:Fredoka,Comic Sans MS,cursive,sans-serif;font-weight:800;color:#0f172a;background:linear-gradient(135deg,#fbbf24,#f59e0b);border:4px solid #0f172a;border-radius:24px;box-shadow:8px 10px #0f172a;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);text-transform:uppercase}.start-game-btn:hover{transform:translate(-2px,-2px) scale(1.03);box-shadow:10px 12px #0f172a;background:linear-gradient(135deg,#fcd34d,#fbbf24)}.start-game-btn:active{transform:translate(4px,6px);box-shadow:4px 4px #0f172a}.smile-indicator{position:fixed;bottom:20px;right:24px;padding:12px 20px;display:flex;flex-direction:row;gap:12px;align-items:center;z-index:100;pointer-events:none;max-width:260px;background:linear-gradient(135deg,#fff,#fef3c7);border:5px solid #0f172a;border-radius:18px;box-shadow:7px 8px #0f172a}.smile-label{font-size:11px;font-weight:800;color:#0f172a;display:flex;align-items:center;gap:4px;letter-spacing:.08em;text-transform:uppercase;font-family:Fredoka,sans-serif}.smile-bar-container{width:110px;height:14px;background:#f1f5f9;border:3px solid #0f172a;border-radius:999px;overflow:hidden;box-shadow:inset 2px 2px #0000000f}.smile-bar{height:100%;border-radius:999px;background:linear-gradient(90deg,#34d399,#10b981);transition:width .15s ease}.smile-bar.danger{background:linear-gradient(90deg,#f472b6,#ef4444);animation:wiggle-pulse .4s ease-in-out infinite}@keyframes wiggle-pulse{0%,to{transform:translate(0) scale(1)}25%{transform:translate(-2px) scale(1.02)}75%{transform:translate(2px) scale(1.02)}}.smile-value{font-size:13px;font-weight:800;font-family:Fredoka,sans-serif;color:#0f172a;min-width:32px}@keyframes wiggle{0%,to{transform:translate(-2px,-2px) rotate(-3deg)}50%{transform:translate(-2px,-2px) rotate(3deg)}}@media(max-width:768px){.face-circle{width:110px;height:110px;top:14px;right:14px;box-shadow:5px 6px #0f172a}.face-circle:before{inset:5px;border-width:3px}.level-indicator{top:14px;padding:12px 28px;box-shadow:5px 6px #0f172a}.level-number{font-size:22px}.tagline{font-size:10px;margin-top:2px}.back-btn{top:14px;left:14px;width:48px;height:48px;border-radius:14px;box-shadow:3px 4px #0f172a}.back-btn svg{width:24px;height:24px}.smile-indicator{bottom:12px;right:14px;padding:8px 14px;gap:8px;max-width:220px;border-radius:18px;box-shadow:5px 6px #0f172a}.smile-label{font-size:9px}.smile-bar-container{width:80px;height:12px}.smile-value{font-size:11px}.start-screen-content{padding:36px 28px;border-radius:24px}.start-game-btn{padding:16px 56px;font-size:17px;border-radius:20px;box-shadow:5px 6px #0f172a;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.level-preview{font-size:36px;margin-bottom:24px}.rules{margin-bottom:36px}.rules-title{font-size:20px;margin-bottom:18px}.rules-list li{font-size:15px;margin-bottom:12px;padding-left:30px}.rules-list li:before{width:20px;height:20px;border-width:2.5px;border-radius:5px;box-shadow:1.5px 1.5px #0f172a}.rules-list li:after{left:4px;font-size:13px}}@media(max-width:480px){.face-circle{width:86px;height:86px;top:10px;right:10px;box-shadow:4px 5px #0f172a;border-width:3px}.face-circle:before{inset:4px;border-width:2.5px}.level-indicator{top:10px;padding:10px 20px;box-shadow:4px 5px #0f172a;border-width:3px}.level-number{font-size:18px}.tagline{font-size:8.5px}.back-btn{width:42px;height:42px;border-radius:12px;border-width:3px;box-shadow:2px 3px #0f172a}.back-btn svg{width:20px;height:20px;stroke-width:2.5}.smile-indicator{bottom:10px;right:10px;padding:6px 12px;gap:6px;border-width:3px;box-shadow:4px 5px #0f172a;border-radius:16px}.smile-bar-container{width:64px;height:10px;border-width:2.5px}.smile-label{font-size:7.5px}.smile-value{font-size:9.5px}.start-screen-content{padding:28px 20px;border-radius:20px;border-width:3px;box-shadow:5px 6px #0f172a}.level-preview{font-size:28px}.rules-title{font-size:18px}.rules-list li{font-size:14px;padding-left:26px;margin-bottom:10px}.rules-list li:before{width:18px;height:18px}.rules-list li:after{left:3px;font-size:11px}.start-game-btn{padding:14px 44px;font-size:15px;border-width:3px;border-radius:18px;box-shadow:4px 5px #0f172a}}button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,.back-btn,.start-game-btn{-webkit-user-select:none;user-select:none}.game-page{-webkit-text-size-adjust:100%;text-size-adjust:100%}.lose-page{width:100%;min-height:100vh;display:flex;justify-content:center;align-items:center;padding:40px 20px;position:relative;z-index:1;background:transparent}.lose-container{width:100%;max-width:700px;position:relative}.lose-content{padding:72px 56px 64px;text-align:center;background:linear-gradient(135deg,#fff,#fce7f3 62%,#fef3c7);border:5px solid #0f172a;border-radius:24px;box-shadow:10px 12px #0f172a,0 30px 60px -20px #0f172a40;position:relative;overflow:hidden}.lose-content:before{content:"busted!";position:absolute;top:18px;right:22px;padding:8px 14px;background:#fbbf24;border:4px solid #0f172a;border-radius:9999px;box-shadow:4px 5px #0f172a;color:#0f172a;font-family:Geist Pixel,Fredoka,sans-serif;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;z-index:3;transform:rotate(7deg)}.lose-content:after{content:"";position:absolute;inset:0;border-radius:28px;background:radial-gradient(circle at 15% 15%,rgba(255,255,255,.7) 0%,transparent 40%),radial-gradient(circle at 85% 90%,rgba(244,114,182,.18) 0%,transparent 45%),radial-gradient(circle at 20% 85%,rgba(251,146,60,.18) 0%,transparent 40%);pointer-events:none;mix-blend-mode:screen;z-index:1}.confetti-bg:before,.confetti-bg:after{content:"";position:absolute;width:100%;height:100%;background-image:radial-gradient(circle 5px at 10% 20%,#fbbf24 99%,transparent 100%),radial-gradient(circle 4px at 30% 70%,#f472b6 99%,transparent 100%),radial-gradient(circle 6px at 70% 30%,#7dd3fc 99%,transparent 100%),radial-gradient(circle 5px at 85% 80%,#34d399 99%,transparent 100%),radial-gradient(circle 4px at 50% 50%,#a78bfa 99%,transparent 100%),radial-gradient(circle 5px at 20% 90%,#fb923c 99%,transparent 100%);background-repeat:repeat;background-size:500px 500px;opacity:.35;animation:confettiDrift 22s linear infinite}.confetti-bg:after{background-size:700px 700px;opacity:.25;animation-duration:40s;animation-direction:reverse;filter:blur(1px)}.lose-icon{position:relative;margin-bottom:32px;font-size:140px;line-height:1;background:linear-gradient(135deg,#f472b6,#fb923c,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 10px 0 rgba(15,23,42,.15)) drop-shadow(0 20px 30px rgba(236,72,153,.3));animation:wiggle 1.2s ease-in-out infinite;z-index:2}@keyframes wiggle{0%,to{transform:rotate(-5deg) scale(1)}25%{transform:rotate(3deg) scale(1.02)}50%{transform:rotate(5deg) scale(1)}75%{transform:rotate(-3deg) scale(1.02)}}.lose-title{position:relative;font-family:Fredoka,sans-serif;font-size:44px;font-weight:700;margin-bottom:20px;letter-spacing:-.01em;color:#1e293b;-webkit-text-stroke:2px #0f172a;paint-order:stroke fill;text-shadow:0 6px 0 rgba(15,23,42,.12);z-index:2}.lose-text{position:relative;font-size:18px;line-height:1.7;color:#1e293b;margin-bottom:16px;font-family:Fredoka,Geist Pixel,sans-serif;font-weight:500;z-index:2}.tagline{position:relative;margin-top:24px;font-size:13px;color:#64748b;letter-spacing:.1em;text-transform:uppercase;font-family:Fredoka,Geist Pixel,sans-serif;font-weight:600;z-index:2}.lose-actions{position:relative;display:flex;gap:20px;justify-content:center;margin-top:40px;align-items:center;z-index:2}.lose-actions button,.lose-actions a{display:flex;align-items:center;gap:10px;font-family:Geist Pixel,Fredoka,sans-serif;font-weight:700;letter-spacing:.02em;text-transform:none;font-size:18px}@media(max-width:768px){.lose-content{padding:60px 28px 48px}.lose-icon{font-size:110px}.lose-title{font-size:34px;-webkit-text-stroke:1.5px #0f172a}.lose-text{font-size:16px}.lose-actions{flex-direction:column;gap:16px}.lose-actions button,.lose-actions a{width:100%;justify-content:center}}@media(max-width:480px){.lose-page{padding:24px 14px}.lose-content{padding:44px 20px 36px;border-radius:22px;border-width:3px;box-shadow:5px 6px #0f172a,0 20px 40px -20px #0f172a40,0 0 0 6px #ffffff8c inset}.lose-icon{font-size:88px;margin-bottom:24px}.lose-title{font-size:28px;-webkit-text-stroke:1px #0f172a;margin-bottom:16px}.lose-text{font-size:15px}.tagline{margin-top:20px;font-size:11px}.lose-actions{margin-top:32px}}@media(max-width:380px){.lose-content{padding:36px 16px 30px}.lose-icon{font-size:72px}.lose-title{font-size:24px}}.level-complete-page{width:100%;min-height:100vh;display:flex;justify-content:center;align-items:center;padding:40px 20px;position:relative;overflow:hidden;z-index:1;background:transparent}.sparkle{position:absolute;z-index:1;pointer-events:none;font-size:28px;animation:sparkleFloat 3s ease-in-out infinite}.sparkle:nth-child(1){top:12%;left:8%;color:#fbbf24;filter:drop-shadow(0 0 12px rgba(251,191,36,.7));animation-delay:0s;animation-duration:2.6s}.sparkle:nth-child(2){top:22%;right:10%;color:#f472b6;filter:drop-shadow(0 0 12px rgba(244,114,182,.7));animation-delay:.4s;font-size:34px}.sparkle:nth-child(3){bottom:18%;left:12%;color:#7dd3fc;filter:drop-shadow(0 0 12px rgba(125,211,252,.7));animation-delay:.8s;animation-duration:3.2s;font-size:24px}.sparkle:nth-child(4){bottom:28%;right:14%;color:#34d399;filter:drop-shadow(0 0 12px rgba(52,211,153,.7));animation-delay:1.2s;font-size:30px}.sparkle:nth-child(5){top:50%;left:5%;color:#a78bfa;filter:drop-shadow(0 0 12px rgba(167,139,250,.7));animation-delay:1.6s;animation-duration:2.8s}.sparkle:nth-child(6){top:42%;right:6%;color:#fb923c;filter:drop-shadow(0 0 12px rgba(251,146,60,.7));animation-delay:.2s;font-size:26px}@keyframes sparkleFloat{0%,to{transform:translateY(0) rotate(0) scale(1);opacity:.7}50%{transform:translateY(-18px) rotate(15deg) scale(1.15);opacity:1}}.level-complete-container{width:100%;max-width:700px;z-index:2;position:relative}.level-complete-content{padding:72px 56px 64px;text-align:center;background:linear-gradient(135deg,#fff,#ecfeff 55%,#fef3c7);border:5px solid #0f172a;border-radius:24px;box-shadow:10px 12px #0f172a,0 30px 60px -20px #0f172a40;position:relative;overflow:hidden}.level-complete-content:before{content:"nailed it!";position:absolute;top:18px;right:22px;padding:8px 14px;background:#34d399;border:4px solid #0f172a;border-radius:9999px;box-shadow:4px 5px #0f172a;color:#0f172a;font-family:Geist Pixel,Fredoka,sans-serif;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;z-index:3;transform:rotate(7deg)}.level-complete-content:after{content:"";position:absolute;inset:0;border-radius:28px;background:radial-gradient(circle at 15% 15%,rgba(255,255,255,.7) 0%,transparent 40%),radial-gradient(circle at 85% 10%,rgba(251,191,36,.2) 0%,transparent 45%),radial-gradient(circle at 10% 90%,rgba(244,114,182,.18) 0%,transparent 40%),radial-gradient(circle at 90% 85%,rgba(125,211,252,.2) 0%,transparent 45%);pointer-events:none;mix-blend-mode:screen;z-index:1}.trophy-icon{width:160px;height:160px;margin:0 auto 34px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#fde68a,#fbbf24,#f59e0b 70%,#d97706);border:4px solid #0f172a;border-radius:50%;color:#0f172a;box-shadow:6px 8px #0f172a,0 0 60px #fbbf2480,inset 0 4px #fff9,inset 0 -6px #d9770666;position:relative;font-size:80px;animation:floaty 3s ease-in-out infinite;z-index:2}.trophy-icon:before{content:"WIN";position:absolute;bottom:-8px;right:-10px;padding:5px 10px;background:#f472b6;border:3px solid #0f172a;border-radius:9999px;box-shadow:3px 3px #0f172a;color:#0f172a;font-family:Geist Pixel,Fredoka,sans-serif;font-size:14px;font-weight:800}@keyframes floaty{0%,to{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-16px) rotate(3deg)}}.level-complete-title{position:relative;font-family:Fredoka,sans-serif;font-size:52px;font-weight:700;margin-bottom:18px;letter-spacing:-.01em;background:linear-gradient(135deg,#fb923c,#ec4899 20%,#8b5cf6,#38bdf8 70%,#10b981 90%,#fbbf24);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rainbowShift 5s ease-in-out infinite;filter:drop-shadow(0 6px 0 rgba(15,23,42,.18));z-index:2}.tagline{position:relative;margin-bottom:48px;font-size:14px;color:#64748b;letter-spacing:.1em;text-transform:uppercase;font-family:Fredoka,Geist Pixel,sans-serif;font-weight:600;z-index:2}.level-complete-buttons{position:relative;display:flex;gap:20px;justify-content:center;align-items:center;z-index:2}.level-complete-buttons button,.level-complete-buttons a{display:flex;align-items:center;gap:10px;font-family:Geist Pixel,Fredoka,sans-serif;font-weight:700;letter-spacing:.02em;text-transform:none;font-size:18px}@media(max-width:768px){.level-complete-content{padding:60px 28px 48px}.level-complete-title{font-size:38px}.trophy-icon{width:130px;height:130px;font-size:64px;margin-bottom:28px}.level-complete-buttons{flex-direction:column;gap:16px}.level-complete-buttons button,.level-complete-buttons a{width:100%;justify-content:center}.sparkle{font-size:22px}.sparkle:nth-child(2){font-size:26px}}@media(max-width:480px){.level-complete-page{padding:24px 14px}.level-complete-content{padding:44px 20px 36px;border-radius:22px;border-width:3px;box-shadow:5px 6px #0f172a,0 20px 40px -20px #0f172a40,0 0 0 6px #ffffff8c inset}.level-complete-title{font-size:32px}.trophy-icon{width:110px;height:110px;font-size:52px;margin-bottom:22px;box-shadow:5px 6px #0f172a,0 0 40px #fbbf2466,inset 0 4px #fff9,inset 0 -6px #d9770666}.tagline{margin-bottom:36px;font-size:12px}.sparkle{font-size:18px}.sparkle:nth-child(2){font-size:22px}}@media(max-width:380px){.level-complete-content{padding:36px 16px 30px}.level-complete-title{font-size:26px}.trophy-icon{width:92px;height:92px;font-size:44px}}.profile-page{min-height:100vh;padding:36px 24px;position:relative;z-index:1;background:transparent}.profile-shell{max-width:1000px;margin:0 auto}.profile-topbar{display:flex;justify-content:space-between;margin-bottom:32px;align-items:center;gap:12px;flex-wrap:wrap}.profile-back,.profile-link{position:relative;text-decoration:none;color:#0f172a;font-family:Fredoka,sans-serif;font-weight:700;font-size:16px;letter-spacing:.01em;text-transform:none;background:#fff;border:4px solid #0f172a;padding:14px 26px;border-radius:22px;display:flex;align-items:center;gap:10px;transition:transform .18s ease,box-shadow .18s ease,background .2s;box-shadow:6px 8px #0f172a;cursor:pointer;overflow:visible}.profile-back:before,.profile-link:before{content:"";position:absolute;inset:7px 12px auto;height:7px;background:#ffffffd9;border-radius:9999px;pointer-events:none;opacity:.9}.profile-back:hover,.profile-link:hover{background:#fef3c7;transform:translateY(-3px) rotate(-2deg) scale(1.03);box-shadow:8px 12px #0f172a,0 20px 40px -10px #fbbf2466;animation:wiggleHover .4s ease-in-out}.profile-back:active,.profile-link:active{transform:translateY(5px) rotate(1deg) scale(.98);box-shadow:2px 3px #0f172a}@keyframes wiggleHover{0%,to{transform:translateY(-3px) rotate(-2deg) scale(1.03)}25%{transform:translateY(-3px) rotate(1deg) scale(1.03)}50%{transform:translateY(-3px) rotate(-2deg) scale(1.03)}75%{transform:translateY(-3px) rotate(2deg) scale(1.03)}}.profile-card{position:relative;background:#fff;border:4px solid #0f172a;border-radius:28px;box-shadow:8px 10px #0f172a,0 30px 60px -20px #0f172a40,0 0 0 8px #ffffff8c inset;padding:52px 40px 48px;text-align:center;overflow:hidden}.profile-card:before{content:"";position:absolute;top:12px;left:50%;transform:translate(-50%);width:55%;height:10px;background:#ffffffeb;border-radius:9999px;filter:blur(1px);z-index:2;opacity:.9}.profile-card:after{content:"";position:absolute;inset:0;border-radius:28px;background:radial-gradient(circle at 15% 15%,rgba(255,255,255,.75) 0%,transparent 40%),radial-gradient(circle at 85% 90%,rgba(125,211,252,.22) 0%,transparent 45%);pointer-events:none;mix-blend-mode:screen}.profile-avatar{position:relative;width:160px;height:160px;margin:0 auto 24px;border-radius:50%;background:linear-gradient(135deg,var(--sunshine) 0%,var(--coral) 35%,var(--grape) 70%,var(--grape-deep) 100%);border:4px solid #0f172a;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:6px 8px #0f172a,0 0 0 6px #fff9 inset,0 28px 50px -18px #8b5cf68c;overflow:hidden;animation:floaty 4.5s ease-in-out infinite;z-index:3}@keyframes floaty{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(3deg)}}.profile-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.profile-pic-upload{position:relative;z-index:3;width:fit-content;margin:-8px auto 20px;border:3px solid #0f172a;border-radius:18px;background:#fef3c7;color:#0f172a;box-shadow:4px 5px #0f172a;padding:10px 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:Fredoka,sans-serif;font-size:15px;font-weight:700;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .2s ease}.profile-pic-upload input{display:none}.profile-pic-upload:hover{background:#bae6fd;transform:translateY(-2px) rotate(-1deg);box-shadow:5px 8px #0f172a}.profile-pic-upload.uploading{cursor:progress;opacity:.85}.profile-pic-error{position:relative;z-index:3;width:fit-content;max-width:100%;margin:-8px auto 16px;border:3px solid #0f172a;border-radius:16px;background:#fecdd3;color:#7f1d1d;box-shadow:3px 4px #0f172a;padding:9px 14px;font-family:Fredoka,sans-serif;font-size:14px;font-weight:700}.spin-icon{animation:spin .85s linear infinite}.profile-name{font-family:Fredoka,sans-serif;font-size:44px;color:#0f172a;font-weight:700;margin-bottom:10px;letter-spacing:-.01em;line-height:1.1;background:linear-gradient(135deg,#fb923c,#ec4899 20%,#8b5cf6,#38bdf8 70%,#10b981 90%,#fbbf24);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rainbowShift 5s ease-in-out infinite;filter:drop-shadow(0 5px 0 rgba(15,23,42,.15));position:relative;z-index:3}.profile-email{font-family:Fredoka,sans-serif;font-size:18px;color:#475569;margin-bottom:10px;font-weight:500;position:relative;z-index:3}.profile-tagline{font-family:Fredoka,sans-serif;font-size:16px;color:#64748b;margin-bottom:40px;letter-spacing:.02em;font-weight:500;position:relative;z-index:3}.profile-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:44px;position:relative;z-index:3}.profile-stat{position:relative;border:4px solid #0f172a;border-radius:24px;padding:26px 22px;display:flex;flex-direction:column;gap:10px;box-shadow:5px 7px #0f172a;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.profile-stat:before{content:"";position:absolute;inset:8px 14px auto;height:8px;background:#ffffffd9;border-radius:9999px;pointer-events:none;opacity:.9}.profile-stat:after{content:"";position:absolute;inset:0;border-radius:24px;background:radial-gradient(circle at 12% 12%,rgba(255,255,255,.7) 0%,transparent 38%);pointer-events:none}.profile-stat:nth-child(1){background:#a7f3d0}.profile-stat:nth-child(2){background:#bae6fd}.profile-stat:nth-child(3){background:#fde68a}.profile-stat:nth-child(4){background:#fbcfe8}.profile-stat:hover{transform:translateY(-4px) rotate(-1deg);box-shadow:7px 11px #0f172a}.profile-value{font-family:Fredoka,sans-serif;font-size:42px;font-weight:700;color:#0f172a;line-height:1;text-shadow:3px 3px 0 rgba(251,191,36,.45),6px 6px 0 rgba(244,114,182,.25);position:relative;z-index:2}.profile-value svg{display:block;margin:0 auto}.profile-label{font-family:Fredoka,sans-serif;font-size:15px;color:#334155;font-weight:600;letter-spacing:.04em;text-transform:uppercase;position:relative;z-index:2}.smile-photos-section{text-align:left;margin-top:28px;position:relative;z-index:3}.smile-photos-title{font-family:Fredoka,sans-serif;font-size:28px;color:#0f172a;font-weight:700;margin-bottom:22px;letter-spacing:-.01em;display:flex;align-items:center;gap:12px;text-shadow:2px 2px 0 rgba(244,114,182,.3)}.smile-photos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.smile-photo-card{position:relative;border-radius:24px;overflow:hidden;border:4px solid #0f172a;background:#fff;box-shadow:5px 7px #0f172a;transition:transform .2s ease,box-shadow .2s ease}.smile-photo-card:before{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:60%;height:7px;background:#ffffffd9;border-radius:9999px;z-index:3;filter:blur(.5px);opacity:.9}.smile-photo-card:hover{transform:translateY(-4px) rotate(1deg);box-shadow:7px 11px #0f172a}.smile-photo{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.smile-photo-level{position:absolute;bottom:12px;left:12px;background:var(--sunshine);border:3px solid #0f172a;padding:8px 16px;border-radius:16px;font-family:Fredoka,sans-serif;font-size:14px;font-weight:700;letter-spacing:.02em;color:#0f172a;box-shadow:3px 4px #0f172a;z-index:2}.smile-photos-empty{background:#fff;border:4px solid #0f172a;color:#475569;padding:36px 28px;border-radius:24px;font-family:Fredoka,sans-serif;font-weight:600;font-size:17px;text-align:center;grid-column:1/-1;box-shadow:5px 7px #0f172a;position:relative;overflow:hidden}.smile-photos-empty:before{content:"";position:absolute;top:10px;left:50%;transform:translate(-50%);width:55%;height:8px;background:#ffffffe6;border-radius:9999px;filter:blur(.5px);opacity:.9}@media(max-width:900px){.profile-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.profile-name{font-size:38px}.profile-value{font-size:36px}.profile-avatar{width:140px;height:140px}.profile-card{padding:44px 28px 40px}}@media(max-width:640px){.profile-page{padding:28px 18px}.profile-topbar{flex-direction:column;align-items:stretch}.profile-back,.profile-link{justify-content:center}.profile-stats{grid-template-columns:repeat(1,minmax(0,1fr));gap:18px}.profile-card{padding:40px 22px 36px}.profile-name{font-size:32px}.profile-avatar{width:128px;height:128px}.profile-value{font-size:34px}.smile-photos-grid{grid-template-columns:repeat(1,minmax(0,1fr))}.smile-photos-title{font-size:24px}}.leaderboard-page{min-height:100vh;padding:36px 24px;position:relative;z-index:1;background:transparent}.leaderboard-page:before{content:"brag board";position:fixed;top:110px;left:28px;padding:10px 18px;border:4px solid #0f172a;border-radius:999px;background:#f472b6;color:#0f172a;box-shadow:5px 6px #0f172a;font-family:Geist Pixel,Fredoka,sans-serif;font-weight:800;letter-spacing:.05em;text-transform:uppercase;transform:rotate(-9deg);z-index:0}.leaderboard-shell{max-width:960px;margin:0 auto}.leaderboard-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;gap:12px;flex-wrap:wrap}.leaderboard-back,.leaderboard-meta{position:relative;background:linear-gradient(135deg,#fff,#ecfeff);border:5px solid #0f172a;color:#0f172a;padding:14px 26px;border-radius:18px;text-decoration:none;font-family:Fredoka,sans-serif;font-weight:700;font-size:16px;letter-spacing:.01em;text-transform:none;display:flex;align-items:center;gap:10px;transition:transform .18s ease,box-shadow .18s ease,background .2s;box-shadow:7px 8px #0f172a;cursor:pointer;overflow:visible}.leaderboard-back:hover,.leaderboard-meta:hover{background:#bae6fd;transform:translateY(-3px) rotate(2deg) scale(1.03);box-shadow:8px 12px #0f172a,0 20px 40px -10px #38bdf866;animation:wiggleHoverLB .4s ease-in-out}.leaderboard-back:active,.leaderboard-meta:active{transform:translateY(5px) rotate(-1deg) scale(.98);box-shadow:2px 3px #0f172a}@keyframes wiggleHoverLB{0%,to{transform:translateY(-3px) rotate(2deg) scale(1.03)}25%{transform:translateY(-3px) rotate(-1deg) scale(1.03)}50%{transform:translateY(-3px) rotate(2deg) scale(1.03)}75%{transform:translateY(-3px) rotate(-2deg) scale(1.03)}}.leaderboard-card{position:relative;background:linear-gradient(135deg,#fff,#fef3c7);border:5px solid #0f172a;border-radius:24px;box-shadow:10px 12px #0f172a,0 30px 60px -20px #0f172a40;padding:44px 36px 40px;overflow:hidden}.leaderboard-card:after{content:"";position:absolute;inset:0;border-radius:28px;background:radial-gradient(circle at 15% 15%,rgba(255,255,255,.75) 0%,transparent 40%),radial-gradient(circle at 85% 90%,rgba(251,191,36,.18) 0%,transparent 45%);pointer-events:none;mix-blend-mode:screen}.leaderboard-title{text-align:center;color:#0f172a;font-family:Fredoka,sans-serif;font-size:50px;font-weight:700;margin-bottom:36px;letter-spacing:-.01em;line-height:1.1;background:linear-gradient(135deg,#fb923c,#ec4899 20%,#8b5cf6,#38bdf8 70%,#10b981 90%,#fbbf24);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rainbowShift 5s ease-in-out infinite;-webkit-text-stroke:2px #0f172a;paint-order:stroke fill;filter:drop-shadow(5px 6px 0 rgba(15,23,42,.22));position:relative;z-index:3}.leaderboard-list{display:flex;flex-direction:column;gap:18px;position:relative;z-index:3}.leaderboard-row{position:relative;display:grid;grid-template-columns:80px 80px 1fr auto;align-items:center;gap:18px;padding:22px 26px;border-radius:18px;background:#fff;border:5px solid #0f172a;box-shadow:6px 7px #0f172a;transition:transform .22s ease,box-shadow .22s ease;overflow:hidden}.leaderboard-row:after{content:"";position:absolute;inset:0;border-radius:16px;background:radial-gradient(circle at 12% 12%,rgba(255,255,255,.72) 0%,transparent 38%);opacity:.45;pointer-events:none}.leaderboard-row:nth-child(odd){transform:rotate(-.6deg)}.leaderboard-row:nth-child(2n){transform:rotate(.6deg)}.leaderboard-row:hover{box-shadow:7px 11px #0f172a,0 18px 36px -14px #0f172a4d}.leaderboard-row.top-rank.rank-1{background:linear-gradient(135deg,#fef3c7,#fde68a 60%,#fbbf24);padding:28px;transform:rotate(0) scale(1.02);box-shadow:6px 9px #0f172a,0 22px 44px -18px #f59e0b8c}.leaderboard-row.top-rank.rank-1:hover{box-shadow:9px 13px #0f172a,0 28px 56px -20px #f59e0b99}.leaderboard-row.top-rank.rank-1 .rank-cell{background:linear-gradient(135deg,#fbbf24,#f59e0b);width:64px;height:64px;font-size:30px}.leaderboard-row.top-rank.rank-1 .rank-cell:after{content:"🏆";position:absolute;top:-30px;left:50%;transform:translate(-50%);font-size:34px;filter:drop-shadow(0 4px 0 rgba(15,23,42,.2));animation:bounceSoft 1.8s ease-in-out infinite}.leaderboard-row.top-rank.rank-2{background:linear-gradient(135deg,#f1f5f9,#e2e8f0 60%,#cbd5e1);padding:25px 26px;transform:rotate(-.4deg) scale(1.005);box-shadow:5px 8px #0f172a,0 20px 40px -18px #94a3b880}.leaderboard-row.top-rank.rank-2:hover{box-shadow:7px 11px #0f172a,0 24px 48px -18px #94a3b88c}.leaderboard-row.top-rank.rank-2 .rank-cell{background:linear-gradient(135deg,#e2e8f0,#94a3b8);width:58px;height:58px;font-size:27px}.leaderboard-row.top-rank.rank-2 .rank-cell:after{content:"🥈";position:absolute;top:-26px;left:50%;transform:translate(-50%);font-size:30px;filter:drop-shadow(0 3px 0 rgba(15,23,42,.2));animation:bounceSoft 2s ease-in-out infinite .1s}.leaderboard-row.top-rank.rank-3{background:linear-gradient(135deg,#ffedd5,#fed7aa 60%,#fdba74);padding:25px 26px;transform:rotate(.4deg) scale(1.005);box-shadow:5px 8px #0f172a,0 20px 40px -18px #fb923c73}.leaderboard-row.top-rank.rank-3:hover{box-shadow:7px 11px #0f172a,0 24px 48px -18px #fb923c80}.leaderboard-row.top-rank.rank-3 .rank-cell{background:linear-gradient(135deg,#fdba74,#ea580c);width:58px;height:58px;font-size:27px}.leaderboard-row.top-rank.rank-3 .rank-cell:after{content:"🥉";position:absolute;top:-26px;left:50%;transform:translate(-50%);font-size:30px;filter:drop-shadow(0 3px 0 rgba(15,23,42,.2));animation:bounceSoft 2.2s ease-in-out infinite .2s}@keyframes bounceSoft{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-8px)}}.leaderboard-row.current-user{outline:none;border:4px solid #8b5cf6;box-shadow:5px 7px #0f172a,0 0 0 3px #8b5cf640,0 0 0 6px #8b5cf61f}.leaderboard-row.current-user:hover{box-shadow:7px 11px #0f172a,0 0 0 4px #8b5cf64d,0 0 0 8px #8b5cf626,0 18px 36px -14px #8b5cf666}.rank-cell{position:relative;width:54px;height:54px;margin:0 auto;border-radius:50%;background:linear-gradient(135deg,#fde68a,#fbbf24,#f59e0b);border:5px solid #0f172a;color:#0f172a;font-size:24px;font-weight:700;text-align:center;display:flex;align-items:center;justify-content:center;box-shadow:3px 4px #0f172a;font-family:Fredoka,sans-serif;z-index:2}.rank-number{font-family:Fredoka,sans-serif;font-weight:700;font-size:22px;line-height:1}.avatar-cell{position:relative;width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--sky) 0%,var(--grape) 100%);border:4px solid #0f172a;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:2px 3px #0f172a;overflow:hidden;z-index:2}.avatar-cell img{width:100%;height:100%;object-fit:cover;border-radius:50%}.player-cell{display:flex;flex-direction:column;gap:5px;z-index:2}.player-name{color:#0f172a;font-family:Fredoka,sans-serif;font-size:20px;font-weight:700;letter-spacing:-.005em;line-height:1.2}.player-subtitle{color:#64748b;font-family:Fredoka,sans-serif;font-size:14px;font-weight:500;letter-spacing:.02em;text-transform:uppercase}.level-cell{position:relative;color:#0f172a;font-family:Fredoka,sans-serif;font-size:18px;font-weight:700;letter-spacing:.02em;text-transform:none;background:#fde68a;border:4px solid #0f172a;padding:10px 20px;border-radius:14px;box-shadow:3px 4px #0f172a;z-index:2;white-space:nowrap;text-shadow:1px 1px 0 rgba(255,255,255,.5)}.loading-screen{display:flex;justify-content:center;align-items:center;height:50vh;font-family:Fredoka,sans-serif;font-size:24px;color:#0f172a;font-weight:700;background:linear-gradient(135deg,#fb923c,#ec4899 20%,#8b5cf6,#38bdf8 70%,#10b981 90%,#fbbf24);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rainbowShift 3s ease-in-out infinite}@media(max-width:900px){.leaderboard-row{grid-template-columns:72px 72px 1fr auto;padding:20px 22px;gap:14px}.leaderboard-title{font-size:38px}.leaderboard-card{padding:40px 28px 36px}.leaderboard-row.top-rank.rank-1{padding:26px 24px}.leaderboard-row.top-rank.rank-2,.leaderboard-row.top-rank.rank-3{padding:23px 22px}}@media(max-width:640px){.leaderboard-page{padding:28px 18px}.leaderboard-topbar{flex-direction:column;gap:12px;align-items:stretch}.leaderboard-back,.leaderboard-meta{justify-content:center}.leaderboard-card{padding:36px 20px 32px}.leaderboard-title{font-size:32px;margin-bottom:28px}.leaderboard-list{gap:16px}.leaderboard-row{grid-template-columns:60px 60px 1fr;padding:18px;gap:12px}.leaderboard-row.top-rank.rank-1{padding:22px 18px}.leaderboard-row.top-rank.rank-1 .rank-cell{width:54px;height:54px;font-size:25px}.leaderboard-row.top-rank.rank-1 .rank-cell:after{font-size:28px;top:-24px}.leaderboard-row.top-rank.rank-2,.leaderboard-row.top-rank.rank-3{padding:20px 16px}.leaderboard-row.top-rank.rank-2 .rank-cell,.leaderboard-row.top-rank.rank-3 .rank-cell{width:50px;height:50px;font-size:23px}.leaderboard-row.top-rank.rank-2 .rank-cell:after,.leaderboard-row.top-rank.rank-3 .rank-cell:after{font-size:25px;top:-22px}.rank-cell{width:48px;height:48px;font-size:21px}.rank-number{font-size:19px}.avatar-cell{width:54px;height:54px}.level-cell{grid-column:1/-1;text-align:center;justify-self:center;padding:8px 22px;font-size:16px}.player-name{font-size:18px}}.love-wall-page{min-height:100vh;padding:36px 24px 72px;position:relative;z-index:1}.love-wall-shell{width:100%;max-width:1120px;margin:0 auto}.love-wall-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:34px;flex-wrap:wrap}.love-wall-back,.love-wall-write-btn,.love-wall-state button,.love-like{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:4px solid #0f172a;background:#fff;color:#0f172a;box-shadow:5px 7px #0f172a;border-radius:20px;padding:12px 22px;font-family:Fredoka,sans-serif;font-size:16px;font-weight:700;text-decoration:none;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .2s ease}.love-wall-back:hover,.love-wall-write-btn:hover,.love-wall-state button:hover,.love-like:hover{transform:translateY(-3px) rotate(-1deg);box-shadow:7px 10px #0f172a}.love-wall-write-btn{background:linear-gradient(135deg,#f472b6,#fb923c,#fbbf24);color:#fff}.love-wall-hero{position:relative;background:#fff;border:4px solid #0f172a;border-radius:28px;box-shadow:8px 10px #0f172a,0 28px 60px -24px #0f172a59,0 0 0 8px #ffffff8c inset;padding:44px 36px;margin-bottom:28px;overflow:hidden;text-align:center}.love-wall-hero:before{content:"";position:absolute;top:12px;left:50%;transform:translate(-50%);width:50%;height:10px;background:#ffffffeb;border-radius:9999px;filter:blur(1px)}.love-wall-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 14% 20%,rgba(251,191,36,.3) 0%,transparent 38%),radial-gradient(circle at 86% 82%,rgba(56,189,248,.28) 0%,transparent 42%),radial-gradient(circle at 50% 100%,rgba(244,114,182,.2) 0%,transparent 46%);pointer-events:none}.section-kicker,.love-wall-hero h1,.love-wall-hero p{position:relative;z-index:2}.section-kicker{display:inline-block;color:#64748b;font-family:Fredoka,sans-serif;font-size:14px;font-weight:700;letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase}.love-wall-hero h1{color:#0f172a;font-family:Fredoka,sans-serif;font-size:clamp(48px,9vw,88px);font-weight:700;line-height:1;margin-bottom:14px;background:linear-gradient(135deg,#fb923c,#ec4899 25%,#8b5cf6,#38bdf8 85%,#fbbf24);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rainbowShift 5s ease-in-out infinite;filter:drop-shadow(0 6px 0 rgba(15,23,42,.18))}.love-wall-hero p{color:#475569;font-family:Fredoka,sans-serif;font-size:20px;font-weight:600}.love-wall-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:34px}.love-stat{background:#fff;border:4px solid #0f172a;border-radius:24px;padding:24px 20px;text-align:center;box-shadow:5px 7px #0f172a}.love-stat:nth-child(1){background:linear-gradient(180deg,#fef3c7,#fff 72%)}.love-stat:nth-child(2){background:linear-gradient(180deg,#fce7f3,#fff 72%)}.love-stat:nth-child(3){background:linear-gradient(180deg,#ecfeff,#fff 72%)}.love-stat span{display:block;color:#0f172a;font-family:Fredoka,sans-serif;font-size:34px;font-weight:700;line-height:1}.love-stat small{display:block;color:#64748b;font-family:Fredoka,sans-serif;font-size:14px;font-weight:700;margin-top:9px;text-transform:uppercase}.love-wall-state{background:#fff;border:4px solid #0f172a;border-radius:28px;box-shadow:7px 9px #0f172a;padding:46px 28px;text-align:center;font-family:Fredoka,sans-serif}.love-wall-state h3{color:#0f172a;font-size:30px;margin-bottom:10px}.love-wall-state p{color:#64748b;font-size:18px;font-weight:600;margin-bottom:22px}.love-wall-loader{color:#ec4899;animation:loveWallSpin 1s linear infinite}@keyframes loveWallSpin{to{transform:rotate(360deg)}}.love-wall-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:26px}.love-review-card{position:relative;background:#fff;border:4px solid #0f172a;border-radius:26px;padding:24px;box-shadow:6px 8px #0f172a,0 24px 42px -22px #0f172a59;overflow:hidden;min-height:220px}.love-review-card:nth-child(3n+1){background:linear-gradient(180deg,#fef3c7,#fff 56%)}.love-review-card:nth-child(3n+2){background:linear-gradient(180deg,#fce7f3,#fff 56%)}.love-review-card:nth-child(3n+3){background:linear-gradient(180deg,#ecfeff,#fff 56%)}.love-review-card.verified{border-color:#8b5cf6;box-shadow:6px 8px #0f172a,0 0 0 4px #8b5cf633}.love-review-top{display:flex;align-items:center;gap:14px;margin-bottom:16px}.love-avatar{width:52px;height:52px;flex:0 0 52px;display:flex;align-items:center;justify-content:center;border-radius:18px;border:3px solid #0f172a;background:linear-gradient(135deg,#fbbf24,#f472b6,#38bdf8);box-shadow:3px 4px #0f172a;font-size:24px}.love-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#0f172a;font-family:Fredoka,sans-serif}.love-name-row strong{font-size:18px;line-height:1.2}.love-name-row span{display:inline-flex;align-items:center;gap:4px;color:#6d28d9;background:#8b5cf61f;border:2px solid rgba(109,40,217,.35);border-radius:9999px;padding:3px 8px;font-size:11px;font-weight:700}.love-stars{display:flex;align-items:center;gap:3px;color:#f59e0b;margin-top:6px;flex-wrap:wrap}.love-stars small{color:#64748b;font-family:Fredoka,sans-serif;font-size:13px;font-weight:600;margin-left:6px}.love-review-card p{color:#334155;font-family:Fredoka,sans-serif;font-size:17px;font-weight:600;line-height:1.55;margin-bottom:20px}.love-like{padding:8px 14px;border-width:3px;border-radius:16px;box-shadow:3px 4px #0f172a;background:#fff}.love-like.liked{background:linear-gradient(135deg,#f472b6,#fb923c);color:#fff}@media(max-width:720px){.love-wall-page{padding:28px 18px 56px}.love-wall-topbar{align-items:stretch}.love-wall-back,.love-wall-write-btn{flex:1 1 180px}.love-wall-hero{padding:38px 22px}.love-wall-hero p{font-size:17px}.love-wall-stats{grid-template-columns:1fr}.love-review-card{transform:none!important}}*{margin:0;padding:0;box-sizing:border-box;caret-color:transparent;-webkit-user-select:none;user-select:none}input,textarea{caret-color:auto}:root{--sky: #7dd3fc;--sky-deep: #38bdf8;--bubblegum: #f472b6;--bubblegum-deep: #ec4899;--sunshine: #fbbf24;--sunshine-deep: #f59e0b;--mint: #34d399;--mint-deep: #10b981;--grape: #a78bfa;--grape-deep: #8b5cf6;--coral: #fb923c;--coral-deep: #f97316;--danger: #ef4444;--danger-deep: #dc2626;--cloud: #ffffff;--text-primary: #1e293b;--text-secondary: #475569;--text-muted: #94a3b8;--card-bg: #ffffff;--card-border: #0f172a;--page-bg-1: #fef3c7;--page-bg-2: #dbeafe;--page-bg-3: #fce7f3;--comic-shadow: 9px 11px 0 var(--card-border);--comic-shadow-sm: 5px 6px 0 var(--card-border)}html,body{font-family:Fredoka,Geist Pixel,sans-serif;font-weight:500;background-color:var(--page-bg-2);color:var(--text-primary);overflow-x:hidden}body{background:radial-gradient(circle at 1px 1px,rgba(15,23,42,.12) 1px,transparent 0),linear-gradient(180deg,#fff7ed,#fef3c7 20%,#dbeafe,#fce7f3);background-size:18px 18px,auto;background-attachment:fixed;min-height:100vh}a{text-decoration:none!important;color:inherit}.glass-card{background:linear-gradient(135deg,#fffffffa,#ecfeffeb),#fff;border:5px solid var(--card-border);border-radius:24px;box-shadow:var(--comic-shadow),0 26px 52px -22px #0f172a47;position:relative;overflow:hidden}.glass-card:after{content:"";position:absolute;inset:0;border-radius:22px;background:repeating-radial-gradient(circle at 0 0,rgba(15,23,42,.08) 0 1px,transparent 1px 9px);pointer-events:none;opacity:.4}.btn-primary{position:relative;appearance:none;background:linear-gradient(180deg,#fde68a 0%,var(--sunshine) 52%,var(--coral) 100%);border:5px solid var(--card-border);color:var(--card-border);padding:14px 42px;font-size:20px;font-weight:700;font-family:Geist Pixel,Fredoka,sans-serif;border-radius:20px;letter-spacing:.04em;text-transform:uppercase;transition:transform .16s ease,box-shadow .16s ease,filter .2s;box-shadow:7px 8px 0 var(--card-border);cursor:pointer;overflow:visible;animation:btnWobble 2.8s ease-in-out infinite}.btn-primary:hover{transform:translate(-3px,-4px) rotate(-2deg) scale(1.04);filter:saturate(1.08);box-shadow:11px 13px 0 var(--card-border),0 20px 40px -10px #f59e0b80;animation-play-state:paused}.btn-primary:active{transform:translate(5px,6px) rotate(1deg) scale(.96,.9);box-shadow:2px 2px 0 var(--card-border);animation-play-state:paused}@keyframes btnWobble{0%,90%,to{transform:rotate(0)}92%{transform:rotate(-2deg) translateY(-2px)}94%{transform:rotate(2deg) translateY(0)}96%{transform:rotate(-1deg)}98%{transform:rotate(1deg)}}.btn-secondary{position:relative;background:#fff;border:4px solid var(--card-border);color:var(--card-border);padding:12px 38px;font-size:18px;font-weight:700;font-family:Geist Pixel,Fredoka,sans-serif;border-radius:18px;letter-spacing:.04em;text-transform:uppercase;transition:transform .18s ease,box-shadow .18s ease;box-shadow:5px 6px 0 var(--card-border);cursor:pointer}.btn-secondary:hover{transform:translateY(-2px) rotate(1deg);box-shadow:7px 9px 0 var(--card-border);background:#f8fafc}.btn-secondary:active{transform:translateY(4px);box-shadow:2px 2px 0 var(--card-border)}h1,h2,h3,h4,h5,h6{font-family:Fredoka,Geist Pixel,sans-serif;font-weight:700;letter-spacing:-.01em;color:var(--text-primary)}.gradient-text{background:linear-gradient(135deg,#fb923c,#ec4899 20%,#8b5cf6,#38bdf8 70%,#10b981 90%,#fbbf24);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rainbowShift 5s ease-in-out infinite;filter:drop-shadow(0 5px 0 rgba(15,23,42,.24))}@keyframes rainbowShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.loader-spinner{display:inline-flex;gap:10px}.loader-spinner:before,.loader-spinner:after,.loader-spinner{content:none}.loader-spinner:before{content:"";display:block}.loader-spinner{width:64px;height:64px;border:5px solid var(--card-border);border-radius:22px;background:linear-gradient(135deg,var(--sunshine) 0%,var(--coral) 50%,var(--bubblegum) 100%);box-shadow:5px 6px 0 var(--card-border);animation:spinBounce 1.1s cubic-bezier(.68,-.55,.27,1.55) infinite}@keyframes spinBounce{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.12)}to{transform:rotate(360deg) scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes popIn{0%{opacity:0;transform:scale(.4) translateY(30px)}60%{opacity:1;transform:scale(1.1) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes floaty{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(4deg)}}@keyframes wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes bounceSoft{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes squish{0%,to{transform:scale(1)}30%{transform:scale(1.15,.85)}60%{transform:scale(.92,1.08)}}@keyframes comicPop{0%{transform:translateY(18px) scale(.86) rotate(-2deg);opacity:0}65%{transform:translateY(-4px) scale(1.04) rotate(1deg);opacity:1}to{transform:translateY(0) scale(1) rotate(0);opacity:1}}.confetti-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}.confetti-bg:before,.confetti-bg:after{content:"";position:absolute;width:100%;height:100%;background-image:radial-gradient(circle 5px at 10% 20%,var(--sunshine) 99%,transparent 100%),radial-gradient(circle 4px at 30% 70%,var(--bubblegum) 99%,transparent 100%),radial-gradient(circle 6px at 70% 30%,var(--sky) 99%,transparent 100%),radial-gradient(circle 5px at 85% 80%,var(--mint) 99%,transparent 100%),radial-gradient(circle 4px at 50% 50%,var(--grape) 99%,transparent 100%),radial-gradient(circle 5px at 20% 90%,var(--coral) 99%,transparent 100%);background-repeat:repeat;background-size:500px 500px;opacity:.5;animation:confettiDrift 22s linear infinite}.confetti-bg:after{background-size:700px 700px;opacity:.35;animation-duration:40s;animation-direction:reverse;filter:blur(1px)}@keyframes confettiDrift{0%{transform:translateZ(0)}to{transform:translate3d(-400px,300px,0)}}.chunky-outline{border:4px solid var(--card-border);box-shadow:4px 5px 0 var(--card-border);border-radius:18px}html{scroll-behavior:smooth}@media(max-width:1024px){.glass-card{border:3px solid var(--card-border);border-radius:22px;box-shadow:6px 8px 0 var(--card-border),0 20px 50px -20px #0f172a40,0 0 0 6px #ffffff8c inset}.btn-primary{padding:12px 36px;font-size:18px;box-shadow:5px 7px 0 var(--card-border)}.btn-secondary{padding:10px 32px;font-size:16px}}@media(max-width:768px){html,body{font-size:15px}.glass-card{border:3px solid var(--card-border);border-radius:20px;box-shadow:4px 6px 0 var(--card-border),0 15px 40px -20px #0f172a4d,0 0 0 5px #ffffff8c inset}.btn-primary{padding:14px 32px;font-size:17px;border-radius:20px;box-shadow:4px 5px 0 var(--card-border);width:100%;max-width:320px}.btn-secondary{padding:12px 28px;font-size:15px;border-radius:18px;box-shadow:3px 4px 0 var(--card-border);width:100%;max-width:320px}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}@media(max-width:480px){html,body{font-size:14px}.glass-card{border-radius:16px;box-shadow:3px 4px 0 var(--card-border),0 10px 30px -15px #0f172a4d,0 0 0 4px #ffffff8c inset}.btn-primary{padding:12px 28px;font-size:15px;border-radius:18px}.btn-secondary{padding:10px 24px;font-size:14px;border-radius:16px}.loader-spinner{width:48px;height:48px;border-width:4px;border-radius:18px}}@media(hover:none)and (pointer:coarse){.btn-primary:hover,.btn-secondary:hover{transform:none}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}}
