@font-face{font-family:Galmuri11;src:url(/fonts/Galmuri11.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Galmuri11;src:url(/fonts/Galmuri11-Bold.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Galmuri14;src:url(/fonts/Galmuri14.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:GalmuriMono;src:url(/fonts/GalmuriMono11.woff2)format("woff2");font-weight:400;font-display:swap}:root{--teal:#1fa3a8;--teal-dark:#0d6f73;--teal-pale:#bfe9ea;--gold:#d9b23a;--gold-dark:#8a6a10;--cream:#f4edd2;--grey:#a8a8a8;--grey-dark:#5f5f5f;--grey-light:#d4d4d4;--ink:#111;--lawn:#5fb54a;--red:#c8412e;--label:700 22px/1.2 "Galmuri11", "Courier New", monospace;--body:400 22px/1.35 "Galmuri11", "Courier New", monospace;--read:400 28px/1.3 "Galmuri14", "Courier New", monospace;--title:700 33px/1.1 "Galmuri11", "Courier New", monospace;--mono:400 22px/1.3 "GalmuriMono", "Courier New", monospace}*{box-sizing:border-box}html,body{background:var(--lawn);height:100%;color:var(--ink);font:var(--body);-webkit-font-smoothing:none;-moz-osx-font-smoothing:unset;font-smooth:never;cursor:url(/art/cursor_arrow.png) 2 2,auto;margin:0}#root{min-height:100%}a{color:var(--teal-dark)}button,a,[role=button],summary,label,input[type=checkbox]{cursor:url(/art/cursor_hand.png) 10 2,pointer}button{font:inherit;color:inherit}input,textarea,select{font:var(--mono);color:var(--ink);border:2px solid var(--ink);cursor:url(/art/cursor_arrow.png) 2 2,text;background:#fffdf5;border-radius:0;width:100%;min-width:0;padding:8px 10px}input:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--ink);outline-offset:2px}img{image-rendering:pixelated;image-rendering:crisp-edges}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.stage{width:100%;height:100vh;height:100dvh;position:relative;overflow:hidden}.town{background:var(--lawn) url(/art/town.jpg) no-repeat;image-rendering:pixelated;background-position:50% 35%;background-size:cover;position:absolute;inset:0}.town-hit{background:0 0;border:0;border-radius:6px;padding:0;position:absolute}.town-hit:hover,.town-hit:focus-visible{outline:4px solid var(--gold);outline-offset:-2px}.sign{text-align:center;color:var(--ink);word-break:break-word;background:#fff;border-radius:2px;justify-content:center;align-items:center;padding:0 3px;font:700 16px/1 Galmuri11,monospace;display:flex;position:absolute;overflow:hidden}.sign.is-lit{background:#fff3a8;animation:.6s steps(2,jump-none) infinite sign-blink}.sign.is-empty{color:#9a9a9a}@keyframes sign-blink{0%{background:#fff3a8}to{background:#ffe04a}}.walker{pointer-events:none;will-change:transform;background:url(/art/keeper.png) no-repeat;position:absolute;top:0;left:0}.plate-window{border:30px solid #0000;border-image:url(/art/window.png) 60 fill/30px}.plaque{font:var(--title);color:var(--ink);text-align:center;white-space:nowrap;text-overflow:ellipsis;border:22px solid #0000;border-image:url(/art/plaque.png) 44 fill/22px;padding:2px 8px;overflow:hidden}.bubble{font:var(--label);color:#fff;border:18px solid #0000;border-width:18px 18px 30px 60px;border-image:url(/art/bubble.png) 36 36 60 120 fill/18px 18px 30px 60px;min-height:60px;padding:4px 6px 0 0}.ticket{border:12px solid #0000;border-left-width:20px;border-image:url(/art/ticket.png) 24 24 24 40 fill/12px 12px 12px 20px;padding:6px 8px}.btn{font:var(--label);color:var(--ink);white-space:nowrap;background:0 0;border:10px solid #0000;border-image:url(/art/button.png) 20 fill/10px;justify-content:center;align-items:center;gap:10px;min-width:120px;min-height:56px;padding:8px 14px;text-decoration:none;transition:transform 50ms step-end;display:inline-flex}.btn:hover{filter:brightness(1.08)}.btn:active{transform:translateY(3px)}.btn[disabled],.btn.is-off{filter:grayscale()brightness(1.15);color:#444;cursor:url(/art/cursor_arrow.png) 2 2,not-allowed}.btn.is-small{min-width:90px;min-height:48px;padding:4px 10px}.btn.is-wide{flex:1}.btn img{width:22px;height:22px;display:block}.window{background:var(--grey);flex-direction:column;display:flex;position:absolute}.window-plaque{z-index:2;min-width:320px;max-width:90%;position:absolute;top:0;left:50%;transform:translate(-50%,-62%)}.window-body{flex-direction:column;flex:1;gap:14px;min-height:0;padding:34px 6px 6px;display:flex}.window-scroll{scrollbar-width:thin;scrollbar-color:var(--grey-dark) var(--grey-light);flex-direction:column;flex:1;gap:10px;min-height:0;padding:2px 6px 2px 2px;display:flex;overflow:hidden auto}.window-foot{flex-wrap:wrap;gap:14px;padding:8px 6px 4px;display:flex}.window-foot .btn{flex:1}.note{font:var(--body);color:var(--ink);background:var(--grey-light);border:2px solid var(--grey-dark);padding:8px 12px}.note.is-bad{border-color:var(--red);background:#ffd9d3}.note.is-good{border-color:var(--teal-dark);background:var(--teal-pale)}.ticket-row{grid-template-columns:1fr auto;align-items:center;gap:8px 14px;display:grid}.ticket-name{font:var(--label);flex-wrap:wrap;align-items:baseline;gap:12px;min-width:0;display:flex}.ticket-name .bounty{color:var(--teal-dark)}.ticket-line{font:var(--body);color:#3d3323;overflow-wrap:anywhere;min-width:0}.ticket-line.is-live{color:var(--red)}.ticket-line.is-ready{color:var(--teal-dark)}.ticket-open{text-align:left;width:100%;color:inherit;background:0 0;border:0;padding:0}.ticket-detail{font:var(--body);border-top:2px dashed #b9a87c;grid-column:1/-1;grid-template-columns:max-content 1fr;gap:4px 16px;min-width:0;padding-top:8px;display:grid}.ticket-detail dt{color:#6b5c3a;margin:0}.ticket-detail dd{overflow-wrap:anywhere;min-width:0;margin:0}.ticket-detail .mono{font:var(--mono)}.ticket-actions{flex-wrap:wrap;grid-column:1/-1;gap:10px;display:flex}.mono{font:var(--mono)}.ledger{border-collapse:collapse;width:100%;font:var(--body)}.ledger th,.ledger td{text-align:left;white-space:nowrap;border-bottom:2px solid #b9a87c;padding:6px 8px}.ledger th{font:var(--label);color:#6b5c3a}.ledger td.num,.ledger th.num{text-align:right}.ledger-wrap{overflow-x:auto}.form{grid-template-columns:1fr 1fr;gap:10px 14px;display:grid}.form .full{grid-column:1/-1}.field{flex-direction:column;gap:4px;min-width:0;display:flex}.field>span{font:var(--label)}.field small{font:var(--body);color:#3d3323}.presets{flex-wrap:wrap;gap:6px;display:flex}.presets button{border:2px solid var(--ink);font:var(--body);background:#fffdf5;padding:4px 8px}.presets button.is-on{background:var(--teal-pale)}.you{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 16px;display:grid}.you .k{font:var(--body);color:#3d3323}.you .v{font:var(--label);overflow-wrap:anywhere}.how p{font:var(--read);margin:0 0 12px}.how ol{font:var(--read);margin:0;padding-left:32px}.how li{margin-bottom:8px}.how h3{font:var(--title);margin:12px 0 8px}.links{flex-wrap:wrap;gap:12px;display:flex}.clock,.register{pointer-events:none;position:absolute;bottom:12px}.clock{left:12px}.register{right:12px}.clock>img,.register>img{width:100%;height:auto;display:block}.clock-hand{transform-origin:50% 100%;background:var(--ink);position:absolute;top:50%;left:50%}.clock-label{color:#fff;font:var(--label);text-align:center;flex-direction:column;justify-content:center;align-items:center;line-height:1.1;display:flex;position:absolute}.clock-day{text-align:center;font:var(--label);color:var(--ink);line-height:1.1;position:absolute}.register-lcd{color:#d8ffb0;font:var(--mono);white-space:nowrap;text-shadow:0 0 6px #7dff3a;pointer-events:auto;justify-content:center;align-items:center;display:flex;position:absolute;overflow:hidden}.register-lcd .ca{font:inherit;line-height:inherit;color:inherit;text-align:center;-webkit-user-select:all;user-select:all;letter-spacing:0;background:0 0;border:0;padding:0}.register-lcd .ca.is-empty{color:#8fbf7a;-webkit-user-select:none;user-select:none;font:var(--label);line-height:inherit}.register-tape{color:var(--ink);font:var(--body);pointer-events:auto;background:#fff;flex-direction:column;align-items:stretch;gap:4px;padding:8px 4px 4px;display:flex;position:absolute;box-shadow:0 2px #cfcfcf}.register-tape .t{font:var(--label);text-align:center;color:var(--teal-dark);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.register-tape .copy{border:2px solid var(--ink);font:var(--label);color:var(--ink);background:#fff;padding:6px 4px}.register-tape .copy.is-done{background:var(--teal-pale)}.register-tape .copy[disabled]{color:#8a8a8a;border-color:#8a8a8a}.register-tape .line{color:#333;font:var(--body);text-align:center;white-space:nowrap;text-overflow:ellipsis;border-top:2px dashed #bbb;padding-top:4px;overflow:hidden}.register-keys{pointer-events:none;position:absolute;inset:0}.register-keys .key{pointer-events:auto}.key{background:0 0;border:0;justify-content:center;align-items:center;padding:0;transition:transform 50ms step-end;display:flex}.key img{object-fit:contain;width:60%;height:60%}.key:active{transform:translateY(3px)}.key.is-off{filter:grayscale()opacity(.45);cursor:url(/art/cursor_arrow.png) 2 2,not-allowed}.key:hover:not(.is-off){filter:brightness(1.1)}.key .sr{position:absolute}.phone-nav{display:none}@media (max-width:899px){.stage{flex-direction:column;gap:16px;height:auto;min-height:100vh;padding:0 0 24px;display:flex}.town{background-position:50% 12%;flex:none;height:220px;position:relative;inset:auto}.town-hit,.sign{display:none}.phone-nav{flex-wrap:wrap;gap:8px;padding:0 12px;display:flex}.phone-nav .btn{flex:40%;min-width:0;min-height:52px;padding:4px 6px}.phone-nav .btn.is-here{filter:brightness(1.18);box-shadow:inset 0 0 0 3px var(--gold)}.window{width:auto;min-height:420px;margin:30px 8px 0;position:relative;inset:auto}.plate-window{border-width:16px;border-image-width:16px}.window-plaque{min-width:200px}.window-body{gap:10px;padding:34px 2px 2px}.window-scroll{padding:0;overflow:visible}.ticket{border-width:8px 8px 8px 14px;border-image-width:8px 8px 8px 14px;padding:6px 4px}.ticket-row{grid-template-columns:1fr}.ticket-row>.btn{justify-self:start}.ticket-detail{grid-template-columns:1fr;gap:2px 0}.ticket-detail dt{margin-top:6px}.window-foot{flex-direction:column;padding:6px 2px 2px}.window-foot .btn,.ticket-actions .btn{white-space:normal;width:100%;min-width:0}.bubble{border-width:14px 14px 26px 40px;border-image-width:14px 14px 26px 40px}.clock,.register{margin:0 auto;position:relative;inset:auto}.form{grid-template-columns:1fr}.you{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion:reduce){.sign.is-lit{background:#ffe04a;animation:none}}
