// Mixins and variables
@mixin transition($in) {
	transition:$in;
	-webkit-transition:$in;
	-moz-transition:$in;
	-o-transition:$in;
	-ms-transition:$in;
}

@mixin transform($in) {
	transform:$in;
	-webkit-transform:$in;
	-moz-transform:$in;
	-o-transform:$in;
	-ms-transform:$in;
}

$plusminus-height: 2.5px;
$plusminus-anim-length: .25s;

// All hidden elements
.hidden {
    visibility: hidden;
    opacity: 0;
    height: 10px;
    padding: 0px !important;
}

// Plusminus buttons
// Adapted from https://codepen.io/FluidOfInsanity/pen/EyQGgw

input[type="checkbox"] {
    display: none;
}

.plusminus {
    display: block;
    position: absolute;
    top: 9px;
    right: -30px;
    padding: .3em;

    width: 20px;
    height: 20px;
    background: #d4d4d4;
    border-radius: 25px;
    @include transition(0.25s);
}

div.cell:hover .plusminus {
    background: rgb(122, 130, 136);
    @include transition(0.25s);
}

.plusminus span {
    display: block;
    position: absolute;
    border-radius: 3px;
    background: #f2f2f2;
    @include transition(all $plusminus-anim-length ease);

    margin: 0% 15%;
    height: $plusminus-height;
    width: 70%;

    /*- half the width*/
    left: 0px;
    bottom:0px;
    right:0px;
    top: calc(50% - #{$plusminus-height} / 2);
}

input:checked ~ .plusminus span.pm_v {
    @include transform(rotate(-90deg));
}
