:root{--g:#3dff8c;--c:#38e8ff;--t:#1fbfa9;--dim:#2b6f63}
html,body{margin:0;height:100%;background:#000;overflow:hidden;color-scheme:dark}
#c{display:block;width:100vw;height:100vh;height:100dvh}
.setup{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#000;font-family:VT323,"Lucida Console",ui-monospace,monospace;color:var(--t);padding:calc(12px + env(safe-area-inset-top,0px)) 12px calc(12px + env(safe-area-inset-bottom,0px));overflow:auto;box-sizing:border-box}
.win{border:3px double var(--t);max-width:760px;width:100%;background:#000;box-shadow:0 0 24px rgba(31,191,169,.18)}
.bar{display:flex;justify-content:space-between;background:var(--t);color:#000;padding:2px 10px;font-size:22px}
.det{margin:0;padding:10px 14px 4px;font-family:inherit;font-size:19px;line-height:1.15;color:#3f9e8e;white-space:pre-wrap;min-height:5.6em}
.det b{color:var(--g);font-weight:normal}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;padding:8px 14px}
fieldset{border:1px solid var(--dim);margin:0;padding:6px 10px 10px}
legend{color:var(--g);font-size:21px;padding:0 6px}
label{display:block;font-size:21px;line-height:1.25;cursor:pointer;position:relative}
label input{position:absolute;opacity:0;width:1px;height:1px}
label span::before{content:"( ) ";color:var(--dim)}
label input[type=checkbox]+span::before{content:"[ ] "}
label input:checked+span{color:var(--c)}
label input:checked+span::before{content:"(\2022) ";color:var(--c)}
label input[type=checkbox]:checked+span::before{content:"[x] "}
label input:disabled+span{color:#244d46;text-decoration:line-through;cursor:not-allowed}
label input:focus-visible+span{outline:1px dashed var(--c);outline-offset:2px}
label small{font-size:17px;color:#3f8579}
.actions{display:flex;gap:12px;justify-content:center;padding:6px 14px 4px;flex-wrap:wrap}
button{font-family:VT323,ui-monospace,monospace;font-size:24px;background:#000;color:var(--g);border:2px solid var(--g);padding:4px 26px;cursor:pointer}
button:hover{background:var(--g);color:#000}
button:focus-visible{outline:2px solid var(--c);outline-offset:3px}
.hint{text-align:center;font-size:18px;color:#3f8579;padding:4px 10px 10px}
.endbar{position:fixed;left:0;right:0;bottom:calc(24px + env(safe-area-inset-bottom,0px));display:none;justify-content:center;gap:14px}
.mutebtn{position:fixed;right:calc(10px + env(safe-area-inset-right,0px));bottom:calc(10px + env(safe-area-inset-bottom,0px));font-size:18px;padding:2px 10px;color:var(--t);border-color:var(--dim);display:none}
