@import"https://fonts.googleapis.com/css2?family=Amiri:wght@400;700&family=Noto+Sans+Arabic:wght@400;500;600&display=swap";:root{font-family:Noto Sans Arabic,sans-serif;color:#f8e8df;background:#000;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:#000}button{-webkit-tap-highlight-color:transparent;font:inherit;cursor:pointer}.experience{position:relative;isolation:isolate;min-height:640px;height:100svh;overflow:hidden;background:#000}.title{position:relative;z-index:3;text-align:center;padding:0 24px;margin:7svh auto 0;pointer-events:none}.eyebrow{font-size:12px;color:#cba882;margin:0 0 12px}h1{font-family:Amiri,Georgia,serif;font-weight:400;font-size:clamp(42px,4.5vw,65px);line-height:1.3;margin:0}h1 em{font-style:normal;color:#e6a9ba}.subtitle{color:#aa929d;font-size:13px;line-height:1.8;margin-top:14px}.scene{position:absolute;inset:24% 8% 23%;touch-action:none;z-index:1}.guide{max-width:490px;margin:0 auto 8px;color:#bca4ad;font-size:12px;line-height:1.9;text-wrap:pretty}.controls{position:absolute;bottom:max(5svh,env(safe-area-inset-bottom));left:20px;right:20px;text-align:center;z-index:4}.hint{color:#b293a0;font-size:11px;line-height:1.9;margin:0 0 12px}.next{min-height:48px;min-width:80px;padding:10px 24px;background:transparent;border:0;border-radius:0;box-shadow:none;color:#f3cedc;font-size:15px;transition:color .2s}.next:hover{color:#fff}.next:disabled{cursor:default;opacity:.45}.next:focus-visible{outline:1px solid #e6a9ba;outline-offset:4px}.mic-status{font-size:11px;line-height:1.8;color:#d5acbb;margin:8px 0 0}.mic-status:empty{display:none}.stage-3 .scene{opacity:.15;filter:blur(3px);pointer-events:none}.letter{position:relative;z-index:3;margin:24px auto 0;text-align:center;padding:12px 24px;max-width:530px}.letter p{font-family:Amiri,serif;font-size:24px;line-height:1.95;color:#e0c5ce;margin:18px 0}.letter strong{display:block;font-family:Amiri,serif;font-size:32px;font-weight:400;color:#f3c5d5}.letter small{display:block;margin:18px 0 8px;font-size:11px;color:#a78a98}.music-player{position:absolute;width:200px;height:200px;overflow:hidden;opacity:0;pointer-events:none;z-index:-1}.music-player iframe{width:200px;height:200px;border:0}.loading,.fallback{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#c49aaf;font-size:13px}.fallback{font-size:80px}.fallback p{font-size:15px;text-align:center}@media(max-width:600px){.experience{min-height:620px}.title{margin-top:7svh}h1{font-size:43px}.eyebrow{font-size:10px}.subtitle{font-size:11px}.scene{inset:26% -12% 25%}.guide{max-width:330px;font-size:11px}.hint{font-size:10px}.controls{bottom:max(5svh,env(safe-area-inset-bottom))}.letter{margin-top:14px;padding:0 20px}.letter p{font-size:21px;line-height:1.85}.letter strong{font-size:29px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition:none!important}}.stage-2 .scene{opacity:.8;filter:none;pointer-events:none}.celebration{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:6}.balloon{position:absolute;left:var(--x);bottom:-210px;width:58px;height:73px;border-radius:50% 50% 47% 47%;background:radial-gradient(ellipse at 30% 25%,#ffffffa0,transparent 38%),var(--color);box-shadow:inset -8px -6px 15px #0003;animation:balloon-rise 3.8s var(--delay) cubic-bezier(.15,.45,.4,1) both}.balloon:before{content:"";position:absolute;bottom:-5px;left:25px;border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:7px solid var(--color)}.balloon:after{content:"";position:absolute;top:78px;left:29px;width:1px;height:85px;background:linear-gradient(#ead8bc99,transparent);transform:rotate(8deg);transform-origin:top}.confetti{position:absolute;left:var(--x);top:-8%;width:7px;height:12px;border-radius:1px;background:var(--color);animation:confetti-fall 3s var(--delay) cubic-bezier(.16,.5,.65,1) both}.celebration-wish{position:absolute;inset:auto 20px 12%;text-align:center;font-family:Amiri,serif;font-size:clamp(24px,4vw,38px);color:#ffe1c2;text-shadow:0 0 22px #f798b770;animation:wish-arrive 2.8s both}.typed-letter p{white-space:pre-line;min-height:188px}.typing-cursor{display:inline-block;color:#e6a9ba;font-size:19px;animation:cursor-blink .75s steps(1) infinite}@keyframes balloon-rise{0%{opacity:0;transform:translateZ(0) rotate(-8deg)}10%{opacity:.95}85%{opacity:.95}to{opacity:0;transform:translate3d(var(--drift),-145svh,0) rotate(12deg)}}@keyframes confetti-fall{0%{opacity:0;transform:translate3d(0,-5svh,0) rotate(0)}8%{opacity:1}85%{opacity:1}to{opacity:0;transform:translate3d(var(--drift),112svh,0) rotate(var(--spin))}}@keyframes wish-arrive{0%{opacity:0;transform:translateY(12px)}20%,80%{opacity:1;transform:translateY(0)}to{opacity:0}}@keyframes cursor-blink{50%{opacity:0}}.celebration.still .balloon{animation:none;bottom:12%;opacity:.5;transform:scale(.65)}.celebration.still .confetti{animation:none;top:45%;opacity:.4}.celebration.still .celebration-wish{animation:none}@media(max-width:600px){.balloon{width:43px;height:56px}.balloon:after{top:61px;left:21px;height:65px}.balloon:before{left:18px}.typed-letter p{min-height:156px}.celebration-wish{bottom:15%}}
