:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#09090b;color:#fafafa;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse 55% 40% at 50% 28%,#191521 0%,transparent 72%),#09090b}.page{max-width:1160px;margin:auto;padding:0 36px;min-height:100vh;display:flex;flex-direction:column}.header{height:88px;border-bottom:1px solid #27272a;display:flex;align-items:center;justify-content:space-between}.brand{color:#fafafa;text-decoration:none;display:flex;align-items:center;gap:11px;font-size:17px;font-weight:800;letter-spacing:-.8px;line-height:1}.brand-light{color:#a1a1aa}.brand small{display:block;color:#71717a;letter-spacing:2.6px;font-size:8px;margin-top:5px}.brand-mark{width:35px;height:35px;border-radius:9px;display:grid;place-items:center;background:#fafafa;color:#09090b;font-size:21px;position:relative}.brand-mark span{position:absolute;color:#a855f7;font-size:10px;right:4px;top:3px}.header-label,.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:700;color:#a1a1aa}.status-dot,.eyebrow-dot{display:inline-block;width:6px;height:6px;background:#a78bfa;border-radius:50%;margin-right:7px;vertical-align:middle}main{width:100%;max-width:560px;margin:auto;padding:82px 0 74px}.intro{text-align:center}.eyebrow{color:#c4b5fd;display:inline-flex;align-items:center;gap:5px;border:1px solid #3c304c;background:#1e1728;padding:8px 11px;border-radius:999px;font-size:10px}.eyebrow-dot{margin:0}h1{font-size:clamp(38px,6vw,58px);letter-spacing:-2.8px;line-height:1.08;margin:25px 0 18px;font-weight:700}h1 span{color:#a1a1aa}.intro>p{color:#a1a1aa;line-height:1.7;font-size:15px;max-width:390px;margin:0 auto}.card{margin-top:39px;border:1px solid #303036;border-radius:14px;background:#111113;box-shadow:0 20px 65px #0005;padding:28px}.card-top{display:flex;justify-content:space-between;align-items:start}.icon-box{height:48px;width:48px;display:grid;place-items:center;border:1px solid #3f3f46;background:#202024;border-radius:11px;color:#e9d5ff}.icon-box svg{width:24px}.badge{border:1px solid #3f3f46;border-radius:999px;padding:6px 9px;color:#a1a1aa;font-size:9px;letter-spacing:1px;font-weight:700}.card h2{font-size:21px;letter-spacing:-.5px;margin:24px 0 9px}.card-description{font-size:14px;line-height:1.6;color:#a1a1aa;margin:0}.room{margin-top:22px;padding:15px 16px;background:#18181b;border:1px solid #303036;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:12px}.room[hidden],.actions[hidden]{display:none}.room span{font-size:10px;letter-spacing:1px;color:#71717a;font-weight:700}.room strong{font-family:ui-monospace,monospace;font-size:15px;letter-spacing:1px;overflow-wrap:anywhere}.actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.button{min-height:44px;border-radius:7px;font:600 13px inherit;font-family:inherit;font-weight:600;font-size:13px;display:flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;cursor:pointer;transition:background .15s,transform .15s}.button:hover{transform:translateY(-1px)}.primary{background:#fafafa;color:#18181b;border:1px solid #fafafa}.primary:hover{background:#e4e4e7}.secondary{background:#202024;color:#fafafa;border:1px solid #3f3f46}.secondary:hover{background:#29292e}.button:focus-visible,a:focus-visible{outline:2px solid #c4b5fd;outline-offset:3px}.notice{display:flex;gap:11px;margin-top:23px;padding-top:19px;border-top:1px solid #27272a;color:#71717a}.notice-icon{border:1px solid #52525b;border-radius:50%;height:15px;width:15px;flex:none;text-align:center;font-size:10px;line-height:13px;font-weight:bold}.notice p{font-size:12px;line-height:1.55;margin:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);margin:34px 0 0}.steps>div{display:flex;gap:12px;padding:0 17px;border-left:1px solid #27272a}.steps>div:first-child{border:0;padding-left:0}.steps span{font:11px ui-monospace,monospace;color:#a78bfa;padding-top:3px}.steps p{color:#71717a;font-size:12px;line-height:1.6;margin:0}.steps strong{color:#d4d4d8;font-weight:500}footer{height:72px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #27272a;color:#71717a;font-size:11px}footer span+span{font-size:9px;font-weight:700;letter-spacing:1px}.footer-star{color:#a78bfa;font-size:14px!important;margin-left:5px}@media(max-width:600px){.page{padding:0 20px}.header{height:72px}.header-label{font-size:0}.header-label .status-dot{margin:0}main{padding:65px 0}h1{letter-spacing:-1.8px}.card{padding:22px}.actions{grid-template-columns:1fr}.steps>div{padding:0 9px;gap:7px}.steps p{font-size:11px}footer span+span{font-size:8px}}

/* Keep the invitation as the focus of the page. */
.card{margin-top:0}

/* Ambient color behind the invitation. */
body{position:relative;isolation:isolate;overflow-x:hidden;background:#09090f}
body::before,body::after{content:"";position:fixed;inset:-35%;z-index:-1;pointer-events:none}
body::before{background:radial-gradient(ellipse at 28% 34%,#7434b84d,transparent 35%),radial-gradient(ellipse at 75% 28%,#284acb45,transparent 34%),radial-gradient(ellipse at 52% 75%,#c32e8950,transparent 36%);filter:blur(45px);animation:ambient-drift 18s ease-in-out infinite alternate}
body::after{background:radial-gradient(ellipse at 70% 70%,#452bad40,transparent 34%),radial-gradient(ellipse at 30% 70%,#176b9b30,transparent 32%);filter:blur(55px);animation:ambient-drift 23s ease-in-out infinite alternate-reverse}
.page{min-height:100vh;justify-content:center}
main{margin:0 auto}
@keyframes ambient-drift{from{transform:translate3d(-3%,-3%,0) rotate(-7deg) scale(1)}to{transform:translate3d(3%,3%,0) rotate(9deg) scale(1.12)}}
@media(prefers-reduced-motion:reduce){body::before,body::after{animation:none}}
