.zengo-board{display:grid;padding:.5rem;box-sizing:border-box;position:relative;width:clamp(280px,85vw,380px);height:clamp(280px,85vw,380px);max-width:100%;overflow:hidden;background-image:linear-gradient(90deg,rgba(0,0,0,.2) 1px,transparent 0),linear-gradient(180deg,rgba(0,0,0,.2) 1px,transparent 0),url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAMAAAAp4XiDAAAAUVBMVEWFhYWDg4N3d3dtbW17e3t1dXWBgYGHh4d5eXlzc3OLi4ubm5uVlZWPj4+NjY19fX2JiYl/f39ra2uRkZGZmZlpaWmXl5dvb29xcXGTk5NnZ2c4zIgKAAAA20lEQVR4nO3VbS+CQBCF4QFXhS5InQIW+P//1DYGEmOi7obEK8/HJs7J7CSzvROSyeR4GKQE6YlSKnyGvghp3f4MfgspfaQkJDEa8vzJMZC7kMskJJNQJqFMQpmEMgllEsoklEkok1AmoUxCmYQyCWXiZ9e2g1vNOc0u4GQYWs7po+CxLtSSs6qBYrseGv4JGi5pYRCcUsbYMOTEQ0nLT08GIetEXRvqT7RweTEcHaPi3HB0aSRqTtQ1sRhfMfVDMv4W11m7w+hMOZMQmGvvmxqjwawTzGQyieQNVXoKDAXgJ7MAAAAASUVORK5CYII=");background-color:#e8c396;background-blend-mode:multiply;box-shadow:0 20px 25px -5px rgba(0,0,0,.4),0 10px 10px -5px rgba(0,0,0,.3),inset 0 0 40px rgba(0,0,0,.1);border-radius:6px;border:12px solid #ba8c5e;contain:content}.board-intersection{position:relative;cursor:default;transition:all .2s ease;contain:layout style}.board-intersection:after,.board-intersection:before{content:"";position:absolute;background-color:rgba(26,28,29,.75);z-index:2}.board-intersection:before{height:2px;width:100%;top:50%;left:0}.board-intersection:after{width:2px;height:100%;top:0;left:50%}.board-intersection.is-first-row:before{top:50%;width:50%;left:50%}.board-intersection.is-last-row:before{top:50%;width:50%;right:50%}.board-intersection.is-first-col:after{left:50%;height:50%;top:50%}.board-intersection.is-last-col:after{left:50%;height:50%;bottom:50%}.star-point{width:6px;height:6px;background:radial-gradient(circle at center,#1a1c1d,#000);z-index:2;box-shadow:inset 0 1px 2px rgba(0,0,0,.8),0 1px 1px hsla(0,0%,100%,.15);opacity:.85}.star-point,.stone{position:absolute;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.stone{--stone-delay:0ms;width:78%;height:78%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:"Noto Serif KR",Georgia,serif;font-weight:700;font-size:1em;z-index:3;box-shadow:inset 0 -6px 6px rgba(0,0,0,.3),inset 0 6px 6px hsla(0,0%,100%,.3),2px 4px 6px rgba(0,0,0,.4);transition:all .3s cubic-bezier(.175,.885,.32,1.275);overflow:hidden;overflow-wrap:break-word;word-break:break-word;padding:2px;contain:paint layout;opacity:1;transition:opacity .5s ease-out,transform .5s ease-out}[data-board-size="7"] .stone{width:72%;height:72%}.stone.animate-hide,.stone.animate-new,.stone.correct,.stone.incorrect{will-change:transform,opacity}.stone.black{background:radial-gradient(circle at 35% 35%,#5a5c5e 0,#1a1c1d 40%,#050505 100%);color:hsla(0,0%,100%,.95);text-shadow:0 1px 2px rgba(0,0,0,.9);box-shadow:inset 0 -3px 5px hsla(0,0%,100%,.1),1px 2px 4px rgba(0,0,0,.6),3px 6px 10px rgba(0,0,0,.3)}.stone.white{background:radial-gradient(circle at 30% 30%,#fff 0,#fdfbf7 20%,#e0ddd5 60%,#c5c1b9 100%);color:#1a1c1d;text-shadow:0 1px 1px hsla(0,0%,100%,.5);box-shadow:inset 0 -2px 4px rgba(0,0,0,.05),inset 0 4px 6px #fff,1px 2px 4px rgba(0,0,0,.3),3px 6px 12px rgba(0,0,0,.15)}.stone.memory-phase{animation:glow-pulse 2.4s infinite;box-shadow:inset 0 -4px 5px rgba(0,0,0,.2),inset 0 4px 5px hsla(0,0%,100%,.2),0 0 12px 4px rgba(26,28,29,.12);will-change:box-shadow}.stone.animate-new.memory-phase{animation:placeStoneReal .35s cubic-bezier(.2,.8,.2,1) both,glow-pulse 2.4s infinite;animation-delay:var(--stone-delay,0ms),calc(var(--stone-delay, 0ms) + .35s);will-change:transform,box-shadow,opacity}@keyframes glow-pulse{0%{box-shadow:0 0 8px 3px rgba(26,28,29,.1)}50%{box-shadow:0 0 12px 5px rgba(26,28,29,.16)}to{box-shadow:0 0 8px 3px rgba(26,28,29,.1)}}.board-intersection.placeable{cursor:pointer}.board-intersection.placeable:hover:after,.board-intersection.placeable:hover:before{background-color:rgba(26,28,29,.35)}.board-intersection.placeable:hover{background-color:rgba(26,28,29,.03);border-radius:50%;will-change:background-color}.stone-appearing,.stone.animate-new{animation:placeStoneReal .35s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--stone-delay,0ms);will-change:transform,box-shadow,opacity;transform-origin:center center}@keyframes placeStoneReal{0%{transform:translate(-50%,-50%) scale(1.1) translateY(-10px);opacity:0;box-shadow:0 12px 15px rgba(0,0,0,.2)}50%{opacity:1}65%{transform:translate(-50%,-50%) scale(1.02,.95) translateY(0);box-shadow:0 3px 6px rgba(0,0,0,.3)}85%{transform:translate(-50%,-50%) scale(.99,1.01) translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.25)}to{transform:translate(-50%,-50%) scale(1) translateY(0);opacity:1}}@keyframes appear{0%{transform:translate(-50%,-50%) scale(.5);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.word-hiding{opacity:0;transform:scale(.9);transition:opacity .8s ease-out,transform .8s ease-out;will-change:transform,opacity}.stone.animate-hide{animation:stoneContemplativeHide .5s cubic-bezier(.33,1,.68,1) both;animation-delay:var(--stone-delay,0ms);transition:none;will-change:opacity,filter;pointer-events:none}@keyframes stoneContemplativeHide{0%{opacity:1;filter:blur(0)}40%{opacity:.7;filter:blur(1px)}to{opacity:0;filter:blur(4px)}}@keyframes fadeOutText{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@media (max-width:768px){.word-hiding{animation:none!important;opacity:0;transform:scale(.9);transition:opacity .6s ease-out,transform .6s ease-out}}.stone.correct{box-shadow:inset 0 -4px 5px rgba(0,0,0,.2),inset 0 4px 5px hsla(0,0%,100%,.2),0 0 10px 4px rgba(166,74,74,.35);animation:correctPulse .8s ease-in-out;will-change:transform,box-shadow}.stone.incorrect{box-shadow:inset 0 -4px 5px rgba(0,0,0,.2),inset 0 4px 5px hsla(0,0%,100%,.2),0 0 10px 3px rgba(26,28,29,.18);animation:shake .6s cubic-bezier(.36,.07,.19,.97) both;will-change:transform}@keyframes correctPulse{0%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.15);box-shadow:inset 0 -4px 5px rgba(0,0,0,.2),inset 0 4px 5px hsla(0,0%,100%,.2),0 0 16px 6px rgba(166,74,74,.5)}to{transform:translate(-50%,-50%) scale(1)}}@keyframes shake{0%,to{transform:translate(-50%,-50%)}10%,30%,50%,70%,90%{transform:translate(-52%,-50%)}20%,40%,60%,80%{transform:translate(-48%,-50%)}}.word-order-badge{position:absolute;top:-5px;right:-5px;width:20px;height:20px;background-color:#a64a4a;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8em;font-weight:700;color:#fdfbf7;box-shadow:0 2px 4px rgba(26,28,29,.2);z-index:4}@media (max-width:768px){.zengo-board{width:min(90vw,400px);height:min(90vw,400px);margin:0 auto;border-width:8px}.board-intersection{min-height:44px;min-width:44px;touch-action:manipulation}.stone{font-size:clamp(.7rem,3vw,1rem);padding:2px;min-height:40px;min-width:40px;box-shadow:inset 0 -4px 4px rgba(0,0,0,.2),inset 0 4px 4px hsla(0,0%,100%,.2),1px 2px 4px rgba(0,0,0,.3)}[data-board-size="5"] .stone{font-size:clamp(.6rem,2.5vw,.9rem);padding:1px}[data-board-size="7"] .stone{font-size:clamp(.5rem,2vw,.8rem);padding:0;width:60%;height:60%}}@media (min-width:601px) and (max-width:768px){[data-board-size="5"] .zengo-board{font-size:.9em}[data-board-size="7"] .zengo-board{font-size:.85em}}@media (max-width:480px){.zengo-board{width:min(95vw,350px);height:min(95vw,350px);border-width:6px}}@media (max-width:375px){.zengo-board{width:min(98vw,320px);height:min(98vw,320px);border-width:4px}}@media (prefers-reduced-motion:reduce){.stone,.stone.animate-hide,.stone.animate-new,.stone.correct,.stone.incorrect,.stone.memory-phase{transition:none;animation:none;will-change:auto}.stone.animate-hide{animation:stoneContemplativeHideReduced .8s ease-out forwards;opacity:1;filter:blur(0)}.stone.correct{box-shadow:0 0 8px 2px rgba(166,74,74,.3)}.stone.incorrect{box-shadow:0 0 8px 2px rgba(26,28,29,.18)}}@keyframes stoneContemplativeHideReduced{0%{opacity:1;filter:blur(0)}to{opacity:0;filter:blur(1px)}}.zengo-board{background-image:none;background-color:#f8f5ec;border:0;border-radius:2px;box-shadow:0 1px 0 rgba(26,28,29,.06),0 26px 44px -32px rgba(26,28,29,.55)}.board-intersection:after,.board-intersection:before{background-color:rgba(26,28,29,.72)}.star-point{background:#1a1c1d;box-shadow:none;opacity:.8}.stone.black{background:radial-gradient(circle at 38% 32%,#3a3c3d 0,#1d1f20 45%,#0d0e0f 100%);color:#f2eee4;text-shadow:none;box-shadow:0 0 10px 2px rgba(26,28,29,.08)}.stone.white{background:radial-gradient(circle,hsla(40,7%,40%,.38) 0,hsla(40,7%,40%,0) 70%);box-shadow:none;color:transparent}.stone.white.incorrect{animation:inkMiss .6s ease-out both}@keyframes inkMiss{0%{opacity:.9;transform:translate(-50%,-50%) scale(.4)}to{opacity:0;transform:translate(-50%,-50%) scale(1.15)}}.stone.memory-phase{animation:none;box-shadow:0 0 10px 2px rgba(26,28,29,.08)}.stone.animate-new.memory-phase{animation:placeStoneReal .35s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--stone-delay,0ms)}.stone.correct{box-shadow:0 0 10px 2px rgba(26,28,29,.08);animation:none}.zengo-board-underlay{z-index:0}.zengo-board-overlay,.zengo-board-underlay{position:absolute;inset:.5rem;width:calc(100% - 1rem);height:calc(100% - 1rem);pointer-events:none;overflow:visible}.zengo-board-overlay{z-index:6}.zengo-stroke{fill:none;stroke:#1a1c1d;stroke-opacity:.8;stroke-width:.09;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 1;stroke-dashoffset:1;animation:zgDraw .7s cubic-bezier(.45,0,.55,1) forwards}.zengo-seal-in{fill:#a64a4a;transform-box:fill-box;transform-origin:center;animation:zgSealIn .34s cubic-bezier(.2,.9,.3,1.2) .9s both}.zengo-hint-ring{fill:none;stroke:#a64a4a;stroke-width:.035;stroke-dasharray:.12 .1;animation:zgHint 1.4s ease-in-out infinite}.zengo-reveal-ring{fill:none;stroke:#a64a4a;stroke-width:.045;transform-box:fill-box;transform-origin:center;animation:zgSealIn .3s ease-out both}@keyframes zgDraw{to{stroke-dashoffset:0}}@keyframes zgSealIn{0%{opacity:0;transform:scale(1.4)}to{opacity:1;transform:scale(1)}}@keyframes zgHint{50%{opacity:.35}}.zengo-board--drawing .board-intersection:before{transform-origin:left;animation:zgLineX .5s cubic-bezier(.45,0,.55,1) both}.zengo-board--drawing .board-intersection:after{transform-origin:top;animation:zgLineY .5s cubic-bezier(.45,0,.55,1) .15s both}@keyframes zgLineX{0%{transform:scaleX(0)}}@keyframes zgLineY{0%{transform:scaleY(0)}}@media (prefers-reduced-motion:reduce){.zengo-reveal-ring,.zengo-stroke{animation:none;stroke-dashoffset:0}.zengo-board--drawing .board-intersection:after,.zengo-board--drawing .board-intersection:before,.zengo-hint-ring,.zengo-seal-in{animation:none}}body[data-zengo-play] .mobile-global-nav{display:none}.stone{font-weight:600;letter-spacing:-.02em;line-height:1.15;padding:0;overflow-wrap:normal;word-break:keep-all}.stone .stone-line{white-space:nowrap;text-align:center}.stone.black{color:#ece6d8}