@font-face{font-family:Jakarta;src:url('./jakarta.woff2') format('woff2');font-weight:200 800;font-display:swap}@font-face{font-family:Inter;src:url('./inter.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{font-family:Inter,sans-serif;color:#131a56;background:#f7f7f9;font-synthesis:none;--ink:#131a56;--muted:#424878;--line:#d0d1dd;--accent:#c63f34}*{box-sizing:border-box}body{margin:0}body,button,input,textarea,select{font-size:16px}[hidden]{display:none!important}header{height:96px;margin:auto;max-width:1328px;padding:0 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}a{color:inherit}.brand{display:flex;align-items:center;gap:26px;text-decoration:none;font-family:Jakarta,sans-serif;font-weight:600;letter-spacing:-.5px}.brand img{width:83px;height:auto}.brand span{border-left:1px solid var(--line);padding-left:26px}.nav-link{text-decoration:none;font-size:14px;font-weight:600}.nav-link span{margin-left:12px}main{max-width:1232px;margin:0 auto;padding:64px 48px 80px;min-height:65dvh}h1,h2{font-family:Jakarta,sans-serif;font-weight:600;letter-spacing:-.055em}h1{font-size:clamp(36px,4.4vw,60px);line-height:1.12;margin:0 0 20px}h2{font-size:26px;line-height:1.28;margin:0 0 22px;letter-spacing:-.035em}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;margin:0 0 23px;color:var(--accent)}p{line-height:1.65}.lead{font-size:17px;color:var(--muted);max-width:510px;margin:0 0 30px}.workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,1fr);gap:72px;margin-top:36px}form{margin:0}label{display:block;font-size:14px;font-weight:600;margin:0 0 10px}textarea,input,select{font-family:Inter,sans-serif;border:1px solid var(--line);background:#fff;border-radius:6px;color:var(--ink);width:100%;padding:15px;outline-offset:3px;min-height:48px}textarea{resize:vertical;line-height:1.65}input[readonly]{font-family:monospace;font-size:14px}textarea::placeholder{color:#71769a}button,.button{font-family:Inter,sans-serif;display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid transparent;background:var(--accent);color:white;border-radius:6px;padding:15px 22px;min-height:50px;font-weight:600;font-size:14px;cursor:pointer;text-decoration:none;line-height:1.35;white-space:nowrap}button:hover,.button:hover{background:#ad352b}button:disabled{opacity:.65;cursor:wait}:focus-visible{outline:3px solid var(--ink);outline-offset:4px}.field-row{display:grid;grid-template-columns:1fr 1.3fr;gap:20px;margin-top:24px}.hint{font-size:13px;color:var(--muted);line-height:1.65;margin:14px 0 22px}.below{margin-bottom:0}.explanation{padding:26px 0 0 36px;border-left:1px solid var(--line);align-self:start}.explanation p{font-size:15px;color:var(--muted)}.steps{padding:0;margin:32px 0 0;list-style:none;counter-reset:steps}.steps li{counter-increment:steps;position:relative;padding-left:36px;margin-bottom:30px;line-height:1.6;font-size:14px}.steps li:before{content:'0' counter(steps);position:absolute;left:0;top:1px;color:var(--accent);font-size:11px;font-weight:700}.steps b{display:block;font-weight:600}.steps span{display:block;color:var(--muted);margin-top:6px}.history-section{border-top:1px solid var(--line);margin-top:64px;padding-top:32px}.history-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.history-heading h2{margin:0}.text-button{background:transparent;color:var(--ink);padding:10px 0;min-height:44px}.text-button:hover{background:transparent;text-decoration:underline}.danger{color:#810020}.secondary{background:transparent;border-color:var(--line);color:var(--ink)}.secondary:hover{background:#e7e8ee}.history-item{display:grid;grid-template-columns:1.3fr 1fr 1fr auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid #e7e8ee;font-size:13px}.history-item b{display:block;font-size:14px;margin-bottom:5px}.history-item small{color:var(--muted)}.status{color:var(--muted);font-weight:600}.status.available{color:#28673d}.history-empty{padding:30px 0;color:var(--muted);font-size:14px}.narrow{max-width:710px;margin:0 auto}.copy-field{display:flex;gap:10px;margin:0 0 26px}.copy-field input{min-width:0}.actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:24px}.notice{background:#fff0ee;color:var(--ink);border-left:3px solid #ff5d55;padding:18px 22px;font-size:14px;margin:24px 0;line-height:1.7}.error{color:#810020}#global-error{margin-top:0}#welcome{display:grid;grid-template-columns:1.4fr 1fr;gap:96px;padding:40px 0 70px}#welcome .explanation{padding-top:0}.symbol{font-size:72px;line-height:1.2;color:#ff5d55;display:block;margin-bottom:30px}#recipient-code-block{margin:28px 0}#plaintext{margin-top:4px}footer{border-top:1px solid var(--line);max-width:1232px;margin:auto;padding:28px 48px 40px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:11px;color:var(--muted)}footer details{flex-basis:100%;max-width:900px;margin-top:8px}summary{cursor:pointer;font-size:12px}footer details p{font-size:12px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);border-radius:6px;background:var(--ink);color:white;padding:14px 22px;box-shadow:0 4px 16px #131a561a;font-size:14px;z-index:10}dialog{max-width:480px;padding:32px;border:1px solid var(--line);border-radius:8px;color:var(--ink)}dialog::backdrop{background:#131a5666}dialog p{font-size:14px}button[aria-busy=true]{cursor:wait}
@media(max-width:800px){header{height:80px;padding:0 24px}main{padding:40px 24px 64px}.workspace{gap:36px;grid-template-columns:1fr}.workspace .explanation{display:none}#welcome{grid-template-columns:1fr;gap:40px;padding:15px 0 20px}#welcome .explanation{padding:24px 0 0;border-left:0;border-top:1px solid var(--line)}.symbol{display:none}.history-item{grid-template-columns:1fr 1fr;gap:12px}.history-item .text-button{justify-self:start}.history-section{margin-top:48px}footer{padding:24px;gap:12px;flex-direction:column}.brand{gap:15px}.brand span{padding-left:15px}.nav-link{font-size:12px}.field-row{gap:14px;grid-template-columns:1fr}h1{font-size:clamp(34px,7.5vw,52px)}.copy-field{flex-direction:column}.copy-field button{align-self:flex-start}.actions{gap:12px}.actions button{white-space:normal}dialog{width:calc(100% - 32px)}}
