/*  GRID OF TWELVE
 * ========================================================================== */

.span_12 {
  width: 100%;
}

.span_11 {
  width: 91.46%;
}

.span_10 {
  width: 83%;
}

.span_9 {
  width: 74.54%;
}

.span_8 {
  width: 66.08%;
}

.span_7 {
  width: 57.62%;
}

.span_6 {
  width: 49.16%;
}

.span_5 {
  width: 40.7%;
}

.span_4 {
  width: 32.24%;
}

.span_3 {
  width: 23.78%;
}

.span_2 {
  width: 15.32%;
}

.span_1 {
  width: 6.86%;
}

/*  SECTIONS
 * ========================================================================== */

.section {
  padding: 0px;
  margin: 0px;
}

/*  GRID COLUMN SETUP
 * ========================================================================== */

.col {
  display: block;
  margin: 1% 0 1% 1.6%;
}

.col:first-child {
  margin-left: 0;
} /* all browsers except IE6 and lower */

/*
 * UI Component
 */

.ui-input-slider {
  height: 20px;
  font-family: "Segoe UI", Arial, Helvetica, sans-serif;
  -moz-user-select: none;
  user-select: none;
  display: flex;
}

.ui-input-slider * {
  height: 100%;
  line-height: 100%;
}

/* Input Slider */

.ui-input-slider > input {
  margin: 0;
  padding: 0;
  width: 50px;
  text-align: center;

  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.ui-input-slider-info {
  width: 90px;
  padding: 0px 10px 0px 0px;
  text-align: right;
  text-transform: lowercase;
}

.ui-input-slider-left,
.ui-input-slider-right {
  width: 16px;
  cursor: pointer;
  background: url("arrows.png") center left no-repeat;
}

.ui-input-slider-right {
  background: url("arrows.png") center right no-repeat;
}

.ui-input-slider-name {
  width: 90px;
  padding: 0 10px 0 0;
  text-align: right;
  text-transform: lowercase;
}

.ui-input-slider-btn-set {
  width: 25px;
  background-color: #2c9fc9;
  border-radius: 5px;
  color: #fff;
  font-weight: bold;
  line-height: 14px;
  text-align: center;
}

.ui-input-slider-btn-set:hover {
  background-color: #379b4a;
  cursor: pointer;
}

/*************************************************************************************/
/*************************************************************************************/

/*
 * UI DropDown
 */

/* Dropdown */

.ui-dropdown {
  height: 2em;
  width: 120px;
  font-family: "Segoe UI", Arial, Helvetica, sans-serif;
  font-size: 12px;

  background-image: url("drop_arrow_icon.png");
  background-position: right center;
  background-repeat: no-repeat;
  background-color: #359740;

  position: relative;

  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;

  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.ui-dropdown:hover {
  cursor: pointer;
  background-color: #208b20;
}

/* Dropdown Select Button */

.ui-dropdown-select {
  height: inherit;
  padding: 0 0.75em;
  color: #fff;
  line-height: 2em;
}

/* Dropdown List */

.ui-dropdown-list {
  width: 100%;
  max-height: 150px;
  margin: 0;
  padding: 0 0.3em;

  border: 3px solid #208b20;
  background-color: #eef1f5;
  color: #000;

  position: absolute;
  top: 2em;
  left: 0;
  z-index: 100;

  overflow: hidden;
  transition: all 0.3s;

  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.ui-dropdown-list:hover {
  overflow: auto;
}

.ui-dropdown-list[data-hidden="true"] {
  height: 0 !important;
  opacity: 0;
  visibility: hidden;
}

.ui-dropdown[data-position="left"] .ui-dropdown-list {
  left: -100%;
  top: 0;
}

.ui-dropdown[data-position="right"] .ui-dropdown-list {
  left: 100%;
  top: 0;
}

.ui-dropdown-list > div {
  width: 100%;
  height: 1.6em;
  margin: 0.3em 0;
  padding: 0.3em;
  line-height: 1em;

  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.ui-dropdown-list > div:hover {
  background: #3490d2;
  color: #fff;
  border-radius: 2px;
  cursor: pointer;
}

/*************************************************************************************/
/*************************************************************************************/

/*
 * UI Button
 */

/* Checkbox */

.ui-checkbox {
  text-align: center;
  font-size: 16px;
  font-family: "Segoe UI", Arial, Helvetica, sans-serif;
  line-height: 1.5em;
  color: #fff;

  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.ui-checkbox > input {
  display: none;
}

.ui-checkbox > label {
  font-size: 12px;
  padding: 0.333em 1.666em 0.5em;
  height: 1em;
  line-height: 1em;

  background-color: #888;
  background-image: url("disabled.png");
  background-position: center center;
  background-repeat: no-repeat;

  color: #fff;
  border-radius: 2px;
  font-weight: bold;
}

.ui-checkbox .text {
  padding-left: 34px;
  background-position: center left 10px;
}

.ui-checkbox .left {
  padding-right: 34px;
  padding-left: 1.666em;
  background-position: center right 10px;
}

.ui-checkbox > label:hover {
  cursor: pointer;
}

.ui-checkbox > input:checked + label {
  background-image: url("checked.png");
  background-color: #379b4a;
}

/*************************************************************************************/
/*************************************************************************************/

/*
 * BORDER IMAGE GENERATOR TOOL
 */

body {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 20px 0;

  font-family: "Segoe UI", Arial, Helvetica, sans-serif;

  /*background: url("grain.png");*/
  border: 1px solid #eee;

  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;

  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

body[data-move="X"] {
  cursor: w-resize !important;
}

body[data-move="Y"] {
  cursor: s-resize !important;
}

#container {
  width: 100%;

  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

[data-draggable="true"]:hover {
  cursor: move;
}

[data-draggable="true"]:hover > * {
  cursor: default;
}

/******************************************************************************/
/******************************************************************************/

/*
 * Border Image Picker
 */

#gallery {
  box-shadow: 0 0 3px 0 #bababa;
}

#image-gallery {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  transition: margin 0.4s;
}

#image-gallery .image {
  height: 80px;
  margin: 10px;
  opacity: 0.5;
  background-color: #fff;
  box-shadow: 0px 0px 3px 1px #bababa;
}

#image-gallery .image[selected="true"] {
  box-shadow: 0px 0px 3px 1px #3bba52;
  opacity: 1;
}

#image-gallery .image:hover {
  cursor: pointer;
  box-shadow: 0px 0px 3px 1px #30ace5;
  opacity: 1;
}

#image-gallery[data-collapsed="true"] {
  margin-top: -100px;
}

