.dev{background:var(--bg);min-height:100dvh;color:var(--fg-1);font-family:var(--font-body)}.dev-top{border-bottom:1px solid var(--border-hair);background:var(--ll-surface-2)}.dev-top__inner{flex-wrap:wrap;align-items:center;gap:20px;max-width:1040px;margin:0 auto;padding:14px 16px;display:flex}.dev-brand{color:var(--fg-1);align-items:center;gap:10px;text-decoration:none;display:flex}.dev-brand__tag{letter-spacing:.12em;text-transform:uppercase;color:var(--fg-accent);font-size:12px;font-weight:700}.dev-nav{flex-wrap:wrap;gap:4px;margin-left:auto;display:flex}.dev-nav a{color:var(--fg-2);border-radius:6px;padding:6px 10px;font-size:13px;text-decoration:none}.dev-nav a:hover,.dev-nav a:focus-visible{color:var(--fg-1);background:var(--ll-surface-3)}.dev-main{max-width:1040px;margin:0 auto;padding:32px 16px 64px}.dev-main>*{max-width:860px}.dev h1{margin:0 0 8px;font-size:28px;line-height:1.2}.dev-lede{color:var(--fg-2);margin:0 0 28px;font-size:15px;line-height:1.6}.dev h2.dev-section{margin:32px 0 10px;font-size:18px}.dev p,.dev li{color:var(--fg-2);font-size:14px;line-height:1.7}.dev a:not(.btn){color:var(--ll-purple-soft)}.dev code:not(pre code){font-family:var(--font-mono,ui-monospace, monospace);background:var(--ll-surface-2);border-radius:3px;padding:1px 4px;font-size:12.5px}.dev-callout{border-left:3px solid var(--ll-yellow)}.dev-foot{border-top:1px solid var(--border-hair);color:var(--fg-3);font-size:12px}.dev-foot__inner{flex-wrap:wrap;gap:16px;max-width:1040px;margin:0 auto;padding:20px 16px;display:flex}.dev-foot a{color:var(--fg-3)}.dev-event{border-top:1px solid var(--border-hair);padding:14px 0}.dev-event:first-of-type{border-top:0}.dev-event__type{font-family:var(--font-mono,ui-monospace, monospace);color:var(--fg-1);font-size:13px}.dev-event__fields{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.dev-field{font-family:var(--font-mono,ui-monospace, monospace);border:1px solid var(--border-hair);color:var(--fg-2);border-radius:4px;padding:2px 6px;font-size:11.5px}.dev-field--sometimes{color:var(--fg-3);border-style:dashed}