.stage .fr-svg { cursor: crosshair; }
@media (hover: hover) and (pointer: fine) { .stage .fr-svg { cursor: none; } }
.stage.is-done .fr-svg { cursor: default; }
.stage .fr-strand { fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; transition: stroke .6s; }
.stage .fr-sh { fill: none; stroke: rgba(42, 28, 15, .2); stroke-width: 11; stroke-linecap: round; stroke-linejoin: round; }
.stage .fr-bind { fill: none; stroke-width: 9; stroke-linecap: round; }
.stage .fr-bind-hi { fill: none; stroke: #fff8ea; stroke-opacity: .28; stroke-width: 1.4; stroke-linecap: round; }
.stage .fr-comb { opacity: 0; transition: opacity .15s; }
.stage .fr-comb.is-on { opacity: .92; }
.stage .fr-guide { stroke: #d4a640; stroke-width: 1; opacity: .95; }
.stage .fr-guide.is-anim { stroke-dasharray: 150; stroke-dashoffset: 150; animation: fr-draw .7s ease-out forwards; }
.stage .fr-dot.is-good { stroke: #f0d27a; stroke-width: 1; }
@keyframes fr-draw { to { stroke-dashoffset: 0; } }
