:root{--so-color-bg:#14120f;--so-color-surface:#1d1a16;--so-color-ink:#f1ece3;--so-color-ink-muted:#a09a8d;--so-color-accent:#a82b38;--so-color-accent-ink:#fff;--so-color-border:#2f2b24;--so-font-display:"Hoefler Text", "Baskerville Old Face", Baskerville, Didot, Georgia, serif;--so-font-body:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--so-font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--so-radius:10px;--so-space:12px;--so-space-xs:calc(var(--so-space) * .5);--so-space-sm:calc(var(--so-space) * 1);--so-space-md:calc(var(--so-space) * 2);--so-space-lg:calc(var(--so-space) * 3);--so-space-xl:calc(var(--so-space) * 6);--so-space-2xl:calc(var(--so-space) * 4);--so-space-3xl:calc(var(--so-space) * 8);--so-radius-sm:calc(var(--so-radius) * .5);--so-radius-md:calc(var(--so-radius) * 1);--so-radius-lg:calc(var(--so-radius) * 2);--so-text-xs:.75rem;--so-text-sm:.875rem;--so-text-md:1rem;--so-text-lg:1.25rem;--so-text-xl:2rem;--so-color-background:var(--so-color-bg);--so-color-primary:var(--so-color-accent);--so-color-text:var(--so-color-ink);--so-color-muted:var(--so-color-ink-muted);--so-font-sans:var(--so-font-body);--so-size-xs:.78rem;--so-size-sm:.875rem;--so-size-base:1rem;--so-size-lg:1.1rem;--so-size-h3:1.2rem;--so-size-h2:clamp(1.5rem, 3.4vw, 2rem);--so-size-display:clamp(2.1rem, 6.2vw, 3.4rem);--so-size-code:clamp(1.3rem, 5vw, 1.75rem);--so-color-accent-wash:color-mix(in srgb, var(--so-color-accent) 13%, transparent);--so-color-accent-line:color-mix(in srgb, var(--so-color-accent) 42%, transparent);--so-color-surface-raised:color-mix(in srgb, var(--so-color-surface) 94%, var(--so-color-ink));--so-color-ink-faint:color-mix(in srgb, var(--so-color-ink) 45%, transparent);--so-color-shadow:#00000073;--so-measure:1080px;--so-radius-pill:999px}.btn{justify-content:center;align-items:center;gap:var(--so-space-xs);padding:var(--so-space-sm) var(--so-space-lg);border:1px solid var(--so-color-accent);border-radius:var(--so-radius);background:var(--so-color-accent);color:var(--so-color-accent-ink);font-family:var(--so-font-body);font-size:var(--so-size-base);text-align:center;cursor:pointer;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--so-color-accent-line)}.btn--ghost{border-color:var(--so-color-border);color:var(--so-color-ink);background:0 0;font-weight:500}.btn--outline{border-color:var(--so-color-accent);color:var(--so-color-ink);background:0 0}.btn--block{width:100%}.btn--small{padding:var(--so-space-xs) var(--so-space-md);font-size:var(--so-size-sm)}.btn--big{padding:var(--so-space-md) var(--so-space-2xl);font-size:var(--so-size-lg)}.btn:disabled{border-color:var(--so-color-border);background:var(--so-color-surface-raised);color:var(--so-color-ink-faint);cursor:not-allowed}.field{margin-bottom:var(--so-space-lg)}.field>label{margin-bottom:var(--so-space-xs);font-size:var(--so-size-sm);font-weight:600;display:block}.control{align-items:center;gap:var(--so-space-sm);width:100%;min-height:52px;padding:0 var(--so-space-md);border:1px solid var(--so-color-border);border-radius:var(--so-radius);background:var(--so-color-bg);color:var(--so-color-ink);font-family:var(--so-font-body);font-size:var(--so-size-base);display:flex}.control:focus-within{border-color:var(--so-color-accent-line)}.control input{width:100%;color:var(--so-color-ink);font-family:inherit;font-size:inherit;background:0 0;border:0}.control input:focus{outline:none}.control input::placeholder{color:var(--so-color-ink-faint)}.control__prefix{color:var(--so-color-ink-muted);font-family:var(--so-font-mono);font-size:var(--so-size-sm)}.control--locked{color:var(--so-color-ink-muted);background:0 0}.why{margin:var(--so-space-xs) 0 0;color:var(--so-color-ink-muted);font-size:var(--so-size-sm);line-height:1.55}.why b{color:var(--so-color-ink);font-weight:600}.kept{margin:var(--so-space-xs) 0 0;color:var(--so-color-ink-faint);font-size:var(--so-size-xs)}.kept--centred{text-align:center}.note{margin:var(--so-space-xs) 0 0;color:var(--so-color-ink-muted);font-size:var(--so-size-sm);line-height:1.55}.note b{color:var(--so-color-ink);font-weight:600}.fine{margin:var(--so-space-lg) 0 var(--so-space-2xl);color:var(--so-color-ink-faint);font-size:var(--so-size-xs);line-height:1.6}.card{margin-bottom:var(--so-space-lg);border:1px solid var(--so-color-border);border-radius:var(--so-radius-lg);background:var(--so-color-surface);overflow:hidden}.card--current{border-color:var(--so-color-accent-line);box-shadow:0 2px 24px var(--so-color-shadow)}.card>header{justify-content:space-between;align-items:baseline;gap:var(--so-space-sm);padding:var(--so-space-md) var(--so-space-lg);border-bottom:1px solid var(--so-color-border);flex-wrap:wrap;display:flex}.card>header h2,.card>header h3{font-size:var(--so-size-h2);margin:0}.card__body{padding:var(--so-space-lg)}.state{color:var(--so-color-ink-muted);font-size:var(--so-size-xs);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.state--now{color:var(--so-color-accent)}.blocked{align-items:center;gap:var(--so-space-md);margin-bottom:var(--so-space-2xl);padding:var(--so-space-md);border:1px solid var(--so-color-accent-line);border-left:4px solid var(--so-color-accent);border-radius:var(--so-radius);background:var(--so-color-accent-wash);flex-wrap:wrap;display:flex}.blocked p{font-size:var(--so-size-sm);flex:22ch;margin:0}.blocked strong{font-weight:600}.problem{margin:0 0 var(--so-space-lg);padding:var(--so-space-md);border:1px solid var(--so-color-accent-line);border-left:4px solid var(--so-color-accent);border-radius:var(--so-radius);background:var(--so-color-accent-wash);font-size:var(--so-size-sm)}.said{margin:0 0 var(--so-space-lg);padding:var(--so-space-md);border:1px solid var(--so-color-border);border-radius:var(--so-radius);background:var(--so-color-surface-raised);color:var(--so-color-ink-muted);font-size:var(--so-size-sm)}.loading{padding:var(--so-space-2xl) 0;color:var(--so-color-ink-faint);font-size:var(--so-size-sm)}@media (width<=600px){.card>header,.card__body{padding:var(--so-space-md)}.blocked .btn{width:100%}}.steps{padding-bottom:var(--so-space-3xl)}.stepbar{margin:0 0 var(--so-space-2xl);gap:var(--so-space-sm);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:0;list-style:none;display:grid}.stepbar__step{align-items:flex-start;gap:var(--so-space-sm);padding:var(--so-space-md);border:1px solid var(--so-color-border);border-radius:var(--so-radius);background:var(--so-color-surface);display:flex}.stepbar__step--current{border-color:var(--so-color-accent-line);background:var(--so-color-accent-wash)}.stepbar__num{border:1px solid var(--so-color-border);border-radius:var(--so-radius-pill);width:26px;height:26px;color:var(--so-color-ink-muted);font-family:var(--so-font-mono);font-size:var(--so-size-xs);flex:none;place-items:center;display:grid}.stepbar__step--done .stepbar__num{border-color:var(--so-color-ink-muted)}.stepbar__step--current .stepbar__num{border-color:var(--so-color-accent);background:var(--so-color-accent);color:var(--so-color-accent-ink)}.stepbar__label{font-size:var(--so-size-sm);line-height:1.4}.stepbar__label b{font-weight:600;display:block}.stepbar__label span{color:var(--so-color-ink-muted);font-size:var(--so-size-xs)}.code{margin-bottom:var(--so-space-sm);gap:var(--so-space-sm);flex-wrap:wrap;display:flex}.code input{width:100%;max-width:14rem;padding:var(--so-space-sm) var(--so-space-md);border:1px solid var(--so-color-border);border-radius:var(--so-radius-sm);background:var(--so-color-bg);color:var(--so-color-ink);font-family:var(--so-font-mono);font-size:var(--so-size-code);letter-spacing:.3em;text-align:center}.code input:focus{border-color:var(--so-color-accent);outline:none}.resend{align-items:center;gap:var(--so-space-sm);margin:0 0 var(--so-space-lg);color:var(--so-color-ink-muted);font-size:var(--so-size-sm);flex-wrap:wrap;display:flex}.resend button{color:var(--so-color-accent);font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;border:0;text-decoration:underline}.timer{font-family:var(--so-font-mono);font-size:var(--so-size-sm)}.summary{gap:var(--so-space-lg);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.done-line{align-items:flex-start;gap:var(--so-space-sm);font-size:var(--so-size-sm);margin:0;display:flex}.done-line__tick{color:var(--so-color-ink-muted);flex:none;margin-top:3px}.done-line__value{font-weight:600}.mailcard{padding:var(--so-space-md);border:1px dashed var(--so-color-border);border-radius:var(--so-radius);background:var(--so-color-bg);font-size:var(--so-size-sm)}.mailcard__from{margin:0 0 var(--so-space-xs);color:var(--so-color-ink-faint);font-size:var(--so-size-xs);letter-spacing:.08em;text-transform:uppercase}.mailcard__subject{margin:0 0 var(--so-space-xs);font-weight:600}.mailcard p{margin:0}.afterwards{margin-bottom:var(--so-space-2xl);padding:var(--so-space-lg);border:1px solid var(--so-color-border);border-radius:var(--so-radius-lg);background:var(--so-color-surface-raised);color:var(--so-color-ink-muted);font-size:var(--so-size-sm)}.afterwards h3{margin:0 0 var(--so-space-sm);color:var(--so-color-ink);font-size:var(--so-size-h3)}.afterwards ul{padding-left:var(--so-space-md);margin:0}.afterwards li{margin-bottom:var(--so-space-xs)}.single{max-width:34rem;padding-bottom:var(--so-space-3xl)}@media (width<=600px){.code input{max-width:none}}*,:before,:after{box-sizing:border-box}html,body,#app{height:100%}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--so-color-bg);color:var(--so-color-ink);font-family:var(--so-font-body);font-size:var(--so-size-base);margin:0;line-height:1.6}img,svg{max-width:100%}a{color:var(--so-color-accent)}h1,h2,h3,h4{font-family:var(--so-font-display);font-weight:400}code,pre,.mono{font-family:var(--so-font-mono)}:focus-visible{outline:2px solid var(--so-color-accent);outline-offset:2px}.site-shell{flex-direction:column;min-height:100%;display:flex}.site-main{flex:1}.wrap{width:100%;max-width:var(--so-measure);padding:0 var(--so-space-md);margin:0 auto}.site-header{border-bottom:1px solid var(--so-color-border);background:var(--so-color-bg)}.site-header__inner{max-width:var(--so-measure);justify-content:space-between;align-items:center;gap:var(--so-space-sm);padding:var(--so-space-md);flex-wrap:wrap;margin:0 auto;display:flex}.site-header__brand{align-items:center;gap:var(--so-space-sm);color:var(--so-color-ink);text-decoration:none;display:flex}.site-header__mark{color:var(--so-color-ink);flex:none}.site-header__arc{color:var(--so-color-accent)}.site-header__name{font-family:var(--so-font-display);font-size:var(--so-size-h3);letter-spacing:.08em;text-transform:uppercase}.site-header__tag{color:var(--so-color-ink-muted);font-family:var(--so-font-body);font-size:var(--so-size-xs);letter-spacing:.06em;text-transform:none;display:block}.site-header__nav{align-items:center;gap:var(--so-space-md);font-size:var(--so-size-sm);flex-wrap:wrap;display:flex}.site-header__nav a{padding:var(--so-space-xs) 0;color:var(--so-color-ink-muted);border-bottom:2px solid #0000;text-decoration:none}.site-header__nav a:hover,.site-header__nav a.router-link-active{border-bottom-color:var(--so-color-accent);color:var(--so-color-ink)}.site-header__who{color:var(--so-color-ink-faint);font-size:var(--so-size-xs)}.hero{padding:var(--so-space-3xl) 0 var(--so-space-xl)}.hero h1{max-width:18ch;margin:0 0 var(--so-space-md);font-size:var(--so-size-display);letter-spacing:-.01em;line-height:1.08}.hero p{max-width:54ch;margin:0 0 var(--so-space-lg);color:var(--so-color-ink-muted);font-size:var(--so-size-lg)}.hero__eyebrow{margin:0 0 var(--so-space-md);color:var(--so-color-accent);font-size:var(--so-size-xs);letter-spacing:.18em;text-transform:uppercase}.hero__updated{margin:var(--so-space-md) 0 0;color:var(--so-color-ink-faint);font-size:var(--so-size-xs)}.section-head{margin:var(--so-space-2xl) 0 var(--so-space-lg)}.section-head h2{margin:0 0 var(--so-space-xs);font-size:var(--so-size-h2)}.section-head p{max-width:62ch;color:var(--so-color-ink-muted);font-size:var(--so-size-sm);margin:0}.state-label{margin:var(--so-space-2xl) 0 var(--so-space-sm);color:var(--so-color-ink-faint);font-size:var(--so-size-xs);letter-spacing:.14em;text-transform:uppercase}.placeholder-page{max-width:40rem;padding:var(--so-space-xl) var(--so-space-lg);margin:0 auto}.site-footer{border-top:1px solid var(--so-color-border);background:var(--so-color-surface);padding:var(--so-space-xl) 0 var(--so-space-lg);color:var(--so-color-ink-muted);font-size:var(--so-size-sm)}.site-footer__cols{margin-bottom:var(--so-space-2xl);gap:var(--so-space-2xl);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.site-footer h4{margin:0 0 var(--so-space-sm);color:var(--so-color-ink);font-size:var(--so-size-base);letter-spacing:.06em;text-transform:uppercase}.site-footer p{margin:0}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin-bottom:var(--so-space-xs)}.site-footer a{color:var(--so-color-ink-muted);text-decoration:none}.site-footer a:hover,.site-footer a.router-link-active{color:var(--so-color-ink)}.site-footer__legal{justify-content:space-between;gap:var(--so-space-sm);padding-top:var(--so-space-md);border-top:1px solid var(--so-color-border);color:var(--so-color-ink-faint);font-size:var(--so-size-xs);flex-wrap:wrap;display:flex}@media (width<=600px){.site-header__inner{flex-direction:column;align-items:flex-start}.hero{padding:var(--so-space-2xl) 0 var(--so-space-lg)}.hero .btn{width:100%}}
