/* SPDX-License-Identifier: AGPL-3.0-or-later */
@font-face{font-family:c0unt-r;src:url('../f/c0unt-r.woff2') format('woff2');font-display:swap}
@font-face{font-family:c0unt-h;src:url('../f/c0unt-h.woff2') format('woff2');font-display:swap}
:root{color-scheme:dark;--ground:#171916;--ink:#e5ddc6;--faint:#8f9689;--thread:#c2b45f;--tear:#e5957c}
*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--ink);font-family:c0unt-r;font-size:15px;line-height:1.55}button,a,input,summary,pre{font-family:c0unt-r;font-size:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{border:0;border-radius:0;background:none;color:inherit;padding:8px 12px;min-height:44px;cursor:pointer}button:hover,a:hover{color:var(--thread)}button:disabled{opacity:.3;cursor:default}button[aria-pressed=true]{color:var(--thread);text-decoration:underline;text-underline-offset:7px}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible,#sheet:focus-visible{outline:1px dashed var(--thread);outline-offset:3px}header,footer{display:flex;align-items:center;gap:24px;padding:12px 4vw}header{border-bottom:1px solid #45483e;letter-spacing:2px}header span{margin-right:auto}header a{text-decoration:none}header button{font-size:23px}main{max-width:1600px;margin:auto}footer{font-size:11px;color:var(--faint);border-top:1px solid #45483e}footer span{margin-left:auto}#entry{min-height:78vh;display:flex;flex-direction:column;align-items:center;justify-content:center}#entry svg{width:320px;height:260px}svg path,svg line,svg circle,svg polyline{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}#entry path{stroke-width:2}h1{font-family:c0unt-h;font-size:clamp(32px,6vw,72px);font-weight:normal;letter-spacing:5px;margin:0 0 14px}#begin{font-size:22px;border-bottom:1px solid var(--thread);color:var(--thread)}[hidden]{display:none!important}.tools{display:flex;align-items:center;flex-wrap:wrap;padding:10px 4vw;gap:6px}.palette{display:flex;margin-left:auto}.palette button{width:44px;padding:6px}.palette svg{width:29px;height:29px}.palette path{stroke-width:1.8}#sheet-wrap{position:relative;height:clamp(400px,65vh,760px);margin:0 4vw;border-top:1px solid #34392f;border-bottom:1px solid #34392f;background:linear-gradient(175deg,transparent 49.8%,#353a3020 50%,transparent 50.2%)}#sheet{width:100%;height:100%;touch-action:none;display:block}.ink-stroke{stroke-width:2.4;stroke:var(--ink)}.ghost{stroke:var(--faint);stroke-width:1;stroke-dasharray:2 7}.thread{stroke:var(--thread);stroke-width:1.2}.tear{stroke:var(--tear);stroke-width:2}.reading{stroke:var(--ink);stroke-width:1.6}.punctuation{stroke:var(--thread);stroke-dasharray:3 7;stroke-width:1}#mark-targets{position:absolute;inset:0;pointer-events:none}.mark{position:absolute;width:48px;height:56px;transform:translate(-50%,-50%);padding:0;pointer-events:auto;opacity:1}.mark[aria-pressed=true]{border-bottom:2px solid var(--thread)}.mark span{position:absolute;bottom:-19px;left:0;right:0;font-size:10px;opacity:0}.mark:focus-visible span{opacity:1}.under-edge{display:flex;justify-content:space-between;align-items:center;margin:0 4vw;min-height:50px}#receipt{color:var(--thread);font-size:13px;overflow-wrap:anywhere}#receipt[data-ok=false]{color:var(--tear)}#productions{display:flex;flex-wrap:wrap;gap:8px;margin:0 4vw}#productions button{display:flex;align-items:center;color:var(--thread);gap:14px;border-bottom:1px dotted #797344}#productions svg{width:125px;height:36px}#inspection{padding:18px 4vw;border-top:1px dashed #585d4f;color:var(--faint)}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.6}.safety{display:flex;flex-wrap:wrap;margin:12px 4vw 0;border-top:1px solid #45483e;gap:3px}.safety button{font-size:13px}#stop{margin-left:auto;color:var(--tear)}#keyboard{margin:10px 4vw 26px;color:var(--faint);font-size:12px}summary{cursor:pointer;min-height:44px;padding-top:10px}#keyboard p{max-width:650px}#help{margin:30px auto;padding:20px 6vw;max-width:780px;border-top:1px solid var(--thread)}#help p{margin:22px 0}#help-close{float:right}dialog{width:min(760px,94vw);max-height:90vh;background:var(--ink);color:var(--ground);border:0;border-radius:0;padding:24px 30px;box-shadow:12px 16px 0 #0005}dialog::backdrop{background:#0a0c09bf}dialog button{border-bottom:1px solid;max-width:100%}dialog h2{font-weight:normal;font-size:24px}dialog p{font-size:14px}#release-ink{width:100%;height:150px}dialog pre{max-height:180px;overflow:auto}.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.stopped #sheet-wrap{opacity:.5}.stopped #sheet-wrap::after{content:'stopped';position:absolute;inset:42% 0 auto;text-align:center;font-size:40px;pointer-events:none}.cursor{stroke:var(--thread);stroke-width:1;stroke-dasharray:2 3}
@media(max-width:600px){body{font-size:14px}header{gap:12px;font-size:12px;padding:5px 4vw}header span{letter-spacing:1px}footer{gap:14px;padding:14px 4vw}.tools{gap:0;padding:8px 2vw}.tools>button{padding:8px;font-size:13px}.palette{margin-left:0}.palette button{width:44px}#sheet-wrap{height:53vh;min-height:340px;margin:0 4vw}.under-edge{align-items:flex-start;padding-top:4px}#receipt{font-size:11px;max-width:80%;padding-top:10px}.safety button{padding:8px 10px}#stop{margin-left:0}#entry{min-height:78vh}#entry svg{width:260px;height:230px}#help{padding:12px 7vw}.ink-stroke{stroke-width:2}dialog{padding:16px 20px}#release-ink{height:110px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

#sheet:focus:not(:focus-visible){outline:none}

.mark{touch-action:none}
