*{box-sizing:border-box;margin:0;padding:0}html,body,#app{width:100%;height:100%}body{color:#fff;background:#000;font-family:Inter,system-ui,sans-serif;overflow:hidden}button{font:inherit}.universe{background:#000;width:100vw;height:100vh;min-height:100svh;position:relative;overflow:hidden}#universe{width:100%;height:100%;display:block;position:fixed;inset:0}.intro{z-index:2;text-align:center;pointer-events:none;width:min(720px,100vw - 40px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.intro h1{letter-spacing:0;color:#0000;background:linear-gradient(120deg,#fff,#dfe7ff 52%,#91a8d8);text-shadow:0 0 42px #b6ccff1f;-webkit-background-clip:text;background-clip:text;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(4rem,11vw,8.5rem);font-weight:400;line-height:.82}.intro h1 span{display:block}.intro p{letter-spacing:.18em;color:#ffffffbd;margin-top:clamp(24px,4vw,36px);font-size:clamp(1rem,2.2vw,1.25rem);font-weight:300;line-height:1.5}.intro button{color:#ffffffe6;letter-spacing:.22em;cursor:pointer;pointer-events:auto;background:#ffffff0e;border:1px solid #ffffff57;border-radius:999px;margin-top:clamp(36px,6vw,54px);padding:16px 54px;transition:border-color .35s,background .35s,box-shadow .35s,transform .35s}.intro button:hover{background:#ffffff18;border-color:#dce6ffb3;transform:translateY(-3px);box-shadow:0 0 38px #b4cdff38}.intro button:focus-visible{outline-offset:6px;outline:2px solid #dce6ffe6}.message-card{z-index:3;color:#ffffffe6;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);opacity:0;pointer-events:none;background:linear-gradient(#121724b8,#04060c8f);border:1px solid #dce6ff3d;border-radius:8px;width:min(440px,100vw - 32px);padding:clamp(24px,5vw,34px);position:absolute;bottom:clamp(28px,7vh,72px);left:50%;transform:translate(-50%);box-shadow:0 24px 70px #0000006b,0 0 60px #a5beff1c}.message-card__kicker{letter-spacing:.28em;text-transform:uppercase;color:#d0deffad;font-size:.75rem;line-height:1}.message-card__title{letter-spacing:0;margin-top:14px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2rem,8vw,3.1rem);font-weight:400;line-height:.95}.message-card__text{color:#ffffffb8;margin-top:18px;font-size:.98rem;font-weight:300;line-height:1.7}.message-card__button{color:#ffffffe0;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;background:#fff1;border:1px solid #dce6ff57;border-radius:999px;min-width:154px;margin-top:24px;padding:13px 24px;transition:border-color .3s,background .3s,box-shadow .3s,transform .3s}.message-card__button:hover{background:#ffffff1c;border-color:#dce6ffb3;transform:translateY(-2px);box-shadow:0 0 32px #b4cdff2e}.message-card__button:focus-visible{outline-offset:5px;outline:2px solid #dce6ffe6}.message-card__button[hidden]{display:none}.message-card__guess{margin-top:24px}.message-card__guess[hidden]{display:none}.message-card__label{letter-spacing:.18em;text-transform:uppercase;color:#d0deff9e;font-size:.72rem;display:block}.message-card__guess-row{grid-template-columns:1fr auto;gap:10px;margin-top:12px;display:grid}.message-card__input{color:#ffffffe6;background:#ffffff0e;border:1px solid #dce6ff47;border-radius:999px;outline:none;min-width:0;height:44px;padding:0 15px}.message-card__input::placeholder{color:#ffffff61}.message-card__input:focus{border-color:#dce6ffb8;box-shadow:0 0 24px #b4cdff24}.message-card__submit{color:#ffffffe0;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:#fff1;border:1px solid #dce6ff57;border-radius:999px;min-width:96px;padding:0 18px}.message-card__feedback{color:#dce6ffad;min-height:1.4em;margin-top:10px;font-size:.84rem}.final-letter{z-index:4;color:#ffffffeb;opacity:0;pointer-events:none;background:radial-gradient(circle at 50% 44%,#1e263e57,#000000b8 62%);place-items:center;padding:28px;transition:opacity 1.4s;display:grid;position:absolute;inset:0}.final-letter--visible{opacity:1;pointer-events:auto}.final-letter__inner{text-align:center;opacity:0;scroll-behavior:smooth;width:min(680px,100vw - 36px);max-height:78vh;padding:20px 30px 40px;transition:transform 1.4s,opacity 1.4s;overflow-y:auto;transform:translateY(18px)scale(.98)}.final-letter--visible .final-letter__inner{opacity:1;transform:translateY(0)scale(1)}.final-letter__kicker{letter-spacing:.34em;text-transform:uppercase;color:#d0deffad;font-size:.78rem;line-height:1}.final-letter h2{letter-spacing:0;color:#0000;background:linear-gradient(120deg,#fff,#eef3ff 50%,#9db8ff);-webkit-background-clip:text;background-clip:text;margin-top:18px;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(3rem,10vw,5.8rem);font-weight:400;line-height:.92}.final-letter p:not(.final-letter__kicker){color:#ffffffc7;text-shadow:0 0 28px #a9c6ff2e;max-width:560px;margin:24px auto 0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.35rem,3vw,1.9rem);font-weight:400;line-height:1.45}.final-letter .final-letter__signature{color:#dce6ffcc;margin-top:32px;font-size:clamp(1.15rem,2.5vw,1.5rem);font-style:italic}.final-letter__inner::-webkit-scrollbar{width:8px}.final-letter__inner::-webkit-scrollbar-track{background:#ffffff0d;border-radius:20px}.final-letter__inner::-webkit-scrollbar-thumb{background:#b4c8ff59;border-radius:20px}@media (width<=520px){.intro{width:min(340px,100vw - 32px)}.intro p{letter-spacing:.12em}.intro button{width:min(220px,100%);padding-inline:28px}.message-card{bottom:18px}.message-card__guess-row{grid-template-columns:1fr}.message-card__submit{height:42px}}
