:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:#1a1a2e;color:#fafafa;overflow:hidden}.scene{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,#1a1a2e,#16213e,#0f3460);position:relative}.scene:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(1px 1px at 10% 15%,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 25% 35%,rgba(255,255,255,.5),transparent),radial-gradient(1.5px 1.5px at 40% 10%,rgba(255,255,255,.7),transparent),radial-gradient(1px 1px at 55% 25%,rgba(255,255,255,.4),transparent),radial-gradient(1px 1px at 70% 8%,rgba(255,255,255,.6),transparent),radial-gradient(1.5px 1.5px at 85% 30%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 15% 60%,rgba(255,255,255,.3),transparent),radial-gradient(1px 1px at 90% 50%,rgba(255,255,255,.4),transparent),radial-gradient(1px 1px at 50% 5%,rgba(255,255,255,.5),transparent),radial-gradient(1.5px 1.5px at 75% 45%,rgba(255,255,255,.3),transparent);animation:twinkle 4s ease-in-out infinite alternate}@keyframes twinkle{0%{opacity:.6}to{opacity:1}}.scene:after{content:"";position:absolute;top:40px;right:15%;width:60px;height:60px;background:#f5e6ca;border-radius:50%;box-shadow:0 0 20px 5px #f5e6ca4d,0 0 60px 10px #f5e6ca1a}.bed{position:relative;width:320px;height:200px;display:flex;align-items:flex-end;justify-content:center}.bed:before{content:"";position:absolute;bottom:0;width:280px;height:40px;background:#5c3d2e;border-radius:50%;box-shadow:inset 0 -5px 15px #0000004d}.dog{position:relative;z-index:1;animation:breathe 3s ease-in-out infinite}@keyframes breathe{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.03)}}.body{position:relative;width:160px;height:100px}.head{position:absolute;left:-10px;top:10px;width:70px;height:55px;background:#c4956a;border-radius:50% 50% 40% 40%;z-index:2}.ear{position:absolute;width:22px;height:30px;background:#a07850;border-radius:50% 50% 30% 30%}.ear-left{top:-8px;left:8px;transform:rotate(-15deg)}.ear-right{top:-10px;right:8px;transform:rotate(15deg)}.face{position:absolute;top:15px;left:50%;transform:translate(-50%);width:50px;height:35px}.eye{position:absolute;top:5px;width:10px;height:10px;background:#2d1810;border-radius:50%}.eye-left{left:5px}.eye-right{right:5px}.eyelid{position:absolute;top:0;left:0;width:100%;height:60%;background:#c4956a;border-radius:50% 50% 0 0;animation:blink 4s ease-in-out infinite}@keyframes blink{0%,90%,to{height:60%}95%{height:100%}}.nose{position:absolute;top:14px;left:50%;transform:translate(-50%);width:10px;height:7px;background:#2d1810;border-radius:50% 50% 40% 40%}.mouth{position:absolute;top:20px;left:50%;transform:translate(-50%);width:8px;height:4px;border-bottom:2px solid #2d1810;border-radius:0 0 50% 50%}.torso{position:absolute;right:0;top:0;width:120px;height:80px;background:#c4956a;border-radius:60% 40% 40% 50%}.spot{position:absolute;background:#a07850;border-radius:50%}.spot-1{width:30px;height:25px;top:10px;left:30px}.spot-2{width:20px;height:20px;top:35px;right:20px}.legs{position:absolute;bottom:-5px;width:100%}.leg{position:absolute;width:18px;height:25px;background:#c4956a;border-radius:0 0 6px 6px}.front-left{left:10px;bottom:0}.front-right{left:35px;bottom:0}.back-left{right:30px;bottom:0}.back-right{right:8px;bottom:0;transform:rotate(-10deg)}.tail{position:absolute;right:-15px;top:25px;width:35px;height:20px;border:4px solid #c4956a;border-color:#c4956a transparent transparent transparent;border-radius:50% 50% 0 0;transform:rotate(-20deg)}.zzz{position:absolute;top:-20px;right:40px;z-index:3}.z{position:absolute;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;color:#c8c8ffb3;animation:float-up 3s ease-in-out infinite}.z-1{font-size:1rem;right:0;animation-delay:0s}.z-2{font-size:1.3rem;right:15px;top:-15px;animation-delay:1s}.z-3{font-size:1.6rem;right:35px;top:-35px;animation-delay:2s}@keyframes float-up{0%{opacity:0;transform:translateY(0) rotate(0)}30%{opacity:.9}to{opacity:0;transform:translateY(-40px) rotate(15deg)}}.caption{margin-top:2.5rem;font-size:1rem;color:#c8c8ff99;letter-spacing:.05em;font-style:italic;z-index:1}
