*{box-sizing:border-box}body{margin:0;background:#e8e5db;color:#273c39;font:16px/1.5 system-ui}main{max-width:1080px;margin:auto;padding:25px}h1{font:700 48px Georgia;margin:5px 0}h2{font:700 25px Georgia;margin:0 0 12px}.eyebrow{font-size:11px;letter-spacing:.2em;color:#8b4d2b}header{border-bottom:1px solid #a6aea5;margin-bottom:20px}.intro{background:#f9f6eb;padding:20px;border-left:5px solid #a95a34}.intro p{margin:6px 0}.layout{display:grid;grid-template-columns:1.35fr 1fr;gap:28px;margin-top:22px}.score{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.score div{display:grid}.score b{font:700 30px Georgia}.score div:first-child{color:#9a4521}.score div:last-child{color:#17645f}.score strong{font-size:13px}#board{display:grid;grid-template-columns:repeat(var(--n),1fr);gap:7px;background:#c8c8b8;padding:12px;border:1px solid #9caa9c;border-radius:18px;box-shadow:0 10px 25px #22372f18}.cell{aspect-ratio:1;min-width:0;min-height:0;padding:7px;border:1px solid #a9b5a6;background:#f8f4e9;border-radius:10px;position:relative;cursor:pointer}.cell.hole{background:#b9bcae;box-shadow:inset 0 2px 5px #53644b33;border-color:#b2b6a5;cursor:default}.piece{display:block;width:100%;height:100%;border-radius:50%;background-image:url('stones.webp');background-size:200% 200%;background-position:0 100%;box-shadow:0 2px 3px #0002}.teal .piece{background-position:100% 100%}.cell small{position:absolute;bottom:1px;right:4px;font-size:10px;color:#47594d}.cell.selected{outline:3px solid #a24b28;outline-offset:-3px}.cell.legal{outline:3px dotted #1b6c64;outline-offset:-3px}.cell.target{outline:4px solid #1b6c64;outline-offset:-4px}.cell:focus-visible{outline:4px solid #8051a8}.panel{padding:20px;background:#faf7ef;border:1px solid #b8bdac;border-radius:14px;margin-bottom:16px}button,select{font:600 14px system-ui;min-height:44px;padding:10px 12px;border:1px solid #879c8d;border-radius:8px;background:#fffaf0;color:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:default}.primary{width:100%;background:#a7502e;color:white;border-color:#914024}.buttons{display:flex;gap:8px;margin-top:10px}.buttons button{flex:1}#preview{font-weight:700;color:#914024;min-height:48px}label{display:grid;gap:6px;margin:12px 0}.legend,.muted{font-size:12px;color:#687367}details{padding:18px;background:#f7f5eb;border-radius:12px;margin:20px 0}summary{cursor:pointer;font-weight:700}#log{font-size:14px;padding-left:22px}footer{font-size:12px;padding:20px 0;border-top:1px solid #aeb6a5}@media(max-width:700px){main{padding:14px 14px 80px}h1{font-size:37px}.layout{display:block}#board{gap:5px;padding:8px}.cell{padding:4px;border-radius:7px}.cell small{font-size:8px;right:2px}#commit{position:fixed;bottom:10px;left:14px;width:calc(100% - 28px);z-index:5;box-shadow:0 4px 20px #0004}.panel{padding:16px}.intro{padding:16px}}
