.ng{--ink:#2a2440;--grid-line:#d8d3e6;--grid-5:#6f6889;--cell:var(--surface);--fill:#2a2440;--x:#9a95ad;--err:#e0527a;--clue:var(--text);--clue-done:#b5b0c5;--hl:color-mix(in srgb, var(--brand) 14%, transparent);max-width:1000px;margin:0 auto}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .ng{--grid-line:#2f2a42;--grid-5:#7b7494;--fill:#d9d2ff;--x:#6b6682;--clue-done:#5a5470}}:root[data-theme=dark] .ng{--grid-line:#2f2a42;--grid-5:#7b7494;--fill:#d9d2ff;--x:#6b6682;--clue-done:#5a5470}.ng-head{flex-wrap:wrap;align-items:center;gap:8px 12px;margin:16px 0 10px;display:flex}.ng-head h1{letter-spacing:-.02em;margin:0 auto 0 0;font-size:28px}.ng-seg{background:var(--surface-2);border-radius:10px;gap:3px;padding:3px;display:flex}.ng-seg button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:6px 11px;font-size:14px;font-weight:600;display:inline-flex}.ng-seg button:hover{color:var(--text)}.ng-seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.ng-bar{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:12px;font-size:14px;display:flex}.ng-bar b{color:var(--text);font-variant-numeric:tabular-nums}.ng-bar .tools{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.ng-bar .btn{height:36px;padding:0 12px;font-size:14px}.ng-bar .btn.on{border-color:var(--brand);color:var(--brand)}.ng-mode-ico{width:14px;height:14px;display:inline-block}.ng-wrap{justify-content:center;padding-bottom:6px;display:flex;overflow-x:auto}.ng-board{--cs:32px;--rw:60px;--ch:60px;grid-template-columns:var(--rw) repeat(var(--n), var(--cs));grid-template-rows:var(--ch) repeat(var(--n), var(--cs));-webkit-user-select:none;user-select:none;touch-action:none;flex:none;display:grid}.ng-corner{border-right:2px solid var(--grid-5);border-bottom:2px solid var(--grid-5)}.ng-cclue,.ng-rclue{color:var(--clue);font-variant-numeric:tabular-nums;font-weight:700;font-size:var(--cf,14px);line-height:1.15;display:flex}.ng-cclue{border-bottom:2px solid var(--grid-5);border-right:1px solid var(--grid-line);flex-direction:column;justify-content:flex-end;align-items:center;padding-bottom:4px}.ng-rclue{justify-content:flex-end;align-items:center;gap:calc(var(--cs) * .2);border-right:2px solid var(--grid-5);border-bottom:1px solid var(--grid-line);padding-right:6px}.ng-cclue.b5r{border-right:2px solid var(--grid-5)}.ng-rclue.b5b{border-bottom:2px solid var(--grid-5)}.ng-cclue.done,.ng-rclue.done{color:var(--clue-done)}.ng-cclue.hl,.ng-rclue.hl{background:var(--hl)}.ng-cell{background:var(--cell);border-right:1px solid var(--grid-line);border-bottom:1px solid var(--grid-line);cursor:pointer;-webkit-tap-highlight-color:transparent;position:relative}.ng-cell.b5r{border-right:2px solid var(--grid-5)}.ng-cell.b5b{border-bottom:2px solid var(--grid-5)}.ng-cell.f:after{content:"";background:var(--fill);border-radius:2px;position:absolute;inset:2px}.ng-cell.x:before,.ng-cell.ex:before{content:"";background:linear-gradient(45deg, transparent calc(50% - 1px), var(--x) calc(50% - 1px), var(--x) calc(50% + 1px), transparent calc(50% + 1px)), linear-gradient(-45deg, transparent calc(50% - 1px), var(--x) calc(50% - 1px), var(--x) calc(50% + 1px), transparent calc(50% + 1px));position:absolute;inset:26%}.ng-cell.ex:before{--x:var(--err);inset:20%}.ng-cell.err{animation:.5s ng-err}@keyframes ng-err{30%{background:color-mix(in srgb, var(--err) 35%, var(--cell))}}.ng-cell.hint:after{animation:.8s ng-hint}@keyframes ng-hint{0%{background:var(--brand);transform:scale(.2)}}.ng-board.won .ng-cell{border-color:#0000}.ng-board.won .ng-cell.f:after{border-radius:0;transition:inset .5s;inset:0}.ng-board.won .ng-cell:before{display:none}.ng-toast{opacity:0;pointer-events:none;background:var(--text);color:var(--bg);z-index:50;border-radius:10px;padding:10px 16px;font-size:14px;transition:opacity .2s,transform .2s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px)}.ng-toast.show{opacity:1;transform:translate(-50%)}.ng-result{z-index:60;background:color-mix(in srgb, var(--bg) 60%, transparent);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.ng-result .panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);text-align:center;border-radius:16px;width:min(360px,100%);padding:24px 28px}.ng-result h2{margin:0 0 12px;font-size:28px}.ng-pic{grid-template-columns:repeat(var(--n), 1fr);aspect-ratio:1;width:120px;margin:0 auto 14px;display:grid}.ng-pic i.f{background:var(--fill)}.ng-result dl{text-align:left;grid-template-columns:auto auto;gap:4px 16px;margin:0 0 18px;font-size:15px;display:grid}.ng-result dt{color:var(--muted)}.ng-result dd{text-align:right;font-variant-numeric:tabular-nums;margin:0;font-weight:700}.ng-result [data-r-streak-row]{display:contents}.ng-result .row{justify-content:center;gap:8px;display:flex}.ng-result .countdown{color:var(--muted);font-variant-numeric:tabular-nums;margin:12px 0 0;font-size:14px}@media (width<=600px){.ng-bar .btn span{display:none}.ng-bar .btn{padding:0 10px}.ng-bar .tools{margin-left:0}}
