.page { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 32px; min-height: 100dvh; padding: 48px 16px; } .hero { text-align: center; } .title { margin: 0; font-size: clamp(48px, 10vw, 84px); font-weight: 800; letter-spacing: -0.02em; background: linear-gradient(180deg, #fff, #c9b8ff); background-clip: text; color: transparent; } .star { color: var(--gold); text-shadow: 0 0 24px rgb(255 209 102 / 60%); } .subtitle { max-width: 440px; margin: 8px auto 0; color: var(--text-muted); } .panel { display: flex; flex-direction: column; gap: 12px; width: min(400px, 100%); padding: 24px; border: 1px solid var(--border); border-radius: 18px; background: rgb(26 22 64 / 80%); box-shadow: var(--shadow); } .label { font-size: 14px; font-weight: 600; color: var(--text-muted); } .input { width: 100%; padding: 11px 14px; border: 1px solid var(--border); border-radius: 10px; background: var(--bg-sunken); color: var(--text); font: inherit; } .input:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px rgb(139 108 255 / 25%); } .full { width: 100%; margin-top: 4px; } .divider { display: flex; align-items: center; gap: 12px; margin: 8px 0 0; color: var(--text-muted); font-size: 13px; } .divider::before, .divider::after { content: ''; flex: 1; height: 1px; background: var(--border); } .joinRow { display: flex; gap: 8px; } .code { font-family: ui-monospace, monospace; letter-spacing: 0.2em; text-transform: uppercase; } .footer { color: var(--text-muted); font-size: 13px; }