.puzzle-page{max-width:850px}.puzzle-rules{max-width:680px;line-height:1.7}.puzzle-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.puzzle-board-wrap{max-width:100%;overflow:auto;padding:3px}.puzzle-sudoku{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));width:min(100%,468px);border:2px solid #18394b;background:#fff}.puzzle-cell{border:1px solid #bccbd2;border-radius:0;background:#fff;color:#1261a0;min-width:0;padding:0;aspect-ratio:1;font-size:clamp(17px,4vw,25px);font-weight:600;touch-action:manipulation}.puzzle-cell:focus-visible{outline:3px solid #e88813;outline-offset:-3px;z-index:1}.puzzle-cell.given{background:#edf2f5;color:#18394b;font-weight:800}.puzzle-cell.selected{background:#c9e7ff;box-shadow:inset 0 0 0 2px #1261a0}.puzzle-cell.box-right{border-right:3px solid #18394b}.puzzle-cell.box-bottom{border-bottom:3px solid #18394b}.puzzle-nonogram{border-collapse:collapse;width:min(100%,420px);table-layout:fixed;color:#18394b;background:#fff}.puzzle-nonogram th{padding:5px;text-align:center;vertical-align:bottom;font-size:14px}.puzzle-nonogram th:first-child{width:82px;vertical-align:middle}.puzzle-nonogram td{padding:0;border:1px solid #708995}.puzzle-nonogram .puzzle-cell{display:block;width:100%;border:0}.puzzle-cell.filled{background:#18394b;color:white}.puzzle-toolbar .active{background:#1261a0;color:white}[data-puzzle-status]{min-height:1.6em;font-weight:600}
.puzzle-size-label{display:block;margin-bottom:6px;font-weight:600}.puzzle-size-select{max-width:180px}.puzzle-nonogram{width:min(100%,calc(110px + var(--nonogram-size,5)*42px));min-width:calc(110px + var(--nonogram-size,5)*28px)}.puzzle-nonogram .nonogram-clue-column{width:110px}.puzzle-nonogram th:first-child{width:auto}.puzzle-nonogram tbody th{white-space:nowrap;font-size:13px}.puzzle-nonogram thead th{line-height:1.5}.puzzle-nonogram .puzzle-cell{font-size:clamp(16px,3vw,23px)}
.puzzle-page:has(.nonogram-large){max-width:1280px}.nonogram-large{border-right:3px solid #18394b;border-bottom:3px solid #18394b;width:calc(160px + var(--nonogram-size)*30px);min-width:calc(160px + var(--nonogram-size)*30px)}.nonogram-large .nonogram-clue-column{width:160px}.nonogram-large .nonogram-block-left{border-left:3px solid #18394b}.nonogram-large .nonogram-block-top{border-top:3px solid #18394b}.nonogram-large tbody th{font-size:12px}.nonogram-large .puzzle-cell{font-size:17px}
.puzzle-nonogram .puzzle-cell{touch-action:none;user-select:none;-webkit-user-select:none}.puzzle-nonogram .puzzle-cell.filled{background:#000;color:#000}.puzzle-board-wrap{overscroll-behavior-x:contain}