/* Load Menu */

#load-actions {
  margin: 10px 0;
  display: flex;
}

#toggle-gallery {
  width: 30px;
  height: 25px;
  margin: 10px;
  color: #fff;

  background-image: url("arrow-up-white.png");
  background-repeat: no-repeat;
  background-position: top 4px center;
  background-color: #888888 !important;

  border-radius: 2px;
}

#toggle-gallery:hover {
  cursor: pointer;
}

#toggle-gallery[data-action="show"] {
  background-image: url("arrow-down-white.png");
  background-color: #888888 !important;
}

#toggle-gallery[data-action="hide"] {
  background-image: url("arrow-up-white.png");
}

.button {
  width: 100px;
  height: 25px;
  margin: 10px;
  color: #fff;
  text-align: center;
  font-size: 12px;
  line-height: 25px;
  background-color: #379b4a;
  border-radius: 2px;
}

.button:hover {
  cursor: pointer;
  background-color: #3380c4;
}

#load-image {
}

#load-remote {
  width: 30px;
  background-image: url("arrow-right-white.png");
  background-repeat: no-repeat;
  background-position: center center;
}

#remote-url {
  width: 200px;
  height: 23px;
  margin: 10px;
  padding: 0 5px;
  border: 1px solid #379b4a;
  border-radius: 2px;

  transition: width 0.5s;
}

#remote-url:focus {
  box-shadow: 0px 0px 3px -1px #379b4a; /*#68ACE8; */
  border-color: rgb(55 155 74 / 0.5);
  width: 450px;
}

/*
 * Visible Area
 */

#preview_section {
  position: relative;
  min-height: 400px;
}

/* Image Control */

#subject {
  width: 300px;
  height: 300px;
  background-repeat: no-repeat;
  background-size: 100%;
  background-color: #fff;
  border: 1px solid #ccc;

  position: absolute;
  z-index: 10;
  top: 15%;
  left: 10%;

  box-shadow: 0 0 3px 0 #bababa;
  transition-property: width, height;
  transition-duration: 0.1s;
}

