.puzzle-panel{padding:28px;border:1px solid #a8bedf;border-radius:18px;background:#edf3ff;margin:28px 0}.article .puzzle-panel h2{margin-top:0}.puzzle-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:416px;margin:20px 0}.puzzle-cell{position:relative;aspect-ratio:1;min-height:56px;min-width:0;border:1px solid #809cc7;border-radius:10px;background:white;color:#17305b;padding:8px;display:flex;align-items:center;justify-content:center;opacity:1}.puzzle-cell:hover{background:#e2edff}.puzzle-coordinate{position:absolute;left:7px;top:5px;font-size:11px;line-height:1}.puzzle-symbol{font-size:32px;line-height:1;font-weight:600}.puzzle-wall{background:repeating-linear-gradient(45deg,#e1e7f0,#e1e7f0 6px,#f0f3f8 6px,#f0f3f8 12px);border-style:dashed;color:#4a5d77}.puzzle-visited{background:#d2e1ff;border:2px solid #2455b4}.puzzle-current{background:#2455b4;color:#fff}.puzzle-current:hover{background:#1c4595}.puzzle-here{position:absolute;bottom:5px;font-size:10px;line-height:1}.puzzle-controls{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.puzzle-controls .button{padding:12px 15px;min-height:46px;gap:8px}.puzzle-legend{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:14px!important;line-height:1.6}.puzzle-status{min-height:3.3em;font-size:16px!important;margin:16px 0;padding:14px;border-radius:8px;background:white;border:1px solid #c8d6eb}.puzzle-solution summary{cursor:pointer;padding:14px 0;font-size:16px;min-height:46px}.puzzle-solution p{overflow-wrap:anywhere;font-size:16px!important}.puzzle-paper{display:grid;grid-template-columns:repeat(4,1fr);width:min(100%,300px);border:1px solid #809cc7;border-radius:8px;overflow:hidden}.puzzle-paper span{border:1px solid #c8d6eb;padding:8px;font-size:14px;text-align:center;line-height:1.8}.puzzle-small{font-size:14px!important;color:#536580}.puzzle-inline-links{display:flex;flex-wrap:wrap;gap:12px 24px}.puzzle-inline-links a{display:inline-block;padding:10px 0}.puzzle-art{display:block;max-width:100%;height:auto;border-radius:18px;margin-bottom:24px}.puzzle-instructions{padding-left:24px}.article .puzzle-instructions li{font-size:16px}@media(max-width:560px){.puzzle-panel{padding:18px}.puzzle-board{gap:6px}.puzzle-symbol{font-size:27px}.puzzle-controls .button{font-size:14px}.puzzle-cell{border-radius:7px}.puzzle-status{min-height:5em}}@media(prefers-reduced-motion:reduce){.puzzle-panel *{transition:none;animation:none}}
