
.TwoDView * {
    vector-effect: non-scaling-stroke;
}

.TwoDView {
    display: flex;
    display: -webkit-flex;
    flex: 1 1 auto;
    -webkit-flex: 1 1 auto;

    align-items: stretch;
}

.TwoDView {
    border: solid gray 1px;
    background: #000;
}

.TwoDView > svg {
    flex: 1 0 auto;
    -webkit-flex: 1;
}

.TwoDView .background {
    opacity: 0.4;
}

.TwoDView .grid * {
    vector-effect: non-scaling-stroke;
}

.TwoDView .mmGrid {
    stroke: #FF7F2A;
    stroke-dasharray: 5, 5;
    stroke-width: 0.5;
}

.TwoDView .halfCmGrid {
    stroke: #FF7F2A;
    stroke-width: 0.5;
    stroke-dasharray: none;
}

.TwoDView .cmGrid {
    stroke: #FF7F2A;
    stroke-dasharray: 5, 2;
    stroke-width: 2;
    font-size: 2px;
}

.TwoDView .halfDmGrid {
    stroke: #FF7F2A;
    stroke-width: 2;
    font-size: 7px;
}

.TwoDView .dmGrid {
    stroke: #FF7F2A;
    stroke-width: 4;
    font-size: 10px;
}

.TwoDView .gridText {
    transform: scaleY(-1);
    -webkit-transform: scaleY(-1);
    -moz-transform: scaleY(-1);
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    text-anchor: middle;
    cursor: default;
    stroke: none;
    fill: rgb(128, 128, 128);
}

#computingFill * {
    opacity: 0.5;
}

#computingFill rect {
    stroke: none;
    fill: yellow;
}

#computingFill line {
    stroke: black;
    stroke-width: 1;
    vector-effect: non-scaling-stroke;
}

.undercutPolygon {
    fill: red;
}

.computing {
    stroke: red;
}

.lol {
    stroke: red;
}

.outline {
    stroke-width: 2px;
}

:not(.computing).outline {
    fill: none;
    stroke: yellow;
    vector-effect: non-scaling-stroke;
}

.TwoDView .outline.computing {
    stroke: gray;
}

.TwoDView .pocket {
    fill: none;
    stroke: blue;
}

.TwoDView .spiralPocketOutline {
    fill-rule: evenodd;
    fill: rgba(100, 100, 255, 0.2);
    stroke: none;
}

.TwoDView .outline.seenFromFar {
    fill-rule: evenodd;
    fill: blue;
    stroke: gray;
}

.TwoDView .undercut {
    fill: red;
    stroke: none;
}

.toolpath {
    stroke-width: 1.5;
    fill: none;
}

.rapidMove {
    stroke: #FF0000;
}

.normalMove {
    stroke: white;
}