@font-face { font-family:'DM Sans'; font-style:normal; font-weight:400 700; font-display:swap; src:url('../fonts/dm-sans-latin.woff2') format('woff2'); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family:'DM Sans'; font-style:normal; font-weight:400 700; font-display:swap; src:url('../fonts/dm-sans-latin-ext.woff2') format('woff2'); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1E00-1E9F, U+20A0-20AB, U+20AD-20C0, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family:'Fira Code'; font-style:normal; font-weight:400 500; font-display:swap; src:url('../fonts/fira-code-latin.woff2') format('woff2'); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+20AC, U+2122, U+2212; }
@font-face { font-family:'Fira Code'; font-style:normal; font-weight:400 500; font-display:swap; src:url('../fonts/fira-code-latin-ext.woff2') format('woff2'); unicode-range:U+0100-02BA, U+1E00-1E9F, U+2C60-2C7F, U+A720-A7FF; }
@keyframes pa-fade { from { opacity:0; transform:translateY(-3px); } to { opacity:1; transform:none; } }
@keyframes pa-fade-in { from { opacity:0; } to { opacity:1; } }
.pa { background:var(--bg); color:var(--text); font-family:var(--font); font-size:13px; line-height:1.5; -webkit-font-smoothing:antialiased; }
.pa * { box-sizing:border-box; }
.pa *::before { box-sizing:border-box; }
.pa *::after { box-sizing:border-box; }
.pa button { font:inherit; color:inherit; cursor:pointer; }
.pa input { font:inherit; color:inherit; caret-color:var(--link); }
.pa select { font:inherit; color:inherit; }
.pa textarea { font:inherit; color:inherit; caret-color:var(--link); }
.pa button:disabled { cursor:not-allowed; }
.pa :focus-visible { outline:2px solid var(--focus); outline-offset:2px; border-radius:6px; }
.sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.num { font-family:var(--mono); font-variant-numeric:tabular-nums; letter-spacing:-0.01em; }
.pa svg { flex-shrink:0; }
.h1 { margin:0; font-size:20px; font-weight:700; letter-spacing:-0.01em; }
.h2 { margin:0; font-size:15px; font-weight:700; }
.pa svg.i { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.pa svg.i.s { width:16px; height:16px; }
.pa ::selection { background:var(--navy-100); color:var(--navy-900); }
html { margin:0; }
body { margin:0; }
.pa [hidden] { display:none !important; }
.pa a { color:var(--link); }
.pa code { font-family:var(--mono); font-size:.9em; }
.pa pre { font-family:var(--mono); font-size:.9em; }
.grow { flex:1; }
.pa.dark ::selection { background:var(--navy-500); color:#FFFFFF; }
