:root{--bg: #f6c89c;--bg-2: #e3a26d;--sky: #fcd9a8;--cream: #fff5dd;--ink: #2f2a22;--ink-dark: #1a160f;--hl: #fffaf0;--hl-soft: #ebcfa6;--soil-l: #c98a5a;--soil-d: #8a5a37;--rock: #b9b9a6;--rock-l: #ddddc6;--rock-d: #6e6f5b;--leaf-l: #c7e07a;--leaf: #88c66c;--leaf-d: #4f8f50;--flower: #f291ad;--flower-d: #cb6685;--flower-c: #ffd866;--flower-2: #ffd866;--accent: #ed876a;--accent-d: #b75c43}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;font-family:VT323,monospace;color:var(--ink);background:radial-gradient(120% 80% at 50% 0%,var(--sky) 0%,var(--bg) 55%,var(--bg-2) 100%);overflow-x:hidden;image-rendering:pixelated;-webkit-font-smoothing:none;font-smooth:never}body:before{content:"";position:fixed;inset:0;background-image:radial-gradient(rgba(45,58,46,.18) 1px,transparent 1px);background-size:4px 4px;mix-blend-mode:multiply;opacity:.18;pointer-events:none;z-index:1}.world{position:fixed;inset:0;pointer-events:none;z-index:0}.sun{position:absolute;top:7vh;right:8vw;width:88px;height:88px;background:var(--flower-c);box-shadow:0 0 0 8px var(--bg),0 0 0 16px #fbd23f59,0 0 0 24px #fbd23f2e;clip-path:polygon(25% 0,75% 0,75% 12%,87% 12%,87% 25%,100% 25%,100% 75%,87% 75%,87% 87%,75% 87%,75% 100%,25% 100%,25% 87%,12% 87%,12% 75%,0 75%,0 25%,12% 25%,12% 12%,25% 12%);animation:sunSpin 60s linear infinite}@keyframes sunSpin{to{transform:rotate(360deg)}}.cloud{position:absolute;background:var(--cream);box-shadow:16px 0 0 var(--cream),-16px 0 0 var(--cream),0 -10px 0 var(--cream),24px -10px 0 var(--cream),-8px -10px 0 var(--cream),0 10px 0 var(--hl-soft);width:24px;height:12px;opacity:.95;animation:drift linear infinite}.cloud-a{top:12vh;left:-10%;animation-duration:70s}.cloud-b{top:24vh;left:-10%;animation-duration:95s;animation-delay:-20s;transform:scale(1.4)}.cloud-c{top:5vh;left:-10%;animation-duration:110s;animation-delay:-60s;transform:scale(.8)}@keyframes drift{0%{transform:translate(0) scale(var(--s, 1))}to{transform:translate(120vw) scale(var(--s, 1))}}.hill{position:absolute;bottom:0;background:var(--leaf-d);border-top:6px solid var(--leaf)}.hill-1{left:-8%;width:60%;height:22vh;clip-path:polygon(0 100%,0 60%,8% 50%,18% 38%,30% 30%,45% 28%,60% 36%,72% 50%,86% 60%,100% 70%,100% 100%);opacity:.7}.hill-2{right:-10%;width:70%;height:30vh;clip-path:polygon(0 100%,0 70%,12% 58%,22% 50%,34% 40%,48% 30%,62% 28%,76% 38%,88% 50%,100% 60%,100% 100%);opacity:.85}.grass{position:absolute;bottom:0;left:0;right:0;height:12vh;background:linear-gradient(to bottom,transparent 0%,rgba(47,107,45,.85) 30%,var(--leaf-d) 100%)}.grass:before{content:"";position:absolute;left:0;right:0;top:28%;height:18px;background-image:radial-gradient(circle at 5% 100%,var(--leaf) 6px,transparent 7px),radial-gradient(circle at 14% 100%,var(--leaf-l) 4px,transparent 5px),radial-gradient(circle at 23% 100%,var(--leaf) 7px,transparent 8px),radial-gradient(circle at 33% 100%,var(--leaf-d) 5px,transparent 6px),radial-gradient(circle at 42% 100%,var(--leaf) 6px,transparent 7px),radial-gradient(circle at 53% 100%,var(--leaf-l) 5px,transparent 6px),radial-gradient(circle at 62% 100%,var(--leaf) 7px,transparent 8px),radial-gradient(circle at 71% 100%,var(--leaf-d) 6px,transparent 7px),radial-gradient(circle at 82% 100%,var(--leaf) 5px,transparent 6px),radial-gradient(circle at 92% 100%,var(--leaf-l) 6px,transparent 7px)}.screen{position:relative;z-index:2;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px 22vh}[hidden]{display:none!important}.card{width:min(440px,100%);background:var(--cream);color:var(--ink);position:relative;box-shadow:0 -6px 0 var(--ink),0 6px 0 var(--ink),-6px 0 0 var(--ink),6px 0 0 var(--ink),12px 12px 0 var(--ink),-2px -2px 0 var(--hl-soft) inset;animation:pop .6s cubic-bezier(.34,1.56,.64,1) both}@keyframes pop{0%{transform:translateY(20px) scale(.92);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.card-bar{background:var(--ink);color:var(--cream);font-family:Silkscreen,monospace;font-size:12px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;letter-spacing:1px}.bar-title{opacity:.9}.bar-x{font-family:VT323,monospace;font-size:20px;line-height:1}.dots{display:inline-flex;gap:4px}.dots i{width:8px;height:8px;background:var(--accent);display:inline-block}.dots i:nth-child(2){background:var(--flower-c)}.dots i:nth-child(3){background:var(--leaf-l)}.card-body{padding:28px 24px 26px;text-align:center}.kicker{font-family:Silkscreen,monospace;font-size:12px;letter-spacing:2px;color:var(--accent);margin:0 0 18px}.big{font-family:Silkscreen,monospace;font-weight:700;font-size:clamp(2.6rem,9vw,3.6rem);line-height:.95;margin:0 0 22px;color:var(--leaf-d);letter-spacing:2px;text-shadow:4px 4px 0 var(--flower),8px 8px 0 var(--ink)}.big span{display:block}.big span:nth-child(1){transform:translate(-12px) rotate(-2deg)}.big span:nth-child(2){transform:translate(8px);color:var(--accent)}.big span:nth-child(3){transform:translate(-4px) rotate(1.5deg)}.prompt{font-size:1.3rem;margin:0 0 22px;color:var(--ink);animation:blink 1.4s steps(2,end) infinite}@keyframes blink{50%{opacity:.45}}.footnote{font-family:Silkscreen,monospace;font-size:10px;margin:18px 0 0;color:var(--soil-d);letter-spacing:1px;opacity:.7}.btn{font-family:Silkscreen,monospace;font-weight:700;font-size:1.1rem;letter-spacing:1.5px;background:var(--accent);color:var(--cream);border:0;padding:16px 22px;cursor:pointer;position:relative;display:inline-flex;align-items:center;gap:12px;box-shadow:0 -5px 0 var(--ink),0 5px 0 var(--ink),-5px 0 0 var(--ink),5px 0 0 var(--ink),5px 5px 0 var(--ink),-5px 5px 0 var(--ink),5px -5px 0 var(--ink),-5px -5px 0 var(--ink),10px 10px 0 var(--ink),inset 4px 4px #ffffff40,inset -4px -4px 0 var(--accent-d);transition:transform 80ms steps(2,end)}.btn:after{content:"";position:absolute;inset:4px 6px auto;height:2px;background:#ffffff73}.btn:hover{transform:translate(-2px,-2px)}.btn:active{transform:translate(4px,4px)}.btn-icon{font-size:14px}.btn-small{display:block;align-self:flex-start;margin-top:26px;font-family:Silkscreen,monospace;font-size:12px;background:var(--cream);color:var(--ink);border:0;padding:10px 14px;cursor:pointer;letter-spacing:1.5px;box-shadow:0 -4px 0 var(--ink),0 4px 0 var(--ink),-4px 0 0 var(--ink),4px 0 0 var(--ink),6px 6px 0 var(--ink);transition:transform 80ms steps(2,end)}.btn-small:hover{transform:translate(-1px,-1px)}.btn-small:active{transform:translate(3px,3px)}.reveal-grid{display:grid;grid-template-columns:1fr;gap:32px;align-items:center;max-width:1100px;width:100%;z-index:3}@media (min-width: 880px){.reveal-grid{grid-template-columns:minmax(280px,360px) 1fr;gap:56px}}.stage{position:relative;display:flex;align-items:flex-end;justify-content:center;min-height:420px}.halo{position:absolute;width:360px;height:360px;top:50%;left:50%;transform:translate(-50%,-55%);background:radial-gradient(circle,#fbd23f8c,#fbd23f00 60%);animation:pulse 3s ease-in-out infinite;z-index:0}@keyframes pulse{0%,to{opacity:.8;transform:translate(-50%,-55%) scale(1)}50%{opacity:1;transform:translate(-50%,-55%) scale(1.08)}}.stage-shadow{position:absolute;bottom:12px;left:50%;transform:translate(-50%);width:220px;height:14px;background:var(--ink);opacity:.18;filter:blur(0);clip-path:polygon(8% 0,92% 0,100% 100%,0 100%);z-index:0}.terrarium{position:relative;z-index:1;width:clamp(260px,38vw,360px);height:auto;filter:drop-shadow(8px 8px 0 rgba(42,58,45,.18));animation:floaty 4s ease-in-out infinite}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.terrarium .ink{fill:var(--ink)}.terrarium .ink-dark{fill:var(--ink-dark)}.terrarium .hl{fill:var(--hl)}.terrarium .hl-soft{fill:var(--hl-soft)}.terrarium .cream{fill:var(--cream)}.terrarium .soil-l{fill:var(--soil-l)}.terrarium .soil-d{fill:var(--soil-d)}.terrarium .rock{fill:var(--rock)}.terrarium .rock-l{fill:var(--rock-l)}.terrarium .rock-d{fill:var(--rock-d)}.terrarium .leaf{fill:var(--leaf)}.terrarium .leaf-l{fill:var(--leaf-l)}.terrarium .leaf-d{fill:var(--leaf-d)}.terrarium .flower{fill:var(--flower)}.terrarium .flower-d{fill:var(--flower-d)}.terrarium .flower-c{fill:var(--flower-c)}.terrarium .grow{transform-box:fill-box;transform-origin:50% 100%;transform:scaleY(0);animation:sprout .48s cubic-bezier(.34,1.56,.64,1) forwards}.grow-1{animation-delay:.3s}.grow-2{animation-delay:.65s;transform-origin:50% 100%}.grow-3{animation-delay:.9s}.grow-4{animation-delay:1.25s}.grow-5{animation-delay:1.55s}.grow-6{animation:bloom .52s cubic-bezier(.34,1.7,.5,1) forwards;animation-delay:1.95s;transform-origin:50% 90%}.grow-7{animation:bloom .38s cubic-bezier(.34,1.7,.5,1) forwards;animation-delay:2.25s;transform-origin:50% 90%}@keyframes sprout{0%{transform:scaleY(0)}70%{transform:scaleY(1.12)}to{transform:scaleY(1)}}@keyframes bloom{0%{transform:scale(0) rotate(-30deg)}to{transform:scale(1) rotate(0)}}.terrarium .spark{fill:var(--cream);transform-box:fill-box;transform-origin:center;opacity:0;animation:twinkle 1.8s ease-in-out infinite;animation-delay:2.4s}.spark-2{animation-delay:2.7s;fill:var(--flower-c)}.spark-3{animation-delay:3.1s;fill:var(--cream)}.spark-4{animation-delay:2.9s;fill:var(--flower)}.spark-5{animation-delay:3.3s;fill:var(--flower-c)}@keyframes twinkle{0%,to{opacity:0;transform:scale(.4)}50%{opacity:1;transform:scale(1.2)}}.text-stack{text-align:center;position:relative;display:flex;flex-direction:column;align-items:center}@media (min-width: 880px){.text-stack{text-align:left;align-items:flex-start}}.line{font-family:VT323,monospace;margin:0 0 10px;clip-path:inset(0 100% 0 0);animation:type .7s steps(20,end) forwards;position:relative;display:block;width:fit-content;max-width:100%}.line-0{font-family:Silkscreen,monospace;font-size:clamp(18px,2.4vw,26px);letter-spacing:4px;color:var(--accent);margin-bottom:16px;animation-duration:.7s;animation-delay:.15s}.line-1{font-size:clamp(2.2rem,5vw,3.4rem);color:var(--soil-d);margin-bottom:12px;animation-duration:.9s;animation-delay:.95s}.line-3{font-size:clamp(2.2rem,4.8vw,3.2rem);margin-top:22px;margin-bottom:12px;color:var(--ink);animation-duration:.8s;animation-delay:3.1s}.line-4{font-size:clamp(2.2rem,4.8vw,3.2rem);color:var(--accent-d);animation-duration:.7s;animation-delay:4s}@keyframes type{to{clip-path:inset(0 0 0 0)}}.title{font-family:Silkscreen,monospace;font-weight:700;font-size:clamp(2rem,8.5vw,4.5rem);line-height:.95;margin:14px 0 10px;letter-spacing:2px;display:flex;flex-wrap:nowrap;align-items:baseline;gap:0;white-space:nowrap;max-width:100%}@media (min-width: 880px){.title{font-size:clamp(2.5rem,5.2vw,5.5rem)}}@media (max-width: 420px){.title{letter-spacing:0}}.t-letter,.t-bang{display:inline-block;color:var(--leaf-d);text-shadow:4px 0 0 var(--ink),-4px 0 0 var(--ink),0 4px 0 var(--ink),0 -4px 0 var(--ink),4px 4px 0 var(--ink),-4px -4px 0 var(--ink),4px -4px 0 var(--ink),-4px 4px 0 var(--ink),8px 8px 0 var(--soil-d);opacity:0;transform:translateY(-30px) scale(.6) rotate(-8deg);animation:drop .52s cubic-bezier(.34,1.7,.5,1) forwards;animation-delay:calc(2s + var(--i) * .09s)}.t-letter:nth-child(odd){color:var(--leaf)}.t-letter:nth-child(3n){color:var(--flower)}.t-bang{color:var(--accent);margin-left:8px;animation-name:bangIn}@keyframes drop{0%{opacity:0;transform:translateY(-40px) scale(.6) rotate(-8deg)}60%{opacity:1;transform:translateY(6px) scale(1.05) rotate(2deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@keyframes bangIn{0%{opacity:0;transform:scale(0) rotate(-20deg)}70%{opacity:1;transform:scale(1.3) rotate(8deg)}to{opacity:1;transform:scale(1) rotate(0)}}.badge{display:inline-block;background:var(--flower-c);color:var(--ink);font-family:Silkscreen,monospace;font-size:1.1rem;padding:4px 10px;letter-spacing:2px;transform:rotate(-2deg);box-shadow:0 -4px 0 var(--ink),0 4px 0 var(--ink),-4px 0 0 var(--ink),4px 0 0 var(--ink),6px 6px 0 var(--ink)}.heart{display:inline-block;color:var(--flower);font-size:1.6em;animation:beat 1.2s ease-in-out infinite;text-shadow:2px 2px 0 var(--ink)}@keyframes beat{0%,to{transform:scale(1)}20%{transform:scale(1.25)}40%{transform:scale(.95)}60%{transform:scale(1.15)}}.confetti{position:fixed;inset:0;pointer-events:none;z-index:4;overflow:hidden}.confetti i{position:absolute;top:-20px;left:var(--x);width:10px;height:10px;background:var(--c);animation:fall var(--r) linear infinite;animation-delay:var(--d);box-shadow:2px 2px #2a3a2d73}.confetti i:nth-child(3n){width:8px;height:8px}.confetti i:nth-child(4n){width:12px;height:12px;transform:rotate(45deg)}@keyframes fall{0%{transform:translateY(0) rotate(0);opacity:1}90%{opacity:1}to{transform:translateY(110vh) rotate(540deg);opacity:.4}}.hb-banner{font-family:Silkscreen,monospace;font-weight:700;font-size:clamp(1.4rem,4.4vw,3.4rem);line-height:1;margin:0 0 32px;text-align:center;letter-spacing:2px;display:flex;justify-content:center;flex-wrap:nowrap;white-space:nowrap;width:100%;padding:0 8px;position:relative;z-index:3}.hb{display:inline-block;color:var(--flower);text-shadow:3px 0 0 var(--ink),-3px 0 0 var(--ink),0 3px 0 var(--ink),0 -3px 0 var(--ink),3px 3px 0 var(--ink),-3px -3px 0 var(--ink),3px -3px 0 var(--ink),-3px 3px 0 var(--ink),6px 6px 0 var(--soil-d);animation:hbWave 2.4s ease-in-out infinite;animation-delay:calc(var(--i) * .07s);transform-origin:50% 100%}.hb:nth-child(3n+1){color:var(--flower-c)}.hb:nth-child(3n+2){color:var(--leaf)}.hb-bang{color:var(--accent)!important}.hb-space{animation:none;width:.3em;text-shadow:none}@keyframes hbWave{0%,to{transform:translateY(0) rotate(-2deg)}25%{transform:translateY(-8px) rotate(2deg)}50%{transform:translateY(0) rotate(-2deg)}75%{transform:translateY(-4px) rotate(1deg)}}@media (max-width: 480px){.hb-banner{letter-spacing:0;font-size:clamp(1.1rem,5.4vw,1.8rem)}.hb{text-shadow:2px 0 0 var(--ink),-2px 0 0 var(--ink),0 2px 0 var(--ink),0 -2px 0 var(--ink),2px 2px 0 var(--ink),-2px -2px 0 var(--ink),4px 4px 0 var(--soil-d)}}@media (max-width: 700px){.screen{padding:24px 16px 18vh}.reveal-grid{gap:18px}.stage{min-height:320px}.terrarium{width:clamp(220px,70vw,320px)}.halo{width:260px;height:260px}.stage-shadow{width:160px}.text-stack{display:flex;flex-direction:column;align-items:flex-start}.line-0{font-size:clamp(14px,4.2vw,22px);letter-spacing:3px}.line-1{font-size:clamp(1.5rem,6.5vw,2.4rem)}.line-3,.line-4{font-size:clamp(1.5rem,6vw,2.4rem)}.badge{font-size:clamp(1rem,4vw,1.4rem);padding:4px 10px}.t-letter,.t-bang{text-shadow:2px 0 0 var(--ink),-2px 0 0 var(--ink),0 2px 0 var(--ink),0 -2px 0 var(--ink),2px 2px 0 var(--ink),-2px -2px 0 var(--ink),4px 4px 0 var(--soil-d)}.btn{font-size:.95rem;padding:14px 18px}.big{text-shadow:3px 3px 0 var(--flower),6px 6px 0 var(--ink)}.sun{width:60px;height:60px;top:4vh;right:6vw}}#reveal[hidden]{display:none!important}
