.page,#root,body{margin:0}body,#root{min-height:100vh}.page{--bg-start: #fff7d6;--bg-end: #ffd9c9;--card-start: #fffef8;--card-end: #fff4ef;--text-main: #4d2f28;--text-sub: #7f5747;--accent: #ff8a65;min-height:100vh;display:grid;place-items:center;padding:2rem;box-sizing:border-box;background:radial-gradient(circle at 15% 20%,#ffffffb8 0 16%,transparent 45%),radial-gradient(circle at 80% 85%,#fff9ea 0 14%,transparent 40%),linear-gradient(140deg,var(--bg-start),var(--bg-end));font-family:"Baloo 2",Comic Sans MS,Trebuchet MS,sans-serif;position:relative;overflow:hidden}.card{width:min(460px,100%);text-align:center;border-radius:28px;padding:2rem 1.5rem;color:var(--text-main);background:linear-gradient(180deg,var(--card-start),var(--card-end));box-shadow:0 20px 40px #9f6d5f2a,inset 0 0 0 2px #ffffffba;animation:floatCard 3.2s ease-in-out infinite}.badge{display:inline-block;margin:0;padding:.35rem .8rem;border-radius:999px;background:#ffe2b5;font-size:.75rem;letter-spacing:.1em;font-weight:800}h1{margin:1rem 0 .6rem;line-height:1.1;font-size:clamp(2rem,6vw,3.2rem)}h1 span{display:block;margin-top:.2rem;color:var(--accent)}.subtitle{margin:0;color:var(--text-sub);font-size:1rem}button{margin-top:1.4rem;border:0;border-radius:14px;padding:.72rem 1.1rem;font:inherit;font-weight:700;color:#fff;background:linear-gradient(90deg,#ff9770,#ff7a7a);cursor:pointer;box-shadow:0 8px 16px #ff8a6575;transition:transform .15s ease}button:hover{transform:translateY(-2px) scale(1.03)}.sparkle-layer{position:absolute;inset:0;pointer-events:none}.sparkle-layer span{position:absolute;top:105%;left:calc(10% + var(--index, 0) * 12%);font-size:clamp(1.2rem,2.5vw,1.8rem);animation:rise 5s linear infinite;animation-delay:var(--delay)}.sparkle-layer span:nth-child(1){left:8%}.sparkle-layer span:nth-child(2){left:22%}.sparkle-layer span:nth-child(3){left:38%}.sparkle-layer span:nth-child(4){left:56%}.sparkle-layer span:nth-child(5){left:72%}.sparkle-layer span:nth-child(6){left:88%}@keyframes floatCard{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes rise{0%{transform:translateY(0) scale(.7);opacity:0}20%{opacity:1}to{transform:translateY(-120vh) scale(1.1);opacity:0}}@media(max-width:520px){.page{padding:1.2rem}.card{border-radius:22px;padding:1.6rem 1.2rem}}
