.goban-frame{
  display:inline-block;
  max-width:100%;
  padding:8px;
  background:#3d5a40;
  border-radius:12px;
  box-shadow:0 12px 32px rgba(0,0,0,.35);
}
.goban{
  position:relative;
  display:block;
  background:#c4a574;
  border-radius:4px;
  line-height:0;
  touch-action:manipulation;
  user-select:none;
  -webkit-user-select:none;
}
.goban.play,.goban.live-play{cursor:crosshair}
.goban-svg{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
}
.goban-grid line{
  stroke:#3a2410;
  stroke-width:1;
  stroke-linecap:square;
  vector-effect:non-scaling-stroke;
}
.goban-hoshi circle{fill:#3a2410}
.goban-stones .stone.b{stroke:#050505;stroke-width:.45}
.goban-stones .stone.w{stroke:#7a7a7a;stroke-width:.55}
.goban-stones .stone.try{stroke:#8BBFD0;stroke-width:2;stroke-dasharray:3 2;vector-effect:non-scaling-stroke}
.goban-stones .stone-hi.b{fill:rgba(255,255,255,.22);pointer-events:none}
.goban-stones .stone-hi.w{fill:rgba(255,255,255,.7);pointer-events:none}
.goban-hover{
  fill:rgba(139,191,208,.22);
  stroke:#8BBFD0;
  stroke-width:2;
  pointer-events:none;
  vector-effect:non-scaling-stroke;
}
.goban-marks,.mark-g,.goban-nums{pointer-events:none}
.goban-nums text{
  font-weight:800;pointer-events:none;
  font-family:ui-monospace,SFMono-Regular,Menlo,sans-serif;
  font-variant-numeric:tabular-nums;
  paint-order:stroke fill;
}
.goban-nums text.on-b{fill:#f5f5f5}
.goban-nums text.on-w{fill:#111}
.goban-nums text.on-b{stroke:#1a140c;stroke-width:.85}
.goban-nums text.on-w{stroke:#fff8ee;stroke-width:.85}
.goban-last{pointer-events:none}
.goban-last-tri.on-b{fill:#f5f5f5;stroke:#1a140c;stroke-width:.9}
.goban-last-tri.on-w{fill:#c62828;stroke:#fff8ee;stroke-width:.9}
.goban-mark-halo{
  pointer-events:none;fill:none;stroke:none;
}
.goban-mark.tri,.goban-mark.circle,.goban-mark.square{
  pointer-events:none;stroke:#fff4ea;stroke-width:1.15;stroke-linejoin:round;
}
.goban-mark.square{stroke-width:1.6}
.goban-mark.tri.on-b,.goban-mark.circle.on-b,.goban-mark.square.on-b,
.goban-mark.tri.on-w,.goban-mark.circle.on-w,.goban-mark.square.on-w,
.goban-mark.tri.on-empty,.goban-mark.circle.on-empty,.goban-mark.square.on-empty{
  stroke:#fff4ea;
}
.goban-mark.tri-hi,.goban-mark.circle-hi,.goban-mark.mcq-hi{
  pointer-events:none;stroke:none;
}
.goban-mark.cross-rim{
  pointer-events:none;stroke:#fff4ea;stroke-width:3.1;stroke-linecap:round;
}
.goban-mark.cross{
  pointer-events:none;stroke:#C41E3A;stroke-width:1.7;stroke-linecap:round;
}
.goban-mark.lab{
  font-weight:900;pointer-events:none;
  font-family:"Arial Black",ui-sans-serif,system-ui,sans-serif;
  fill:#C41E3A;stroke:#fff8ee;stroke-width:1.6;paint-order:stroke fill;
}
.goban-mark.lab.on-b,.goban-mark.lab.on-w,.goban-mark.lab.on-empty{
  fill:#C41E3A;stroke:#fff8ee;
}
.goban-mark.mcq-bg{
  pointer-events:none;stroke:#fff8ee;stroke-width:1.2;
}
.goban-mark.mcq-lab{
  font-weight:900;pointer-events:none;
  font-family:ui-sans-serif,system-ui,"Arial Black",sans-serif;
  fill:#ffffff;stroke:none;paint-order:normal;
}
.goban-mark.mcq-lab.on-b,.goban-mark.mcq-lab.on-w,.goban-mark.mcq-lab.on-empty{fill:#ffffff;stroke:none}
.goban-ink-stroke{stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.goban-coords text{
  fill:#2a1608;font-weight:700;pointer-events:none;
  font-family:ui-monospace,SFMono-Regular,Menlo,sans-serif;
  opacity:1;
}
.goban-own{pointer-events:none}
.goban-own-cell{pointer-events:none}
.goban-cands{pointer-events:none}
.goban-cand{
  fill:rgba(12,22,36,.82);stroke:#8BBFD0;stroke-width:1.6;
  pointer-events:none;
}
.goban-cand-lab{
  fill:#E6EDF5;font-weight:800;pointer-events:none;
  font-family:ui-sans-serif,system-ui,sans-serif;
}
.goban-free-dot{cursor:pointer}
.goban-free-dot.is-preview{opacity:.55}
.goban-free-ring{
  fill:none;stroke:#D4B896;stroke-width:2.2;
  pointer-events:none;
}
.goban-free-fill{
  fill:#1a6a82;stroke:#8BBFD0;stroke-width:1.4;
}
.goban-free-dot.is-preview .goban-free-fill{
  fill:rgba(26,106,130,.42);
}
.goban-free-count{
  fill:#E6EDF5;font-weight:800;pointer-events:none;
  font-family:ui-sans-serif,system-ui,sans-serif;
}
