.xw{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;max-width:560px;margin:0 auto}.xw-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.xw-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px}.xw-meta{display:flex;gap:12px;color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:.95rem;white-space:nowrap}.xw-meta b{color:var(--ink);font-size:1.05rem}.xw-tools{display:flex;gap:6px;align-items:center}.xw-tools .suvi-btn{min-height:40px;padding:4px 12px;font-size:.92rem}.xw-tools .xw-settings{padding:4px 8px}.xw-main{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.xw-board{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.xw-grid{--n: 11;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));width:min(100%,520px);margin:0 auto;aspect-ratio:1;background:var(--ink);border:2px solid var(--ink);border-radius:8px;overflow:hidden;touch-action:manipulation;user-select:none;-webkit-user-select:none}.xw-cell{position:relative;background:var(--cell);min-width:0;aspect-ratio:1;display:grid;place-items:center;box-shadow:inset 0 0 0 .5px color-mix(in srgb,var(--ink) 55%,transparent);cursor:pointer;font-family:var(--font-display);font-weight:700;font-size:calc(min(100vw - 36px,520px) / var(--n) * .58);line-height:1;color:var(--ink);transition:background .08s}.xw-cell.is-black{background:var(--ink);cursor:default;box-shadow:none}.xw-cell .n{position:absolute;left:2px;top:1px;font-family:var(--font-body);font-weight:600;font-size:calc(min(100vw - 36px,520px) / var(--n) * .27);line-height:1;color:var(--ink-2)}.xw-cell.is-word{background:var(--cell-selected)}.xw-cell.is-sel{background:var(--sun)}.xw-cell.is-wrong{color:var(--coral)}.xw-cell.is-wrong:after{content:"";position:absolute;inset:0;background:linear-gradient(to top left,transparent calc(50% - 1px),var(--coral),transparent calc(50% + 1px));opacity:.5;pointer-events:none}.xw-cell.is-revealed .l{color:var(--ink-2)}.xw-cell.is-checked-ok .l{color:#2e9e6b}.xw-cell .l{animation:xw-pop calc(.12s * var(--motion)) ease-out}@keyframes xw-pop{0%{transform:scale(.7);opacity:.4}to{transform:scale(1);opacity:1}}.xw-done .xw-cell{background:var(--cell)}.xw-done .xw-cell.is-black{background:var(--ink)}.xw-done .xw-cell .l{color:#2e9e6b}.xw-clue{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;min-height:56px;border-radius:12px;background:var(--cell-selected);border:1px solid var(--line)}.xw-clue button{height:100%;min-height:56px;border:0;background:transparent;font-size:1.4rem;color:var(--ink-2);cursor:pointer;border-radius:12px}.xw-clue button:active{background:#0000000f}.xw-clue-text{padding:6px 4px;font-size:1.05rem;line-height:1.3;text-align:center}.xw-clue-text b{font-family:var(--font-display);margin-right:6px;color:var(--ink-2);white-space:nowrap}.xw-clue-text .len,.xw-lists .len{color:var(--ink-2);font-size:.9em;white-space:nowrap}.xw-msg{min-height:1.3em;text-align:center;color:var(--ink-2);font-size:.95rem}.xw-loading{text-align:center;padding:40px 0}.xw-lists{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;font-size:.98rem}.xw-lists h3{margin:0 0 6px;font-family:var(--font-display);font-size:.95rem;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}.xw-lists ol{list-style:none;margin:0;padding:0}.xw-lists li{padding:6px 8px;border-radius:8px;cursor:pointer;line-height:1.35}.xw-lists li b{font-family:var(--font-display);display:inline-block;min-width:1.8em;color:var(--ink-2)}.xw-lists li.is-on{background:var(--cell-selected)}.xw-lists li.is-done{color:var(--ink-2);text-decoration:line-through;text-decoration-color:var(--line)}@media(max-width:520px){.xw-lists{grid-template-columns:minmax(0,1fr)}}@media(pointer:fine)and (min-width:700px){.xw .suvi-kb{display:none}}@media(min-width:960px){.suvi-main:has(.xw){max-width:1040px}.xw{max-width:1008px}.xw-lists{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.xw-levels,.xw-row{max-width:520px;width:100%}.xw-main{grid-template-columns:520px minmax(0,1fr);align-items:start}.xw-lists{max-height:640px;overflow:auto;padding-right:4px}.xw-cell{font-size:calc(520px / var(--n) * .58)}.xw-cell .n{font-size:calc(520px / var(--n) * .27)}}
