HTML
Copy
<div><span class="mb-[18px] block text-[.72rem] tracking-[.12em] text-[#57534e] uppercase">Mechanical keycaps</span>
<div class="flex flex-wrap items-start gap-x-3 gap-y-3.5">
<button class="ky-up relative inline-grid h-16 min-w-16 cursor-pointer rounded-xl bg-(--ky-side) px-[5px] pt-[3px] pb-[9px] text-(--ky-ink) transition-[translate,box-shadow] duration-[90ms] ease-out [--ky-edge:#6c2410] [--ky-face-2:#a8380a] [--ky-face:#c2410c] [--ky-ink:#fff] [--ky-side:#9a3412] focus-visible:outline-3 focus-visible:outline-offset-[5px] focus-visible:outline-[#1d4ed8] active:translate-y-[5px] active:ky-down motion-reduce:transition-none" type="button"><span class="grid place-items-center rounded-[9px] bg-(--ky-face) bg-[linear-gradient(180deg,var(--ky-face),var(--ky-face-2))] px-3 text-[.92rem] font-bold tracking-[.02em] shadow-[inset_0_1px_0_rgba(255,255,255,.7),inset_0_-2px_4px_rgba(41,37,36,.08)]">Esc</span></button>
<button class="ky-up relative inline-grid h-16 min-w-16 cursor-pointer rounded-xl bg-(--ky-side) px-[5px] pt-[3px] pb-[9px] text-(--ky-ink) transition-[translate,box-shadow] duration-[90ms] ease-out [--ky-edge:#a8a091] [--ky-face-2:#e9e3d8] [--ky-face:#f7f4ee] [--ky-ink:#292524] [--ky-side:#d6cebf] focus-visible:outline-3 focus-visible:outline-offset-[5px] focus-visible:outline-[#1d4ed8] active:translate-y-[5px] active:ky-down motion-reduce:transition-none" type="button"><span class="grid place-items-center rounded-[9px] bg-(--ky-face) bg-[linear-gradient(180deg,var(--ky-face),var(--ky-face-2))] px-3 text-[.92rem] font-bold tracking-[.02em] shadow-[inset_0_1px_0_rgba(255,255,255,.7),inset_0_-2px_4px_rgba(41,37,36,.08)]"><span class="text-xl font-medium" aria-hidden="true">⌘</span><span class="sr-only">Command</span></span></button>
<button class="ky-up relative inline-grid h-16 min-w-16 cursor-pointer rounded-xl bg-(--ky-side) px-[5px] pt-[3px] pb-[9px] text-(--ky-ink) transition-[translate,box-shadow] duration-[90ms] ease-out [--ky-edge:#a8a091] [--ky-face-2:#e9e3d8] [--ky-face:#f7f4ee] [--ky-ink:#292524] [--ky-side:#d6cebf] focus-visible:outline-3 focus-visible:outline-offset-[5px] focus-visible:outline-[#1d4ed8] active:translate-y-[5px] active:ky-down motion-reduce:transition-none" type="button"><span class="grid place-items-center rounded-[9px] bg-(--ky-face) bg-[linear-gradient(180deg,var(--ky-face),var(--ky-face-2))] px-3 text-[.92rem] font-bold tracking-[.02em] shadow-[inset_0_1px_0_rgba(255,255,255,.7),inset_0_-2px_4px_rgba(41,37,36,.08)]">K</span></button>
<button class="ky-up relative inline-grid h-16 min-w-[132px] cursor-pointer rounded-xl bg-(--ky-side) px-[5px] pt-[3px] pb-[9px] text-(--ky-ink) transition-[translate,box-shadow] duration-[90ms] ease-out [--ky-edge:#0f0e0d] [--ky-face-2:#2f2b28] [--ky-face:#3f3a36] [--ky-ink:#f5f0e8] [--ky-side:#262321] focus-visible:outline-3 focus-visible:outline-offset-[5px] focus-visible:outline-[#1d4ed8] active:translate-y-[5px] active:ky-down motion-reduce:transition-none" type="button"><span class="grid items-end justify-end rounded-[9px] bg-(--ky-face) bg-[linear-gradient(180deg,var(--ky-face),var(--ky-face-2))] px-3 pb-2 text-[.92rem] font-bold tracking-[.02em] shadow-[inset_0_1px_0_rgba(255,255,255,.7),inset_0_-2px_4px_rgba(41,37,36,.08)]">Enter ⏎</span></button>
</div>
<p class="mt-[22px] text-[.88rem] text-[#57534e]">Press ⌘ K anywhere in Ledgerline to search invoices, clients and reports.</p></div>
<div class="flex flex-wrap gap-x-[72px] gap-y-14">
<div><span class="mb-[18px] block text-[.72rem] tracking-[.12em] text-[#57534e] uppercase">Toggle keys that stay down</span>
<div class="inline-flex flex-wrap gap-3 rounded-[18px] bg-[#d9d2c5] px-[18px] pt-4 pb-[22px] shadow-[inset_0_2px_6px_rgba(41,37,36,.18)]" role="group" aria-label="Text formatting">
<label class="group relative inline-block cursor-pointer"><input type="checkbox" name="format" value="bold" class="peer sr-only" checked><span class="ky-up relative inline-grid h-[58px] min-w-14 rounded-xl bg-(--ky-side) px-[5px] pt-[3px] pb-[9px] text-(--ky-ink) transition-[translate,box-shadow] duration-[90ms] ease-out [--ky-edge:#a8a091] [--ky-face-2:#e9e3d8] [--ky-face:#f7f4ee] [--ky-ink:#292524] [--ky-side:#d6cebf] peer-checked:translate-y-1 peer-checked:ky-held peer-checked:[--ky-face-2:#e2dacb] peer-checked:[--ky-face:#ece5d8] peer-focus-visible:outline-3 peer-focus-visible:outline-offset-[5px] peer-focus-visible:outline-[#1d4ed8] group-active:translate-y-[5px] group-active:ky-down motion-reduce:transition-none"><span class="grid place-items-center rounded-[9px] bg-(--ky-face) bg-[linear-gradient(180deg,var(--ky-face),var(--ky-face-2))] px-3 font-[Georgia,'Times_New_Roman',serif] text-[1.15rem] font-bold shadow-[inset_0_1px_0_rgba(255,255,255,.7),inset_0_-2px_4px_rgba(41,37,36,.08)]"><b aria-hidden="true">B</b><span class="sr-only">Bold</span></span><span class="absolute top-[9px] right-2.5 size-[7px] rounded-full bg-[#a8a29e] shadow-[inset_0_1px_1px_rgba(0,0,0,.25)] transition-colors duration-150 group-has-checked:bg-[#16a34a] group-has-checked:shadow-[0_0_6px_1px_rgba(22,163,74,.7)] motion-reduce:transition-none" aria-hidden="true"></span></span></label>
<label class="group relative inline-block cursor-pointer"><input type="checkbox" name="format" value="italic" class="peer sr-only"><span class="ky-up relative inline-grid h-[58px] min-w-14 rounded-xl bg-(--ky-side) px-[5px] pt-[3px] pb-[9px] text-(--ky-ink) transition-[translate,box-shadow] duration-[90ms] ease-out [--ky-edge:#a8a091] [--ky-face-2:#e9e3d8] [--ky-face:#f7f4ee] [--ky-ink:#292524] [--ky-side:#d6cebf] peer-checked:translate-y-1 peer-checked:ky-held peer-checked:[--ky-face-2:#e2dacb] peer-checked:[--ky-face:#ece5d8] peer-focus-visible:outline-3 peer-focus-visible:outline-offset-[5px] peer-focus-visible:outline-[#1d4ed8] group-active:translate-y-[5px] group-active:ky-down motion-reduce:transition-none"><span class="grid place-items-center rounded-[9px] bg-(--ky-face) bg-[linear-gradient(180deg,var(--ky-face),var(--ky-face-2))] px-3 font-[Georgia,'Times_New_Roman',serif] text-[1.15rem] font-bold shadow-[inset_0_1px_0_rgba(255,255,255,.7),inset_0_-2px_4px_rgba(41,37,36,.08)]"><i aria-hidden="true">I</i><span class="sr-only">Italic</span></span><span class="absolute top-[9px] right-2.5 size-[7px] rounded-full bg-[#a8a29e] shadow-[inset_0_1px_1px_rgba(0,0,0,.25)] transition-colors duration-150 group-has-checked:bg-[#16a34a] group-has-checked:shadow-[0_0_6px_1px_rgba(22,163,74,.7)] motion-reduce:transition-none" aria-hidden="true"></span></span></label>
<label class="group relative inline-block cursor-pointer"><input type="checkbox" name="format" value="underline" class="peer sr-only"><span class="ky-up relative inline-grid h-[58px] min-w-14 rounded-xl bg-(--ky-side) px-[5px] pt-[3px] pb-[9px] text-(--ky-ink) transition-[translate,box-shadow] duration-[90ms] ease-out [--ky-edge:#a8a091] [--ky-face-2:#e9e3d8] [--ky-face:#f7f4ee] [--ky-ink:#292524] [--ky-side:#d6cebf] peer-checked:translate-y-1 peer-checked:ky-held peer-checked:[--ky-face-2:#e2dacb] peer-checked:[--ky-face:#ece5d8] peer-focus-visible:outline-3 peer-focus-visible:outline-offset-[5px] peer-focus-visible:outline-[#1d4ed8] group-active:translate-y-[5px] group-active:ky-down motion-reduce:transition-none"><span class="grid place-items-center rounded-[9px] bg-(--ky-face) bg-[linear-gradient(180deg,var(--ky-face),var(--ky-face-2))] px-3 font-[Georgia,'Times_New_Roman',serif] text-[1.15rem] font-bold shadow-[inset_0_1px_0_rgba(255,255,255,.7),inset_0_-2px_4px_rgba(41,37,36,.08)]"><u aria-hidden="true">U</u><span class="sr-only">Underline</span></span><span class="absolute top-[9px] right-2.5 size-[7px] rounded-full bg-[#a8a29e] shadow-[inset_0_1px_1px_rgba(0,0,0,.25)] transition-colors duration-150 group-has-checked:bg-[#16a34a] group-has-checked:shadow-[0_0_6px_1px_rgba(22,163,74,.7)] motion-reduce:transition-none" aria-hidden="true"></span></span></label>
<label class="group relative inline-block cursor-pointer"><input type="checkbox" name="format" value="strikethrough" class="peer sr-only" checked><span class="ky-up relative inline-grid h-[58px] min-w-14 rounded-xl bg-(--ky-side) px-[5px] pt-[3px] pb-[9px] text-(--ky-ink) transition-[translate,box-shadow] duration-[90ms] ease-out [--ky-edge:#a8a091] [--ky-face-2:#e9e3d8] [--ky-face:#f7f4ee] [--ky-ink:#292524] [--ky-side:#d6cebf] peer-checked:translate-y-1 peer-checked:ky-held peer-checked:[--ky-face-2:#e2dacb] peer-checked:[--ky-face:#ece5d8] peer-focus-visible:outline-3 peer-focus-visible:outline-offset-[5px] peer-focus-visible:outline-[#1d4ed8] group-active:translate-y-[5px] group-active:ky-down motion-reduce:transition-none"><span class="grid place-items-center rounded-[9px] bg-(--ky-face) bg-[linear-gradient(180deg,var(--ky-face),var(--ky-face-2))] px-3 font-[Georgia,'Times_New_Roman',serif] text-[1.15rem] font-bold shadow-[inset_0_1px_0_rgba(255,255,255,.7),inset_0_-2px_4px_rgba(41,37,36,.08)]"><s aria-hidden="true">S</s><span class="sr-only">Strikethrough</span></span><span class="absolute top-[9px] right-2.5 size-[7px] rounded-full bg-[#a8a29e] shadow-[inset_0_1px_1px_rgba(0,0,0,.25)] transition-colors duration-150 group-has-checked:bg-[#16a34a] group-has-checked:shadow-[0_0_6px_1px_rgba(22,163,74,.7)] motion-reduce:transition-none" aria-hidden="true"></span></span></label>
</div></div>
<div><span class="mb-[18px] block text-[.72rem] tracking-[.12em] text-[#57534e] uppercase">Arrow key cluster</span>
<div class="grid grid-cols-[repeat(3,58px)] gap-x-2.5 gap-y-3 [grid-template-areas:'._n_.'_'w_s_e']" role="group" aria-label="Move the selected shape">
<button class="[grid-area:n] ky-up relative inline-grid h-[58px] min-w-[58px] cursor-pointer rounded-xl bg-(--ky-side) px-[5px] pt-[3px] pb-[9px] text-(--ky-ink) transition-[translate,box-shadow] duration-[90ms] ease-out [--ky-edge:#a8a091] [--ky-face-2:#e9e3d8] [--ky-face:#f7f4ee] [--ky-ink:#292524] [--ky-side:#d6cebf] focus-visible:outline-3 focus-visible:outline-offset-[5px] focus-visible:outline-[#1d4ed8] active:translate-y-[5px] active:ky-down motion-reduce:transition-none" type="button" aria-label="Move up"><span class="grid place-items-center rounded-[9px] bg-(--ky-face) bg-[linear-gradient(180deg,var(--ky-face),var(--ky-face-2))] px-3 text-[1.1rem] font-bold shadow-[inset_0_1px_0_rgba(255,255,255,.7),inset_0_-2px_4px_rgba(41,37,36,.08)]" aria-hidden="true">↑</span></button>
<button class="[grid-area:w] ky-up relative inline-grid h-[58px] min-w-[58px] cursor-pointer rounded-xl bg-(--ky-side) px-[5px] pt-[3px] pb-[9px] text-(--ky-ink) transition-[translate,box-shadow] duration-[90ms] ease-out [--ky-edge:#a8a091] [--ky-face-2:#e9e3d8] [--ky-face:#f7f4ee] [--ky-ink:#292524] [--ky-side:#d6cebf] focus-visible:outline-3 focus-visible:outline-offset-[5px] focus-visible:outline-[#1d4ed8] active:translate-y-[5px] active:ky-down motion-reduce:transition-none" type="button" aria-label="Move left"><span class="grid place-items-center rounded-[9px] bg-(--ky-face) bg-[linear-gradient(180deg,var(--ky-face),var(--ky-face-2))] px-3 text-[1.1rem] font-bold shadow-[inset_0_1px_0_rgba(255,255,255,.7),inset_0_-2px_4px_rgba(41,37,36,.08)]" aria-hidden="true">←</span></button>
<button class="[grid-area:s] ky-up relative inline-grid h-[58px] min-w-[58px] cursor-pointer rounded-xl bg-(--ky-side) px-[5px] pt-[3px] pb-[9px] text-(--ky-ink) transition-[translate,box-shadow] duration-[90ms] ease-out [--ky-edge:#a8a091] [--ky-face-2:#e9e3d8] [--ky-face:#f7f4ee] [--ky-ink:#292524] [--ky-side:#d6cebf] focus-visible:outline-3 focus-visible:outline-offset-[5px] focus-visible:outline-[#1d4ed8] active:translate-y-[5px] active:ky-down motion-reduce:transition-none" type="button" aria-label="Move down"><span class="grid place-items-center rounded-[9px] bg-(--ky-face) bg-[linear-gradient(180deg,var(--ky-face),var(--ky-face-2))] px-3 text-[1.1rem] font-bold shadow-[inset_0_1px_0_rgba(255,255,255,.7),inset_0_-2px_4px_rgba(41,37,36,.08)]" aria-hidden="true">↓</span></button>
<button class="[grid-area:e] ky-up relative inline-grid h-[58px] min-w-[58px] cursor-pointer rounded-xl bg-(--ky-side) px-[5px] pt-[3px] pb-[9px] text-(--ky-ink) transition-[translate,box-shadow] duration-[90ms] ease-out [--ky-edge:#a8a091] [--ky-face-2:#e9e3d8] [--ky-face:#f7f4ee] [--ky-ink:#292524] [--ky-side:#d6cebf] focus-visible:outline-3 focus-visible:outline-offset-[5px] focus-visible:outline-[#1d4ed8] active:translate-y-[5px] active:ky-down motion-reduce:transition-none" type="button" aria-label="Move right"><span class="grid place-items-center rounded-[9px] bg-(--ky-face) bg-[linear-gradient(180deg,var(--ky-face),var(--ky-face-2))] px-3 text-[1.1rem] font-bold shadow-[inset_0_1px_0_rgba(255,255,255,.7),inset_0_-2px_4px_rgba(41,37,36,.08)]" aria-hidden="true">→</span></button>
</div></div>
</div>
<div><span class="mb-[18px] block text-[.72rem] tracking-[.12em] text-[#57534e] uppercase">Arcade push buttons</span>
<div class="flex w-fit max-w-full flex-wrap justify-center gap-x-[34px] gap-y-[26px] rounded-[22px] bg-[radial-gradient(120%_140%_at_50%_0%,#2a2724,#141210)] px-[26px] pt-[30px] pb-6 shadow-[0_26px_40px_-26px_rgba(20,18,16,.8),inset_0_1px_0_rgba(255,255,255,.08)]">
<button class="group grid cursor-pointer justify-items-center gap-3 text-[.8rem] font-bold tracking-[.12em] text-[#f5f0e8] uppercase [--ky-cap-2:#991b1b] [--ky-cap:#dc2626] [--ky-rim:#7f1d1d] focus-visible:outline-none" type="button"><span class="grid size-[84px] place-items-center rounded-full bg-[linear-gradient(180deg,#3a3633,#0c0b0a)] shadow-[inset_0_2px_3px_rgba(255,255,255,.12),0_2px_0_#000] group-focus-visible:outline-3 group-focus-visible:outline-offset-4 group-focus-visible:outline-[#fbbf24]" aria-hidden="true"><span class="ky-cap size-[62px] -translate-y-1.5 rounded-full shadow-[0_8px_0_var(--ky-rim),0_10px_8px_rgba(0,0,0,.6)] transition-[translate,box-shadow] duration-[90ms] ease-out group-active:translate-y-0 group-active:shadow-[0_2px_0_var(--ky-rim),0_3px_4px_rgba(0,0,0,.6)] motion-reduce:transition-none"></span></span>1P Start</button>
<button class="group grid cursor-pointer justify-items-center gap-3 text-[.8rem] font-bold tracking-[.12em] text-[#f5f0e8] uppercase [--ky-cap-2:#1d4ed8] [--ky-cap:#3b82f6] [--ky-rim:#1e3a8a] focus-visible:outline-none" type="button"><span class="grid size-[84px] place-items-center rounded-full bg-[linear-gradient(180deg,#3a3633,#0c0b0a)] shadow-[inset_0_2px_3px_rgba(255,255,255,.12),0_2px_0_#000] group-focus-visible:outline-3 group-focus-visible:outline-offset-4 group-focus-visible:outline-[#fbbf24]" aria-hidden="true"><span class="ky-cap size-[62px] -translate-y-1.5 rounded-full shadow-[0_8px_0_var(--ky-rim),0_10px_8px_rgba(0,0,0,.6)] transition-[translate,box-shadow] duration-[90ms] ease-out group-active:translate-y-0 group-active:shadow-[0_2px_0_var(--ky-rim),0_3px_4px_rgba(0,0,0,.6)] motion-reduce:transition-none"></span></span>2P Start</button>
<button class="group grid cursor-pointer justify-items-center gap-3 text-[.8rem] font-bold tracking-[.12em] text-[#f5f0e8] uppercase [--ky-cap-2:#ca8a04] [--ky-cap:#facc15] [--ky-rim:#854d0e] focus-visible:outline-none" type="button"><span class="grid size-[84px] place-items-center rounded-full bg-[linear-gradient(180deg,#3a3633,#0c0b0a)] shadow-[inset_0_2px_3px_rgba(255,255,255,.12),0_2px_0_#000] group-focus-visible:outline-3 group-focus-visible:outline-offset-4 group-focus-visible:outline-[#fbbf24]" aria-hidden="true"><span class="ky-cap size-[62px] -translate-y-1.5 rounded-full shadow-[0_8px_0_var(--ky-rim),0_10px_8px_rgba(0,0,0,.6)] transition-[translate,box-shadow] duration-[90ms] ease-out group-active:translate-y-0 group-active:shadow-[0_2px_0_var(--ky-rim),0_3px_4px_rgba(0,0,0,.6)] motion-reduce:transition-none"></span></span>Insert coin</button>
</div></div>