:root{--ink:#1b1b1f;--paper:#fbf7f0;--red:#b3282d;--red-dark:#8c1f23;--line:#d8cfc2;--ok:#1f6f43}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,Hiragino Sans,Noto Sans JP,sans-serif;-webkit-text-size-adjust:100%}main{max-width:34rem;margin:0 auto;padding:1.25rem 1.25rem 3rem}.head{border-bottom:3px solid var(--red);padding-bottom:.75rem;margin-bottom:1.25rem}.head h1{margin:0;font-size:1.6rem;letter-spacing:.08em}.head p{margin:.35rem 0 0;font-size:.95rem;color:#5a5550}label{display:block;font-size:1.05rem;font-weight:700;margin-bottom:.5rem}textarea{width:100%;font-size:1.15rem;line-height:1.6;padding:.75rem;border:2px solid var(--line);border-radius:.5rem;background:#fff;color:inherit;resize:none;font-family:inherit}textarea:focus{outline:3px solid var(--red);outline-offset:1px}.count{display:flex;justify-content:space-between;font-size:.9rem;color:#6b655e;margin-top:.35rem}.count.over{color:var(--red);font-weight:700}button{width:100%;min-height:3.5rem;margin-top:1.25rem;font-size:1.2rem;font-weight:700;font-family:inherit;color:#fff;background:var(--red);border:none;border-radius:.6rem;cursor:pointer}button:active{background:var(--red-dark)}button:disabled{background:#b9b2a8;cursor:default}.msg{margin-top:1.25rem;padding:1rem;border-radius:.6rem;border:2px solid var(--line);background:#fff;font-size:1.05rem;line-height:1.7}.msg.ok{border-color:var(--ok)}.msg.ng{border-color:var(--red)}.msg .en{display:block;margin-top:.4rem;color:#5a5550;font-size:.95rem}.note{margin-top:2rem;font-size:.85rem;color:#6b655e;line-height:1.7}.qno{margin:0 0 .25rem;font-size:.9rem;color:var(--red);font-weight:700}.q{margin:0 0 1rem;font-size:1.3rem;line-height:1.5}.choices{display:grid;grid-gap:.75rem;gap:.75rem}.choice{display:flex;align-items:center;gap:.75rem;margin:0;min-height:3.75rem;padding:.75rem 1rem;font-size:1.1rem;text-align:left;color:var(--ink);background:#fff;border:2px solid var(--line)}.choice .mark{flex:0 0 2rem;height:2rem;line-height:2rem;text-align:center;border-radius:50%;background:var(--ink);color:#fff;font-size:.95rem}.choice.picked{border-color:var(--red);background:#fff2f2}.choice:disabled{opacity:.55;background:#fff}.inkpad{margin-top:.75rem;aspect-ratio:1/1;border:2px solid var(--ink);border-radius:.5rem;background:#fff;touch-action:none;background-image:radial-gradient(circle at 50% 50%,#f2ece2 0 60%,#fff 100%)}.folds{display:flex;gap:.75rem;margin:.75rem 0}.fold{margin:0;min-height:3rem;font-size:1rem;background:#fff;color:var(--ink);border:2px solid var(--line)}.fold.on{border-color:var(--red);background:#fff2f2;color:var(--red)}.monpad{aspect-ratio:1/1;touch-action:none;border:2px solid var(--line);border-radius:.5rem;background:#fff;overflow:hidden}.monpad svg{width:100%;height:100%;display:block}.monpad .paper{fill:#efe7d8}.monpad polyline{fill:none;stroke:var(--red);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}button.minor{margin-top:.5rem;background:#fff;color:var(--ink);border:2px solid var(--line);min-height:3rem;font-size:1rem}main.wide{max-width:68rem}input[type=password]{width:100%;font-size:1.1rem;padding:.7rem;border:2px solid var(--line);border-radius:.5rem}.ops .bar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1rem}.ops .mode{margin:0;width:auto;min-height:2.75rem;padding:0 1rem;font-size:1rem;background:#fff;color:var(--ink);border:2px solid var(--line)}.ops .mode.on{background:var(--red);color:#fff;border-color:var(--red)}.ops .counts{margin-left:auto;font-size:.95rem}.ops .counts b{font-size:1.2rem;color:var(--red)}.ops .panel{border:2px solid var(--line);border-radius:.6rem;background:#fff;padding:1rem;margin-bottom:1rem}.ops .panel h2{margin:0 0 .5rem;font-size:1.05rem}.ops .row{display:flex;gap:.5rem;align-items:center}.ops select{font-size:1rem;padding:.6rem;border:2px solid var(--line);border-radius:.4rem}.ops .row button{margin:0;width:auto;min-height:2.75rem;padding:0 1.25rem;font-size:1rem}.ops ul{list-style:none;margin:.75rem 0 0;padding:0}.ops .votes li{display:grid;grid-template-columns:14rem 1fr 6rem;grid-gap:.75rem;gap:.75rem;align-items:center;padding:.35rem 0}.ops .votes li.right .lbl{font-weight:700;color:var(--ok)}.ops .graph{display:flex;height:1.4rem;background:#f1ece3;border-radius:.2rem;overflow:hidden}.ops .graph i{display:block;height:100%}.ops .graph .ja{background:#2b5f9e}.ops .graph .en{background:#c0524f}.ops .why{margin:.75rem 0 0;padding:.6rem .8rem;background:#f7f3ec;border-radius:.4rem;font-size:.95rem}.ops .brush li,.ops .queue li{display:flex;gap:.5rem;align-items:center;padding:.35rem;border-bottom:1px solid var(--line)}.ops .queue li.sel{background:#fff2f2;outline:2px solid var(--red);border-radius:.3rem}.ops .pick{flex:1 1;display:flex;gap:.75rem;align-items:center;margin:0;min-height:2.5rem;background:transparent;color:var(--ink);font-size:1.05rem;text-align:left}.ops .kind{flex:0 0 3rem;font-size:.8rem;color:#6b655e}.ops .text{flex:1 1}.ops .lang{font-size:.8rem;color:#6b655e}.ops .brush li button,.ops .queue li button:not(.pick){margin:0;width:auto;min-height:2.5rem;padding:0 .9rem;font-size:.95rem}.ops .danger{background:#6b1f1f}.ops code{font-family:ui-monospace,monospace;background:#f1ece3;padding:.2rem .4rem;border-radius:.25rem}.score{margin-top:1.5rem;padding:1rem;border:2px solid var(--line);border-radius:.6rem;background:#fff}.score p{margin:0 0 .5rem;font-size:1.1rem}.score b{font-size:1.8rem;color:var(--red)}.ticket{margin-top:1.5rem;padding:1.25rem 1rem;border:3px dashed var(--red);border-radius:.6rem;background:#fff;text-align:center}.ticket .lead{margin:0;font-size:1rem;letter-spacing:.2em;color:var(--red)}.ticket .code{margin:.5rem 0;font-family:ui-monospace,monospace;font-size:2.6rem;font-weight:700;letter-spacing:.12em}.ticket .note{margin:0}.ops input[type=text]{flex:0 0 12rem;font-family:ui-monospace,monospace;font-size:1.3rem;letter-spacing:.1em;text-transform:uppercase;padding:.6rem;border:2px solid var(--line);border-radius:.4rem}