.clear-float:after {
  display: block;
  content: "";
  clear: both;
}
.float-left {
  float: left;
}
.float-right {
  float: right;
}

.option-block {
  background: #fff;
  padding: 8px;
  margin: 12px 0;
  border-radius: 4px;
  border: 1px dashed #82bc00;
  box-shadow: 0px 0 6px 0 rgba(0,0,0,0.1);
}
.option-block.toggle {
  border: 1px dotted #f7a711;
}

.option-row {
 font-size: 14px;
 box-sizing: border-box;
 padding: 4px 0;
}

.option-title {
 font-weight: bold;
 color: #656565;
}

.option-info {
 font-size: 12px;
 color: #919191;
 margin-top: 6px;
 font-weight: normal;
}
.option-info.valid {
 color: #82bc00;
}
.option-info.toggle {
 color: #f7a711;
}

.option-button {
 width: 100%;
 padding: 0;
 line-height: 20px;
 background: #82bc00;
 color: #fff;
 transition: 0.3s;
 cursor: pointer;
 outline: none;
 border-radius: 4px;
 box-sizing: border-box;
 box-shadow: 0 1px 4px 0 rgba(0,0,0,0.3);
 border: none;
}
.option-button:hover {
 background: #82bc00;
 color: #fff;
 box-shadow: 0 3px 8px 0 rgba(0,0,0,0.4);
}

.option-checkbox {
 background: #fff;
 border: 1px dashed #f7a711;
 color: #f7a711;
 padding: 2px 4px;
 transition: 0.3s;
 box-sizing: border-box;
 cursor: pointer;
}
.option-checkbox.active {
 color: #fff;
 background: #f7a711;
 box-shadow: 0 1px 4px 0 rgba(0,0,0,0.3);
 border-radius: 4px;
}

.selection-box {
 position: relative;
}
.selection-box > select {
  text-align: left;
 width: 100%;
 height: 20px;
 padding: 0;
 line-height: 20px;
 background: transparent;
 border: none;
 border-bottom: 2px solid #656565;
 color: #656565;
 transition: 0.3s;
 cursor: pointer;
 outline: none;
 box-sizing: border-box;
}
.selection-box > select > option {
  background: white;
}
.selection-box > select:focus {
 border-bottom: 2px solid #82bc00;
 color: #82bc00;
 box-shadow: 0 2px 6px 0 rgba(0,0,0,0.3);
}
.selection-box > label {
 position: absolute;
 cursor: pointer;
 font-size: 12px;
 color: #fff;
 background: #656565;
 padding: 0 4px;
 right: 0;
 top: 6px;
 box-shadow: 0 1px 4px 0 rgba(0,0,0,0.3);
}

.input-box {
 position: relative;
}
.input-box > input[type=text] {
 width: 100%;
 background: transparent;
 border: none;
 color: #656565;
 border-bottom: 2px solid #656565;
 outline: none;
 box-sizing: border-box;
 transition: 0.3s;
}
.input-box > input[type=text]:focus {
 color: #82bc00;
 border-bottom: 2px solid #82bc00;
}
.input-box > label {
 cursor: pointer;
 position: absolute;
 right: 0;
 top: 5px;
 font-size: 12px;
 color: #fff;
 background: #656565;
 padding: 0 4px;
 box-shadow: 0 1px 4px 0 rgba(0,0,0,0.3);
}

.table-box > table {
  width: 100%;
  border-collapse: collapse;
}
.table-box > table > thead > tr {
  border-bottom: 1px solid #000;
  font-weight: bold;
}
.table-box > table > tbody > tr > td {
  margin-top: 8px;
}
.table-box .icon {
  padding: 0 2px;
  color: #fff;
  cursor: pointer;
  border: 1px solid #fff;
  border-radius: 3px;
  background: transparent;
  transition: 0.3s;
}
.table-box .icon:hover {
  color: #fff;
  box-shadow: 0 1px 4px 0 rgba(0,0,0,0.3);
}
.icon.icon-edit {
  border-color: #82bc00;
  color: #82bc00;
}
.icon.icon-edit:hover {
  background: #82bc00;
}
.icon.icon-delete {
  border-color: #f7a711;
  color: #f7a711;
}
.icon.icon-delete:hover {
  background: #f7a711;
}

.input-date {
  width: 100%;
  border: none;
  border-bottom: 1px solid ;
}

.input-date {
  width: 100%;
  background: transparent;
  border: none;
  color: #656565;
  border-bottom: 2px solid #656565;
  outline: none;
  box-sizing: border-box;
  transition: 0.3s;
 }
 .input-date:focus {
  color: #82bc00;
  border-bottom: 2px solid #82bc00;
 }