body{background:#1b2a3a}.tj-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tj{box-sizing:border-box;flex-direction:column;align-items:center;min-height:calc(100dvh - 72px);padding:6px 8px 20px;display:flex}.tj.is-playing,.tj.is-playing .tj-stage{touch-action:none}.tj-stage{justify-content:center;display:flex;position:relative}#tj-canvas{image-rendering:pixelated;touch-action:none;background:#8a8a96;border-radius:6px;outline:none;display:block;box-shadow:0 4px 18px #00000073}.tj-loading{text-align:center;color:#f4e9c8;font-size:14px;position:absolute;top:40%;left:0;right:0}.tj-back,.tj-sound{color:#e7d5a2;white-space:nowrap;background:0 0;border:1px solid #c9a227;border-radius:999px;margin-left:auto;padding:4px 10px;font-size:13px;text-decoration:none}.tj-sound{cursor:pointer;touch-action:manipulation;margin-left:6px;padding:4px 8px;font-family:inherit}.tj-sound[aria-pressed=true]{color:#14244a;background:#c9a227}.tj-sound[aria-pressed=false]{opacity:.75;text-decoration:line-through}.tj-panel{box-sizing:border-box;text-align:center;color:#fff8e6;background:#101a28e0;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:9px;padding:14px;font-family:DotGothic16,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;display:flex;position:absolute;inset:0;overflow-y:auto}.tj-panel[hidden]{display:none}.tj-panel>*{flex-shrink:0}#tj-title{background:#101a2833;justify-content:flex-end;gap:10px;padding:12px 12px 18px}#tj-title .tj-logo{margin-bottom:auto}#tj-title .tj-best,#tj-title .tj-keys{text-shadow:2px 2px #1b1b26}.tj-row{justify-content:center;gap:8px;display:flex}.tj-panel--rules{background:#101a28e6;justify-content:flex-start;gap:10px}.tj-logo{letter-spacing:.06em;color:#ffd84a;text-shadow:3px 3px #3a3a4a,5px 5px #1b1b26;margin:4px 0 0;font-size:28px;font-weight:400;line-height:1.15}.tj-logo small{letter-spacing:.3em;color:#fff8e6;text-shadow:2px 2px #1b1b26;margin-top:6px;font-size:12px;display:block}.tj-howto{text-align:left;background:#101a28cc;border:2px solid #c9a227;border-radius:4px;margin:0;padding:6px 10px 6px 26px;font-size:12px;line-height:1.6}.tj-howto b{color:#ffd84a;font-weight:400}.tj-keys{opacity:.85;margin:0;font-size:11px}.tj-best{margin:0;font-size:13px}.tj-best b{color:#ffd84a;font-size:15px;font-weight:400}.tj-grid{grid-template-columns:repeat(8,1fr);gap:4px;width:100%;max-width:330px;display:grid}.tj-cell{cursor:pointer;font:inherit;color:#1b1b26;touch-action:manipulation;background:#e8e6dc;border:0;flex-direction:column;align-items:center;gap:0;padding:3px 0 2px;display:flex;box-shadow:inset -2px -2px #9a8a6a,0 0 0 2px #1b1b26}.tj-cell__n{font-size:14px;line-height:1.2}.tj-cell__s{letter-spacing:-.05em;color:#a8741e;font-size:8px;line-height:1.2}.tj-cell--ferry{background:#d0ecff;box-shadow:inset -2px -2px #9a8a6a,0 0 0 2px #4a8ad8}.tj-pager{justify-content:space-between;align-items:center;gap:8px;width:100%;max-width:330px;display:flex}.tj-chapter{color:#cfeee8;flex:1;margin:0;font-size:13px}.tj-page{cursor:pointer;min-width:44px;min-height:36px;font:inherit;color:#1b1b26;touch-action:manipulation;background:#f2c94c;border:0;font-size:20px;line-height:1;box-shadow:inset -2px -2px #a8741e,0 0 0 2px #1b1b26}.tj-page:disabled{cursor:default;opacity:.35}.tj-page:focus-visible{outline-offset:2px;outline:2px solid #fff8e6}.tj-cell.tj-cell--hard{box-shadow:inset -2px -2px #9a8a6a,0 0 0 2px #d0443a}.tj-cell.tj-cell--hard:disabled{box-shadow:inset -2px -2px #3a3a4a,0 0 0 2px #8a3a34}#tj-select{justify-content:flex-start;gap:7px;padding:12px 10px}#tj-select .tj-btn--sub{padding-top:5px;padding-bottom:7px}.tj-select-h{letter-spacing:.1em;color:#ffd84a;text-shadow:2px 2px #1b1b26;margin:0;font-size:18px;font-weight:400}.tj-cell:disabled{cursor:default;color:#b8b8c0;background:#5c5c6e;box-shadow:inset -2px -2px #3a3a4a,0 0 0 2px #1b1b26}.tj-cell:disabled .tj-cell__s{color:#8a8a96}.tj-cell:focus-visible{outline-offset:2px;outline:2px solid #fff8e6}.tj-intro__name{color:#ffd84a;text-shadow:2px 2px #1b1b26;margin:0;font-size:24px}.tj-intro__rule{max-width:300px;margin:0;font-size:15px;line-height:1.6}.tj-over-h{letter-spacing:.08em;color:#ffd84a;text-shadow:2px 2px #1b1b26;margin:0;font-size:24px;font-weight:400}.tj-stars{letter-spacing:.1em;color:#ffd84a;text-shadow:2px 2px #1b1b26;margin:0;font-size:34px}.tj-score-line{margin:0;font-size:18px}.tj-score-line b{color:#ffd84a;font-size:40px;font-weight:400}.tj-why{color:#ff9d8a;margin:0;font-size:15px}.tj-tip{color:#cfeee8;max-width:300px;margin:0;font-size:13px;line-height:1.5}.tj-reach{color:#cfeee8;margin:0;font-size:14px}.tj-record{color:#ff9d8a;margin:0;animation:.8s steps(2,end) infinite tjPulse}.tj-tally,.tj-parts{text-align:left;background:#101a2899;border:1px solid #c9a22799;grid-template-columns:1fr 1fr;gap:2px 20px;min-width:250px;margin:0;padding:6px 12px;font-size:12px;list-style:none;display:grid}.tj-parts{border-color:#c9a2274d;font-size:11px}.tj-parts:empty{display:none}.tj-tally b,.tj-parts b{color:#ffd84a;float:right;margin-left:6px;font-weight:400}.tj-btn{cursor:pointer;min-width:168px;font:inherit;letter-spacing:.1em;color:#1b1b26;background:#ffd84a;border:0;padding:10px 18px 12px;font-size:17px;box-shadow:inset -3px -3px #c9a227,0 0 0 3px #1b1b26,4px 4px 0 3px #00000073}.tj-btn[hidden]{display:none}.tj-btn,.tj-foot button{touch-action:manipulation}.tj-btn:active{transform:translate(2px,2px);box-shadow:inset -3px -3px #c9a227,0 0 0 3px #1b1b26}.tj-btn--sub{background:#cfe6ef;min-width:132px;padding:7px 14px 9px;font-size:14px;box-shadow:inset -3px -3px #7fa7b8,0 0 0 3px #1b1b26,4px 4px 0 3px #00000073}.tj-btn:focus-visible{outline-offset:5px;outline:2px solid #fff8e6}.tj-foot{pointer-events:none;justify-content:center;gap:8px;display:flex;position:absolute;bottom:4px;left:0;right:0}.tj-foot[hidden]{display:none}.tj-foot button{pointer-events:auto;cursor:pointer;color:#1b1b26;background:#e8e6dc;border:0;padding:5px 10px 6px;font-family:DotGothic16,Hiragino Kaku Gothic ProN,sans-serif;font-size:13px;box-shadow:inset -2px -2px #9a8a6a,0 0 0 2px #1b1b26}.tj-foot #tj-hint{background:#ffd84a;box-shadow:inset -2px -2px #c9a227,0 0 0 2px #1b1b26}.tj-foot button:active{transform:translate(1px,1px)}.tj-callout{text-align:center;pointer-events:none;color:#fff8e6;letter-spacing:.04em;opacity:0;text-shadow:2px 2px #1b1b26,0 0 8px #000000b3;font-family:DotGothic16,Hiragino Kaku Gothic ProN,sans-serif;font-size:19px;position:absolute;top:30%;left:0;right:0}.tj-callout.is-stage{color:#ffd84a;font-size:18px}.tj-callout.is-big{color:#ffe36b;font-size:24px}.tj-callout.is-miss{color:#ffb3a6;font-size:16px;top:78%}.tj-callout.is-hint{color:#ffe36b;font-size:17px;top:78%}.tj-callout.is-on{animation:1.8s ease-out forwards tjCallout}@keyframes tjCallout{0%{opacity:0;transform:translateY(8px)}12%{opacity:1;transform:none}75%{opacity:1}to{opacity:0;transform:translateY(-6px)}}@keyframes tjPulse{50%{opacity:.5}}.tj-demo{text-align:center;pointer-events:none;color:#fff8e6;background:#0a0c1cd6;border:2px solid #c9a227;border-radius:6px;flex-direction:column;align-items:center;padding:8px 10px 10px;font-family:DotGothic16,Hiragino Kaku Gothic ProN,sans-serif;display:flex;position:absolute;bottom:6%;left:5%;right:5%}.tj-demo[hidden]{display:none}.tj-demo__tag{letter-spacing:.3em;color:#ffd84a;margin:0 0 2px;font-size:11px}.tj-demo__cap{letter-spacing:.04em;margin:0;font-size:18px;line-height:1.3}.tj-demo__sub{color:#cfe6ef;margin:4px 0 0;font-size:12px;line-height:1.5}.tj-demo__sub:empty{display:none}.tj-demo.is-big{background:#0a0c1cf2;border-color:#ffd84a;top:34%;bottom:auto;box-shadow:0 0 0 2px #1b1b26,0 0 14px #ffd84a99}.tj-demo.is-big .tj-demo__cap{color:#ffd84a;font-size:22px;animation:.7s steps(2,end) infinite tjPulse}.tj-demo__start{pointer-events:auto;margin-top:10px}.tj-demo__skip{pointer-events:auto;cursor:pointer;font:inherit;color:#1b1b26;touch-action:manipulation;background:#cfe6ef;border:0;padding:6px 14px 8px;font-size:14px;position:absolute;top:-40px;right:-2px;box-shadow:inset -3px -3px #7fa7b8,0 0 0 2px #1b1b26}.tj-demo__skip[hidden]{display:none}@media (prefers-reduced-motion:reduce){.tj-callout.is-on{animation-duration:2.6s}.tj-record,.tj-demo.is-big .tj-demo__cap{animation:none}}
