:root{--shell: #f2f2f0;--shell-deep: #e8e8e5;--panel: #fafaf9;--panel-top: #ffffff;--well: #e1e1dd;--seam: #d4d4cf;--edge: #8a8a85;--ink: #141414;--ink-2: #5c5c58;--ink-faint: #b4b4ae;--key: #1a1a1a;--key-ink: #ffffff;--key-press: #050505;--key-2: #ffffff;--focus: #141414;--win: #146f37;--danger: #c8321f;--screen: #0e0e0e;--screen-raised: #1a1a1a;--screen-ink: #f2f2f0;--screen-muted: #a8a8a3;--filament: #f2f2f0;--font-display: "Sora", "Geist Variable", system-ui, sans-serif;--font-text: "Geist Variable", system-ui, sans-serif;--font-mono: "Geist Mono Variable", ui-monospace, "SF Mono", monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--space-10: 128px;--pitch-brush: 3px;--pitch-knurl: 6px;--pitch-grille: 8px;--radius-seam: 2px;--radius-well: 8px;--radius-key: 10px;--radius-screen: 12px;--radius-tray: 16px;--radius-pill: 999px;--shadow-tray: 0 1px 0 0 #ffffff inset, 0 0 0 1px #d4d4cf, 0 2px 4px rgba(20, 20, 20, .05), 0 12px 24px -16px rgba(20, 20, 20, .18);--shadow-key: 0 1px 0 0 rgba(255, 255, 255, .14) inset, 0 -2px 0 0 rgba(0, 0, 0, .35) inset, 0 1px 0 0 #050505, 0 3px 6px -1px rgba(20, 20, 20, .3);--shadow-key-2: 0 1px 0 0 #ffffff inset, 0 -2px 0 0 #e1e1dd inset, 0 1px 0 0 #b9b9b3, 0 3px 6px -1px rgba(20, 20, 20, .14);--shadow-key-press: 0 1px 0 0 rgba(255, 255, 255, .06) inset, 0 0 0 0 #050505, 0 1px 2px rgba(20, 20, 20, .25);--shadow-well: 0 1px 2px 0 rgba(20, 20, 20, .16) inset, 0 1px 0 0 #ffffff;--shadow-screen: 0 0 0 1px #2a2a2a, 0 0 0 7px #e8e8e5, 0 0 0 8px #d4d4cf, 0 1px 0 8px #ffffff;--texture-brush: repeating-linear-gradient(180deg, rgba(20, 20, 20, .045) 0 1px, transparent 1px 3px);--texture-knurl-a: repeating-linear-gradient(45deg, rgba(20, 20, 20, .05) 0 1px, transparent 1px 6px);--texture-knurl-b: repeating-linear-gradient(-45deg, rgba(20, 20, 20, .05) 0 1px, transparent 1px 6px);--texture-grille: radial-gradient(circle, rgba(20, 20, 20, .11) 0 1.1px, transparent 1.5px);--texture-tick: repeating-linear-gradient(180deg, #b4b4ae 0 1px, transparent 1px 16px);--texture-tick-x: repeating-linear-gradient(90deg, #b4b4ae 0 1px, transparent 1px 16px);--texture-grain: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.08 0 0 0 0 0.08 0 0 0 0 0.08 0 0 0 0.10 0'/></filter><rect width='160' height='160' filter='url(%23n)'/></svg>");--ease-motion: cubic-bezier(.45, .05, .2, 1);--ease-ui: cubic-bezier(.4, 0, .2, 1);--press: 90ms;--release: .18s;--lift: .12s;--seat: .42s;--assemble: .6s;--tilt: .9s;--rail: 56px;--marquee: 40px;--bench-max: 1360px;color-scheme:light;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-mode=dark]{--shell: #121212;--shell-deep: #0c0c0c;--panel: #1c1c1c;--panel-top: #262626;--well: #080808;--seam: #2a2a2a;--edge: #777772;--ink: #f2f2f0;--ink-2: #a6a6a1;--ink-faint: #4a4a46;--key: #f2f2f0;--key-ink: #121212;--key-press: #d8d8d3;--key-2: #262626;--focus: #f2f2f0;--win: #39d98a;--danger: #ff6b57;--screen: #0a0a0a;--screen-raised: #161616;--shadow-tray: 0 1px 0 0 #2e2e2e inset, 0 0 0 1px #2a2a2a, 0 2px 4px rgba(0, 0, 0, .4), 0 12px 24px -16px rgba(0, 0, 0, .7);--shadow-key: 0 1px 0 0 #ffffff inset, 0 -2px 0 0 #c9c9c4 inset, 0 1px 0 0 #a8a8a3, 0 3px 6px -1px rgba(0, 0, 0, .6);--shadow-key-2: 0 1px 0 0 #333333 inset, 0 -2px 0 0 #161616 inset, 0 1px 0 0 #0c0c0c, 0 3px 6px -1px rgba(0, 0, 0, .6);--shadow-key-press: 0 1px 0 0 #ffffff inset, 0 0 0 0 #a8a8a3, 0 1px 2px rgba(0, 0, 0, .5);--shadow-well: 0 1px 2px 0 rgba(0, 0, 0, .8) inset, 0 1px 0 0 #2a2a2a;--shadow-screen: 0 0 0 1px #2a2a2a, 0 0 0 7px #0c0c0c, 0 0 0 8px #2a2a2a;--texture-brush: repeating-linear-gradient(180deg, rgba(255, 255, 255, .05) 0 1px, transparent 1px 3px);--texture-knurl-a: repeating-linear-gradient(45deg, rgba(255, 255, 255, .06) 0 1px, transparent 1px 6px);--texture-knurl-b: repeating-linear-gradient(-45deg, rgba(255, 255, 255, .06) 0 1px, transparent 1px 6px);--texture-grille: radial-gradient(circle, rgba(255, 255, 255, .09) 0 1.1px, transparent 1.5px);--texture-tick: repeating-linear-gradient(180deg, #4a4a46 0 1px, transparent 1px 16px);--texture-tick-x: repeating-linear-gradient(90deg, #4a4a46 0 1px, transparent 1px 16px);--texture-grain: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.10 0'/></filter><rect width='160' height='160' filter='url(%23n)'/></svg>");color-scheme:dark}@view-transition{navigation:auto}::view-transition-old(root){animation:.18s var(--ease-ui) both vt-hold}::view-transition-new(root){animation:.42s var(--ease-motion) both vt-seat}@keyframes vt-hold{to{opacity:0}}@keyframes vt-seat{0%{transform:translateY(24px)}}*,*:before,*:after{box-sizing:border-box}html{background:var(--shell);touch-action:manipulation;scrollbar-color:var(--ink-faint) var(--shell)}body{margin:0;background:var(--shell);color:var(--ink);font-family:var(--font-text);font-size:16px;line-height:1.55;overflow-x:clip}body.km-casing{position:relative;isolation:isolate}body.km-casing:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.5;background-image:var(--texture-grain);background-size:160px 160px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{border:0;padding:0;background:none;cursor:pointer}button,a,input,select,label{touch-action:manipulation;-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}::selection{background:var(--ink);color:var(--shell)}img,svg{display:block;max-width:100%}.sr-only,.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:fixed;left:var(--space-4);top:-60px;z-index:100;padding:var(--space-2) var(--space-4);border-radius:var(--radius-key);background:var(--key);color:var(--key-ink);font-size:13px;font-weight:600;transition:top var(--release) var(--ease-ui)}.skip:focus{top:var(--space-4)}.wordmark{font-family:var(--font-display);font-weight:600;letter-spacing:-.02em;line-height:1}.hero{margin:0;font-family:var(--font-display);font-weight:600;font-size:clamp(36px,5vw,64px);line-height:.98;letter-spacing:-.03em;text-wrap:balance}.h1{margin:0;font-family:var(--font-display);font-weight:600;font-size:clamp(24px,2.6vw,34px);line-height:1.1;letter-spacing:-.02em}.h2{margin:0;font-family:var(--font-display);font-weight:600;font-size:20px;line-height:1.2;letter-spacing:-.015em}.h3{margin:0;font-family:var(--font-display);font-weight:600;font-size:16px;line-height:1.3;letter-spacing:-.01em}.lede{margin:0;font-size:clamp(17px,1.4vw,20px);line-height:1.5;max-width:34em;text-wrap:pretty}.body{margin:0;font-size:16px;line-height:1.55;max-width:64ch;text-wrap:pretty}.small{font-size:14px;line-height:20px}.caption{font-size:12px;line-height:16px;color:var(--ink-2)}.label{font-size:13px;font-weight:500;line-height:16px}.part{font-family:var(--font-mono);font-size:11px;font-weight:500;line-height:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}.mono,.num,.readout{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:0}.readout{font-size:24px;line-height:1;font-weight:500}.km-marquee{background-color:var(--shell-deep);background-image:var(--texture-brush);background-size:100% var(--pitch-brush);background-position:0 0;box-shadow:0 1px 0 0 var(--seam);display:flex;align-items:center;gap:var(--space-4);padding:0 var(--space-4);min-height:var(--marquee)}.km-plate-ground{background:var(--shell);box-shadow:0 0 0 1px var(--seam);border-radius:var(--radius-well);padding:var(--space-1) var(--space-2);display:inline-flex;align-items:center;gap:var(--space-2);color:var(--ink)}.km-tray{background:var(--panel);border-radius:var(--radius-tray);box-shadow:var(--shadow-tray);padding:var(--space-5);color:var(--ink)}.km-tray__band{display:flex;align-items:center;gap:var(--space-3);margin:calc(-1 * var(--space-5)) calc(-1 * var(--space-5)) var(--space-5);padding:var(--space-2) var(--space-5);background-color:var(--shell-deep);background-image:var(--texture-brush);background-size:100% var(--pitch-brush);background-position:0 0;border-radius:var(--radius-tray) var(--radius-tray) 0 0;box-shadow:0 1px 0 0 var(--seam);min-height:40px}.km-tray__band>.h1,.km-tray__band>.h2{padding:var(--space-1) var(--space-2);background:var(--shell);border-radius:var(--radius-well);box-shadow:0 0 0 1px var(--seam)}.km-well{background:var(--well);border-radius:var(--radius-well);box-shadow:var(--shadow-well);padding:var(--space-2);color:var(--ink)}.km-well--grille{background-image:var(--texture-grille);background-size:var(--pitch-grille) var(--pitch-grille);background-position:4px 4px}.km-partition{height:var(--space-4);background-color:var(--shell-deep);background-image:var(--texture-knurl-a),var(--texture-knurl-b);background-size:var(--pitch-knurl) var(--pitch-knurl);background-position:0 0;box-shadow:0 -1px 0 0 var(--seam),0 1px 0 0 var(--seam);border-radius:var(--radius-seam)}.km-screen{background:var(--screen);color:var(--screen-ink);border-radius:var(--radius-screen);box-shadow:var(--shadow-screen);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.km-rail{background-color:var(--shell);background-image:var(--texture-tick);background-size:8px var(--space-4);background-repeat:repeat-y;background-position:0 0;box-shadow:1px 0 0 0 var(--seam);width:var(--rail);display:flex;flex-direction:column;align-items:center;gap:var(--space-6);padding:var(--space-5) 0}.km-rail__stop{all:unset;cursor:pointer;display:grid;place-items:center;flex:none;width:32px;height:24px;border-radius:var(--radius-well);background:var(--shell);box-shadow:0 0 0 1px var(--seam);color:var(--ink-2);font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.06em;transition:background-color var(--lift) var(--ease-ui),color var(--lift) var(--ease-ui),box-shadow var(--lift) var(--ease-ui)}.km-rail__stop:hover{color:var(--ink)}.km-rail__stop[aria-current=true],.km-rail__stop[aria-current=page]{background:var(--panel-top);box-shadow:0 0 0 1px var(--edge);color:var(--ink)}.km-rail__stop:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.km-key{all:unset;position:relative;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:48px;padding:0 var(--space-5);border-radius:var(--radius-key);background:var(--key);color:var(--key-ink);box-shadow:var(--shadow-key);font-family:var(--font-text);font-size:13px;font-weight:600;letter-spacing:.02em;white-space:nowrap;cursor:pointer;user-select:none;-webkit-user-select:none;transition:transform var(--release) var(--ease-ui),box-shadow var(--release) var(--ease-ui),background-color var(--release) var(--ease-ui)}.km-key:after{content:"";position:absolute;inset:-2px}.km-key:hover{transform:translateY(-1px)}.km-key:hover:after{transform:translateY(1px)}.km-key:active,.km-key[aria-pressed=true]{transform:translateY(1px);background:var(--key-press);box-shadow:var(--shadow-key-press);transition-duration:var(--press)}.km-key:active:after,.km-key[aria-pressed=true]:after{transform:translateY(-1px)}.km-key:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.km-key--2{background:var(--key-2);color:var(--ink);box-shadow:var(--shadow-key-2)}.km-key--2:active,.km-key--2[aria-pressed=true]{background:var(--well);box-shadow:var(--shadow-key-press)}.km-key--primary{min-height:56px;border-radius:var(--radius-pill);padding:0 var(--space-6);font-size:14px;letter-spacing:.08em}.km-key--cap{min-height:40px;min-width:40px;padding:0 var(--space-3)}.km-key:disabled,.km-key[aria-disabled=true]{cursor:default;color:var(--ink-faint);background:var(--panel);box-shadow:0 0 0 1px var(--seam);transform:none}.km-key>svg{width:18px;height:18px;flex:none}.km-plate{position:relative;display:inline-flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) var(--space-4);background:var(--screen-raised);color:var(--screen-ink);border-radius:var(--radius-well);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.km-plate__label{font-family:var(--font-text);font-size:12px;font-weight:500;color:var(--screen-muted)}.km-plate__value{font-size:24px;line-height:1;font-weight:500}.km-field{display:grid;gap:var(--space-2);min-width:0}.km-field>.label{color:var(--ink-2)}.km-field>input,.km-field>textarea,.km-field>select{width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-well);background:var(--well);box-shadow:var(--shadow-well);color:var(--ink);font-size:16px;line-height:1.4}.km-field>textarea{min-height:112px;resize:vertical}.km-field>:is(input,textarea,select)::placeholder{color:var(--ink-faint)}.km-field>:is(input,textarea,select):focus-visible{outline:2px solid var(--focus);outline-offset:2px}.bench-marquee{position:sticky;top:0;z-index:40}.bench{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--space-4);row-gap:var(--space-8);align-content:start;width:100%;max-width:var(--bench-max);margin-inline:auto;padding:var(--space-8) var(--space-6) var(--space-10)}.bench>.km-tray{grid-column:var(--cols, 1 / -1);grid-row:var(--row, auto);min-width:0}.bench-rail{position:fixed;left:0;top:var(--marquee);bottom:0;z-index:30;overflow:auto;scrollbar-width:none}.bench-rail::-webkit-scrollbar{display:none}.bench-page{padding-left:var(--rail)}.km-tray[data-assemble]{transform:translateY(24px);transition:transform var(--seat) var(--ease-motion)}.km-tray[data-assemble]>[data-part]{transform:translateY(24px);transition:transform var(--seat) var(--ease-motion);transition-delay:calc(40ms * var(--i, 0) + 80ms)}.km-tray[data-assemble=seated],.km-tray[data-assemble=seated]>[data-part]{transform:none}@media(max-width:900px){:root{--marquee: 32px}.bench{row-gap:var(--space-7);padding:var(--space-6) var(--space-4) calc(var(--space-8) + 48px)}.bench>.km-tray{grid-column:1 / -1;padding:var(--space-4)}.bench>.km-tray>.km-tray__band{margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) var(--space-4);padding:var(--space-2) var(--space-4);min-height:36px}.bench-page{padding-left:0}.bench-rail{inset:auto 0 0;width:auto;height:48px;flex-direction:row;justify-content:flex-start;gap:var(--space-3);padding:0 var(--space-4);background-image:var(--texture-tick-x);background-size:var(--space-4) 8px;background-repeat:repeat-x;box-shadow:0 -1px 0 0 var(--seam);overflow-x:auto}.bench-rail .km-rail__stop{width:40px;height:28px}.km-marquee{padding:0 var(--space-3);gap:var(--space-2)}}@media(prefers-reduced-motion:reduce){.km-key,.km-key:hover,.km-key:active,.km-key[aria-pressed=true]{transform:none;transition:background-color var(--press) linear,box-shadow var(--press) linear}.km-key:after{transform:none!important}.km-tray[data-assemble],.km-tray[data-assemble]>[data-part]{transform:none;opacity:0;transition:opacity var(--seat) var(--ease-ui)}.km-tray[data-assemble=seated],.km-tray[data-assemble=seated]>[data-part]{opacity:1}::view-transition-old(root),::view-transition-new(root){animation-duration:.18s}::view-transition-new(root){animation-name:vt-fade}@keyframes vt-fade{0%{opacity:0}}html{scroll-behavior:auto!important}}@media(forced-colors:active){body.km-casing:before,.km-marquee,.km-tray__band,.km-partition,.km-well--grille,.km-rail{background-image:none}.km-tray,.km-well,.km-key,.km-plate,.km-screen,.km-plate-ground,.km-rail__stop{box-shadow:none;border:1px solid CanvasText}}