#subject .guideline {
  background-color: rgb(255 255 255 / 0.7);
  border: 1px solid rgb(0 0 0 / 0.3);
  position: absolute;
}

#subject .guideline:hover {
  background-color: #f00;
}

#subject .guideline[data-active] {
  background-color: #f00;
  z-index: 10;
}

#subject .guideline[data-axis="X"] {
  width: 1px;
  height: 100%;
  top: -1px;
}

#subject .guideline[data-axis="Y"] {
  width: 100%;
  height: 1px;
  left: -1px;
}

#subject .guideline[data-axis="X"]:hover {
  cursor: w-resize;
}

#subject .guideline[data-axis="Y"]:hover {
  cursor: s-resize;
}

#subject .relative {
  position: relative;
  font-size: 12px;
}

#subject .tooltip,
#subject .tooltip2 {
  width: 40px;
  height: 20px;
  line-height: 20px;
  font-size: 12px;
  text-align: center;

  position: absolute;
  opacity: 0.5;
  transition: opacity 0.25s;
}

#subject .tooltip {
  background: #eee;
  border-radius: 2px;
  border: 1px solid #ccc;
}

#subject .tooltip2 {
  color: #555;
}

#subject [data-active] > * {
  opacity: 1;
}

#subject .tooltip[data-info="top"] {
  top: -10px;
  right: -50px;
}

#subject .tooltip[data-info="right"] {
  bottom: -30px;
  right: -20px;
}

#subject .tooltip[data-info="bottom"] {
  top: -10px;
  left: -50px;
}

#subject .tooltip[data-info="left"] {
  top: -30px;
  right: -20px;
}

#subject .tooltip2[data-info="top"] {
  top: -10px;
  left: -50px;
}

#subject .tooltip2[data-info="right"] {
  top: -30px;
  right: -20px;
}

#subject .tooltip2[data-info="bottom"] {
  top: -10px;
  right: -50px;
}

#subject .tooltip2[data-info="left"] {
  bottom: -30px;
  right: -20px;
}

/* Preview */

#preview {
  width: 30%;
  height: 50%;
  background-color: #fff;
  text-align: center;
  overflow: hidden;
  position: absolute;
  z-index: 10;

  left: 60%;
  top: 15%;

  border-radius: 2px;
  border-image-width: 20px;
  border-image-repeat: round;
  border-style: solid;
  box-shadow: 0 0 3px 0 #bababa;
}

#preview .resize-handle {
  width: 10px;
  height: 10px;
  background: url("resize.png") center center no-repeat;
  position: absolute;
  bottom: 0;
  right: 0;
}

#preview .resize-handle:hover {
  cursor: nw-resize;
}

/*
 * General controls MENU
 */

#general-controls {
  padding: 10px 30px;
  background-color: #fff;
  opacity: 0.95;
  color: #888;
  /*border-radius: 2px;*/
  box-shadow: 0 0 3px 0 #bababa;
  display: flex;
  flex-wrap: wrap;
  row-gap: 10px;
}

#general-controls .property {
  width: 130px;
  display: flex;
}

#general-controls .name {
  height: 20px;
  margin: 0 10px 0 0;
  line-height: 100%;
  text-align: right;
}

#general-controls .right {
  width: 200px;
  margin-left: auto;
}

#general-controls .ui-checkbox label {
  height: 10px;
  display: block;
}

#general-controls .separator {
  height: 40px;
  width: 1px;
  margin: -10px 15px;
  background-color: #eee;
}

/*
 * Controls
 */

#controls {
  color: #444;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 20px;
  padding: 20px;
  justify-content: space-between;
}

#controls .category {
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 3px;

  box-shadow: 0 0 3px 0 #bababa;
  transition: all 0.25s;

  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#controls .category .title {
  width: 100%;
  height: 30px;
  margin: 0 0 10px 0;
  line-height: 25px;

  text-align: center;
  color: #aaa;
}

#controls .category:hover .title {
  color: #777;
}

#controls .category > .group {
  border: 1px solid #ccc;
  border-radius: 2px;
}

/* property */

#controls .property {
  width: 250px;
  height: 20px;
  margin: 5px auto;
  display: flex;
}

#controls .property .ui-input-slider {
  margin: 0;
}

#controls .property .ui-input-slider-info {
  width: 60px;
}

