:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,sans-serif;color-scheme:light;--bg:#fbfcfe;--ink:#1b2433;--muted:#687586;--panel:#fff;--tint:#edf3ff;--line:#dce4f0;--blue:#2766c6;--button:#2766c6;--shadow:0 16px 56px #173d6e0b;background:var(--bg);color:var(--ink);font-synthesis:none}:root[data-theme=dark]{color-scheme:dark;--bg:#10141c;--ink:#eef3fc;--muted:#a0adbf;--panel:#191f2a;--tint:#1c2d48;--line:#2e3b50;--blue:#8fb9ff;--shadow:0 16px 56px #0003}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.page{max-width:1080px;margin:auto;padding:24px 36px}.header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);font-size:1.125rem;font-weight:650;text-decoration:none}.preferences{margin-left:auto;display:flex;gap:10px;align-items:center}.preferences select,.theme{border:1px solid var(--line);color:var(--muted);background:var(--panel);border-radius:99px;min-height:44px;padding:0 12px}.theme{font-size:1.5rem;min-width:44px;padding:0}main{max-width:530px;margin:82px auto 0}.eyebrow{font-size:.875rem;letter-spacing:.08em;color:var(--blue);font-weight:600;margin:0 0 20px}h1{font-size:clamp(1.8125rem,4.7vw,2.6875rem);line-height:1.3;letter-spacing:-.04em;margin:0;overflow-wrap:anywhere}.friend{color:var(--blue)}.intro{font-size:1.0625rem;line-height:1.8;color:var(--muted);margin:20px 0 30px}.invitation-card{border:1px solid var(--line);border-radius:30px;background:linear-gradient(150deg,var(--tint),var(--panel) 70%);box-shadow:var(--shadow);padding:28px;margin:28px 0}.card-label{color:var(--muted);margin:0 0 18px;font-size:.875rem}.code{display:flex;gap:8px;-webkit-user-select:all;user-select:all;justify-content:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;direction:ltr}.code span{flex:1;display:grid;place-items:center;max-width:64px;min-height:72px;border-radius:15px;background:var(--panel);border:1px solid var(--line);font-size:1.875rem;font-weight:650;color:var(--blue)}.primary,.secondary{width:100%;min-height:56px;border-radius:99px;padding:14px 22px;border:0;font-size:1rem;font-weight:600;line-height:1.4;white-space:normal}.primary{background:var(--button);color:#fff;display:flex;justify-content:center;gap:16px}.secondary{color:var(--blue);background:transparent;border:1px solid var(--line);margin-top:22px}.hint,.copy-status,.status{color:var(--muted);font-size:.8125rem;line-height:1.7}.copy-status{margin:14px 0 0;text-align:center}.hint{margin:16px 4px 28px}.steps{padding:12px 4px}h2{font-size:1rem;font-weight:600;margin:0 0 20px}ol{padding:0;margin:0;list-style:none;counter-reset:steps;display:grid;gap:16px}li{counter-increment:steps;display:flex;gap:12px;align-items:baseline;font-size:.875rem;line-height:1.6;color:var(--muted)}li:before{content:counter(steps);background:var(--tint);color:var(--blue);border:1px solid var(--line);border-radius:50%;min-width:24px;height:24px;text-align:center;font-size:.75rem;line-height:22px}.privacy{font-size:.75rem;line-height:1.8;color:var(--muted);display:flex;gap:8px;margin:30px 4px}.input-card{display:grid;gap:14px}.input-card h2{margin:0}.input-card label{font-size:.8125rem;color:var(--muted)}input{width:100%;letter-spacing:.22em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,monospace;font-size:1.5rem;color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:16px;min-height:60px;background:var(--panel);outline-color:var(--blue)}.notice{min-height:260px;padding:24px 0}.notice h1{font-size:1.875rem}.notice .secondary{margin-top:16px}.spinner{width:30px;height:30px;border:2px solid var(--line);border-top-color:var(--blue);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:24px}@keyframes spin{to{transform:rotate(360deg)}}footer{display:flex;justify-content:center;align-items:center;gap:10px;margin:62px 0 28px;color:var(--muted);font-size:.75rem}@media(max-width:540px){.page{padding:20px}main{margin-top:52px}.brand{font-size:1rem;gap:9px}.preferences{gap:6px}.preferences select{max-width:calc(100vw - 108px);padding:0 8px}.invitation-card{padding:22px;border-radius:26px}.code{gap:6px}.code span{min-height:58px;font-size:1.5rem;border-radius:12px}footer{margin-top:44px}}@media(max-height:600px)and (min-width:541px){main{margin-top:36px}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}
