:root{--ng-five:#1d1630;--ng-fill:#1d1630;--ng-cross:#a79fbb;--ng-on:#fff3b0;--ng-given:#efe9f7}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ng-five:#8d84a8;--ng-fill:#e9e4f5;--ng-cross:#6b6385;--ng-on:#3d3820;--ng-given:#2a2340}}:root[data-theme=dark]{--ng-five:#8d84a8;--ng-fill:#e9e4f5;--ng-cross:#6b6385;--ng-on:#3d3820;--ng-given:#2a2340}.nonogram .ngouter{flex-direction:column;align-items:center;gap:10px;display:flex}.nonogram .ngtools{gap:8px;display:flex}.nonogram .ngtool{opacity:.6;align-items:center;gap:8px;height:38px;padding:0 14px;font-size:14px;display:inline-flex}.nonogram .ngtool.on{opacity:1;background:var(--c);color:#1d1630}.nonogram .ngsq{background:currentColor;border-radius:3px;width:14px;height:14px}.nonogram .ngx{font-weight:700}.nonogram .ngwrap{--avail:min(100vw - 40px,520px);--cell:min(36px,calc(var(--avail) / (var(--n) + var(--rl) * .36 + .6)));--font:clamp(10px,calc(var(--cell) * .5),16px);grid-template-columns:auto calc(var(--n) * var(--cell) + 5px);grid-template-rows:auto calc(var(--n) * var(--cell) + 5px);-webkit-user-select:none;user-select:none;display:grid}.nonogram .ngcols{grid-template-columns:repeat(var(--n),var(--cell));align-items:end;padding:0 2.5px;display:grid}.nonogram .ngrows{grid-template-rows:repeat(var(--n),var(--cell));padding:2.5px 0;display:grid}.nonogram .ngclue{font-family:var(--display);font-weight:700;font-size:var(--font);color:var(--ink);border-radius:5px;line-height:1.15;transition:opacity .15s;display:flex}.nonogram .ngcols .ngclue{flex-direction:column;justify-content:end;align-items:center;min-height:100%;padding-bottom:4px}.nonogram .ngrows .ngclue{justify-content:end;align-items:center;gap:.32em;padding-right:6px}.nonogram .ngclue b{font-weight:700}.nonogram .ngclue.done{opacity:.3}.nonogram .ngclue.on{background:var(--ng-on)}.nonogram .nggrid{grid-template-columns:repeat(var(--n),var(--cell));grid-template-rows:repeat(var(--n),var(--cell));border:2.5px solid var(--border);background:var(--card);touch-action:none;box-shadow:4px 4px 0 var(--shadow);border-radius:6px;display:grid;overflow:hidden}.nonogram .ngc{box-sizing:border-box;width:var(--cell);height:var(--cell);border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--card);cursor:pointer;padding:0;transition:background-color .1s;position:relative}.nonogram .ngc.vr{border-right:2px solid var(--ng-five)}.nonogram .ngc.hr{border-bottom:2px solid var(--ng-five)}.nonogram .ngc.given{cursor:default}.nonogram .ngc.given:not(.fl){background:var(--ng-given)}.nonogram .ngc.fl{background:var(--ng-fill)}.nonogram .ngc.cx:after{content:"✕";font-size:calc(var(--cell) * .55);color:var(--ng-cross);place-items:center;font-weight:700;display:grid;position:absolute;inset:0}.nonogram .ngc.hinted{box-shadow:inset 0 0 0 3px #2fd67b}.nonogram .ngc.cur{box-shadow:inset 0 0 0 3px var(--c)}.nonogram .ngwrap.solved .ngc{cursor:default;box-shadow:none;border-color:#0000;transition:background-color .5s,border-color .5s}.nonogram .ngwrap.solved .ngc.fl{background:var(--pic)}.nonogram .ngwrap.solved .ngc:not(.fl){background:var(--card)}@media (prefers-reduced-motion:reduce){.nonogram .ngc{transition:none}}.nonogram .goal{color:var(--muted);text-align:center;min-height:2.6em;font-size:14px}.nonogram .goal b{color:var(--ink);font-family:var(--display);font-size:16px}.nonogram .progress{background:var(--soft);border:2px solid var(--border);border-radius:999px;height:12px;overflow:hidden}.nonogram .progress i{background:linear-gradient(90deg,#9d7bff,#38d9f5);width:0;height:100%;transition:width .15s;display:block}.nonogram .tools{grid-template-columns:repeat(3,1fr)}.nonogram .tool:disabled{opacity:.45}.nonogram .ht-ng{grid-template-columns:auto repeat(var(--w),26px);font-family:var(--display);color:#1d1630;gap:0;font-size:13px;font-weight:700;display:grid}.nonogram .ht-ng .cl{flex-direction:column;justify-content:end;align-items:center;padding-bottom:3px;line-height:1.1;display:flex}.nonogram .ht-ng .rl{justify-content:end;align-items:center;gap:4px;padding-right:6px;display:flex}.nonogram .ht-ng i{box-sizing:border-box;color:#a79fbb;background:#fff;border:1px solid #d9d1e6;place-items:center;width:26px;height:26px;font-style:normal;display:grid}.nonogram .ht-ng i.f{background:#1d1630;border-color:#1d1630}.nonogram .ht-ng i.bad{background:#ffd6dd}.nonogram .ht-ng .dim{opacity:.3}
