@font-face{font-family:Silkscreen;src:url('assets/fonts/silkscreen/Silkscreen-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
.prototype-wordmark{font-family:Silkscreen,monospace;font-weight:400;letter-spacing:-.04em;text-decoration:none}
.prototype-kicker{font:12px/1.5 Silkscreen,monospace;letter-spacing:.03em;color:var(--muted)}
.prototype-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 18px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);color:var(--text);font:inherit;text-decoration:none;cursor:pointer}
.prototype-button.primary{background:var(--accent);color:var(--accent-ink);border-color:transparent;font-weight:650}
.prototype-button:hover{filter:brightness(.96)}
.prototype-button:disabled{opacity:.65;cursor:wait}
.prototype-button:focus-visible,.prototype-close:focus-visible,.prototype-about:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.prototype-welcome{width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:36px;border:1px solid var(--border-strong);border-radius:24px;background:var(--surface);color:var(--text);box-shadow:0 24px 100px #0004;overflow:auto}
.prototype-welcome::backdrop{background:#181c2055;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.prototype-welcome>.prototype-kicker{display:block;padding-right:28px}
.prototype-welcome h2{font-size:clamp(30px,6vw,43px);line-height:1.1;letter-spacing:-.055em;margin:26px 0 20px;max-width:10em}
.prototype-welcome p{color:var(--muted);font-size:15px;line-height:1.65}
.prototype-welcome .prototype-promise{color:var(--text);font-size:13px;font-weight:650;padding-top:14px}
.prototype-close{position:absolute;top:14px;right:14px;width:44px;height:44px;background:transparent;border:0;border-radius:50%;color:var(--text);font-size:26px;cursor:pointer}
.prototype-welcome-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:24px}
.prototype-welcome-actions>a{font-size:13px}
html:has(.prototype-welcome[open]){overflow:hidden}
.prototype-about{font:inherit;padding:0;border:0;background:transparent;color:inherit;text-decoration:underline;cursor:pointer;min-height:32px}
.site-legal-bar:has(.prototype-about){flex-wrap:wrap;gap:8px 20px}
.site-legal-bar:has(.prototype-about) nav{flex-wrap:wrap;justify-content:center;gap:16px}
.prototype-shell{width:min(1080px,100%);margin:0 auto;padding:28px clamp(20px,5vw,64px) 60px}
.prototype-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:8px 0 34px;border-bottom:1px solid var(--border)}
.prototype-header>a:last-child{font-size:13px}
.prototype-hero{padding:64px 0 48px;max-width:730px}
.prototype-hero h1{font-size:clamp(43px,7vw,76px);font-weight:650;line-height:1.03;letter-spacing:-.065em;margin:18px 0 28px}
.prototype-hero .prototype-intro{max-width:580px;font-size:19px;line-height:1.65;color:var(--muted)}
.prototype-origin{display:inline-flex;gap:10px;align-items:center;font-size:13px;color:var(--muted);border:1px solid var(--border-strong);border-radius:100px;padding:8px 14px}
.prototype-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:28px 0}
.prototype-principles h2{font-size:16px;letter-spacing:-.02em;margin:0 0 10px}
.prototype-principles p{font-size:14px;color:var(--muted);margin:0}
.prototype-participate{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;margin:64px 0 0;align-items:start}
.prototype-participate h2{font-size:32px;letter-spacing:-.04em;line-height:1.15;margin:12px 0 20px}
.prototype-participate p{color:var(--muted);font-size:15px;line-height:1.7}
.prototype-aside-note{font-size:12px!important}
.prototype-form{border:1px solid var(--border-strong);padding:26px;border-radius:20px;background:var(--surface)}
.prototype-form label{display:block;font-size:13px;font-weight:600;margin:20px 0 7px}
.prototype-form label:first-child{margin-top:0}
.prototype-form label span{font-weight:400;color:var(--muted)}
.prototype-form select,.prototype-form textarea,.prototype-form input{display:block;width:100%;border:1px solid var(--border-strong);background:var(--background);color:var(--text);padding:12px;border-radius:8px;font:inherit;font-size:16px}
.prototype-form textarea{resize:vertical;min-height:140px}
.prototype-form :is(select,textarea,input):focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.prototype-form .prototype-button{margin-top:20px;width:100%}
.prototype-form .prototype-status{font-size:13px;margin-bottom:0;min-height:1.5em}
.prototype-form .prototype-data-note{font-size:12px;margin:16px 0 0}
.prototype-kudos{margin-top:24px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.prototype-kudos button[aria-pressed=true]{border-color:var(--text);background:var(--text);color:var(--background)}
.prototype-kudos span{font-size:12px;color:var(--muted)}
.prototype-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid var(--border);margin-top:64px;padding-top:24px;font-size:12px;color:var(--muted)}
.prototype-bottom nav{display:flex;gap:18px}
@media(max-width:650px){.prototype-welcome{padding:28px 24px}.prototype-principles,.prototype-participate{grid-template-columns:1fr}.prototype-principles{gap:24px}.prototype-participate{gap:20px;margin-top:38px}.prototype-hero{padding:40px 0 32px}.prototype-form{padding:20px}.prototype-origin{font-size:12px}.prototype-header{padding-bottom:24px}.prototype-header .prototype-wordmark{font-size:16px}}