#controls .property .ui-input-slider-left {
  transition: opacity 0.15s;
  opacity: 0;
}

#controls .property .ui-input-slider-right {
  transition: opacity 0.15s;
  opacity: 0;
}

#controls .property .name {
  width: 60px;
  height: 20px;
  padding: 0px 10px 0px 0px;
  text-align: right;
  line-height: 100%;
}

#controls .property .config {
  width: 20px;
  height: 20px;
  background: url("config.png") center center no-repeat;
  opacity: 0.5;
}

#controls .property .config:hover {
  cursor: pointer;
  opacity: 1;
}

#controls .ui-input-slider:hover .ui-input-slider-right {
  opacity: 1;
}

#controls .ui-input-slider:hover .ui-input-slider-left {
  opacity: 1;
}

#controls .property .ui-dropdown {
  margin: 0 10px;
}

#controls .property .ui-checkbox {
  margin: 0 0 0 16px;
}

#controls .property .ui-checkbox label {
  display: block;
  height: 0.85em;
  width: 10px;
}

/* dropdowns */
#controls .ui-dropdown {
  width: 50px;
  height: 1.7em;
  border-radius: 2px;
}

#controls .ui-dropdown-select {
  line-height: 1.6em;
}

#controls .ui-dropdown-list {
  top: 20px;
}

#controls .ui-dropdown-list {
  border-width: 1px;
  text-align: center;
}

#controls .ui-dropdown-list:hover {
  overflow: hidden;
}

#controls .border-repeat {
  margin: 0 0 0 16px !important;
  width: 80px;
}

#controls .border-repeat .ui-dropdown-list {
  border-width: 1px;
  text-align: center;
}

#additional-properties .property {
  width: 200px;
}

#additional-properties .ui-input-slider > input {
  width: 80px !important;
}

/* unit settings panel */

#unit-settings {
  padding: 10px;
  position: absolute;

  background: #fff;

  font-size: 12px;
  border-radius: 3px;
  border: 1px solid #ccc;
  text-align: center;
  color: #555;

  z-index: 1000;

  box-shadow: 0 0 3px 0 #bababa;
  transition: all 0.25s;
}

#unit-settings .title {
  width: 100%;
  margin: -5px auto 0;

  color: #666;
  font-size: 14px;
  font-weight: bold;
  line-height: 25px;
  border-bottom: 1px solid #e5e5e5;
}

#unit-settings .ui-input-slider {
  margin: 10px 0 0 0;
}

#unit-settings .ui-input-slider-info {
  width: 50px;
  line-height: 1.5em;
}

#unit-settings input {
  font-size: 12px;
  width: 40px !important;
}

#unit-settings .close {
  width: 16px;
  height: 16px;
  background: url("close.png") no-repeat center center;
  background-size: 75%;

  position: absolute;
  top: 4px;
  right: 4px;
  opacity: 0.5;
}

#unit-settings .close:hover {
  cursor: pointer;
  opacity: 1;
}

#unit-settings[data-active="true"] {
  opacity: 1;
}

#unit-settings[data-active="false"] {
  opacity: 0;
  top: -100px !important;
}

/*
 * CSS Output Code
 */

#output {
  padding: 10px;
  border: 2px dashed #888 !important;
  box-shadow: none !important;
  border-radius: 3px;
  overflow: hidden;
  grid-column: span 2;

  -moz-user-select: text;
  -webkit-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

#output .title {
  width: 100%;
  height: 30px;
  margin: 0 0 10px 0;
  line-height: 25px;

  text-align: center;
  color: #aaa;
}

#output .title #copy-css {
  float: right;

  background-color: unset;
  color: inherit;
  border: 1px solid #ccc;
  border-radius: 3px;
  box-shadow: 0 0 3px 0 #bababa;
}

#controls .category:hover #copy-css:not(:hover) {
  color: #aaa;
}

#output .title #copy-css:hover {
  cursor: pointer;
  color: #777;
}

#output .css-property {
  width: 100%;
  margin: 0;
  color: #555;
  font-size: 14px;
  line-height: 18px;
  display: flex;
}

#output .css-property .name {
  width: 30%;
  font-weight: bold;
  text-align: right;
}

#output .css-property .value {
  width: 65%;
  padding: 0 2.5%;
  word-break: break-all;
}
