:root{color:#14213d;background:#f6f7fb;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}main{background:radial-gradient(circle at 100% 0,#d8e6ff,#0000 40%),#f6f7fb;place-items:center;min-height:100vh;padding:24px;display:grid}.card{background:#fff;border-radius:24px;width:min(700px,100%);padding:clamp(28px,6vw,56px);box-shadow:0 20px 60px #14213d1c}.eyebrow{color:#4668d8;letter-spacing:.12em;font-size:.75rem;font-weight:700}h1{margin:.5rem 0 1rem;font-size:clamp(2.25rem,6vw,4rem);line-height:1}.intro{color:#526075;margin-bottom:2.5rem}label{margin-bottom:.6rem;font-weight:650;display:block}.row,.actions{gap:.75rem;display:flex}input{border:1px solid #c6cede;border-radius:10px;flex:1;min-width:0;min-height:54px;padding:1rem;font-size:1rem}input:focus{border-color:#4668d8;outline:3px solid #9bb5ff}button,.open{color:#fff;cursor:pointer;background:#2447b8;border:0;border-radius:10px;justify-content:center;align-items:center;min-height:48px;padding:.8rem 1.2rem;font-weight:700;text-decoration:none;display:inline-flex}button:disabled{opacity:.7;cursor:wait}.error{color:#b42318;margin-top:1rem}.success{background:#edf5ff;border-radius:12px;margin-top:1.5rem;padding:1.25rem}.success p{margin-top:0;font-weight:700}a{overflow-wrap:anywhere;color:#153bb3}.actions{align-items:center;margin-top:1rem}.secondary{color:#14213d;background:#fff;border:1px solid #8da1c9}.open{color:#153bb3;background:0 0;min-height:42px;padding:.5rem}.qr{width:140px;height:140px;margin:1.25rem auto 0;display:block}.recent{margin-top:2.5rem}.recent h2{font-size:1.15rem}article{border-top:1px solid #e3e8f2;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.8rem 0;display:grid}article span{color:#61708c;white-space:nowrap;font-size:.85rem}.copy-small{min-height:40px;padding:.5rem .7rem;font-size:.85rem}@media (width<=560px){main{padding:12px;display:block}.card{border-radius:20px;min-height:calc(100vh - 24px);padding:28px 20px}h1{font-size:clamp(2.35rem,13vw,3.25rem);line-height:1.05}.intro{margin-bottom:2rem;line-height:1.55}.row,.actions{flex-direction:column}.row button,.actions button,.actions .open{width:100%}.open{min-height:48px}.success{padding:1rem}.qr{width:160px;height:160px}.recent{margin-top:2rem}article{grid-template-columns:minmax(0,1fr) auto;gap:.35rem .75rem;padding:1rem 0}article a{min-width:0}article span{grid-area:2/1}.copy-small{grid-area:1/2/span 2;min-width:58px}}@media (width<=360px){.card{padding:24px 16px}h1{font-size:2.25rem}}
