:root{color-scheme:light;--ink:#252f2b;--paper:#eeeee7;--muted:#6e776f;--line:#cfd3c8}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN",sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}header{display:flex;align-items:center;justify-content:space-between;padding:26px 4vw;font-size:12px;letter-spacing:.06em}header a:first-child{font-size:25px;font-weight:700;letter-spacing:-.06em}header span{font-size:10px;letter-spacing:.15em}main{min-height:calc(100svh - 140px);display:grid;grid-template-columns:minmax(220px,.8fr) minmax(400px, min(78svh,760px));gap:5vw;align-items:center;padding:18px 5vw 32px;max-width:1600px;margin:auto}.intro{padding:0 2vw}.eyebrow{font-size:10px;letter-spacing:.16em;margin:0 0 36px;color:var(--muted)}h1{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(48px,6.6vw,94px);font-weight:400;line-height:1.25;letter-spacing:.08em;margin:0}.description{font-size:13px;line-height:2.15;margin:28px 0}.controls{display:flex;gap:9px;flex-wrap:wrap}.controls button{border:1px solid var(--ink);border-radius:32px;background:transparent;padding:12px 19px;font-size:12px;min-height:44px}.controls button:first-child{background:var(--ink);color:var(--paper);min-width:135px;text-align:left;display:flex;justify-content:space-between;gap:12px}.controls button[aria-pressed=true]{box-shadow:inset 0 0 0 1px currentColor}.secondary{display:flex;gap:20px;margin-top:13px}.secondary button{white-space:nowrap;border:0;border-bottom:1px solid var(--line);background:transparent;padding:9px 0;font-size:11px;min-height:40px}.secondary button:disabled{opacity:.35;cursor:default}.hint{font-size:12px;line-height:2;margin:27px 0 0}.hint span{color:var(--muted)}.keyboard{font-size:10px;line-height:1.8;color:var(--muted);max-width:300px;margin:10px 0 0}.message{font-size:11px;line-height:1.8;min-height:2em;max-width:310px;margin:10px 0 0;color:#695c38}.artwork{margin:0;min-width:0}.window{position:relative;aspect-ratio:1;background:#111714;isolation:isolate;overflow:hidden;border-radius:3px;box-shadow:0 17px 46px #23332416}.fallback,canvas{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover}canvas{opacity:0;touch-action:pan-y;cursor:crosshair}.ready canvas{opacity:1}.failed canvas{display:none}#loading,#error{position:absolute;left:20px;right:20px;top:45%;text-align:center;color:#e5e5d8;font-size:12px;letter-spacing:.14em;pointer-events:none}#error{background:#151e1cdf;padding:15px;line-height:1.8}#cursor{display:none;position:absolute;width:16px;height:16px;border:1px solid #ffefc4;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.keyboard-target #cursor{display:block}.inside-caption{position:absolute;bottom:24px;left:25px;right:25px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.18em;color:#d9d9c4a8;pointer-events:none}#dots{font-size:6px;letter-spacing:.3em}figcaption{display:flex;justify-content:space-between;gap:12px;padding-top:16px;font-size:9px;letter-spacing:.08em;color:var(--muted)}figcaption span:last-child{letter-spacing:0}footer{padding:18px 4vw;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:.06em}button:hover:not(:disabled){filter:brightness(.82)}button:focus-visible,a:focus-visible{outline:2px solid #82764b;outline-offset:5px}canvas:focus-visible{outline:2px solid #e6cc8a;outline-offset:-5px}.embed body{background:#111612}.embed header,.embed .intro,.embed footer,.embed figcaption{display:none}.embed main{display:block;padding:0;margin:0;max-width:none;min-height:0}.embed .window{width:100vw;height:100svh;aspect-ratio:auto;border-radius:0}.embed .fallback,.embed canvas{object-fit:cover}.embed .inside-caption{display:none}
@media(max-width:760px){header{padding:20px 5vw}header span{font-size:8px}main{display:flex;flex-direction:column-reverse;gap:27px;padding:7px 5vw 24px;min-height:0}.artwork{width:100%}.intro{padding:0;width:100%}.eyebrow{margin:0 0 14px;font-size:9px}h1{font-size:40px;line-height:1.4}h1 br{display:none}.description{margin:16px 0 19px;font-size:12px}.hint{margin-top:18px}.keyboard{display:none}.controls button{font-size:11px}.message{margin-top:5px;min-height:1.6em}.inside-caption{bottom:15px;left:16px;right:16px;font-size:7px}figcaption{padding-top:11px;font-size:8px}figcaption span:last-child{display:none}footer{padding:15px 5vw}.embed main{display:block;padding:0}}
