/* Minimal Bootstrap 3 compatibility layer.
 * This project previously relied on bootstrap for grid + alert styles.
 * Keep the original layout without bringing bootstrap back.
 */

html {
  box-sizing: border-box;
  height: 100%;
  min-height: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body,
#app {
  height: 100%;
  min-height: 100%;
}

body {
  color: #333;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

img {
  border: 0;
  vertical-align: middle;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button,
select {
  text-transform: none;
}

button {
  overflow: visible;
}

input {
  line-height: normal;
}

.container {
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
  width: 100%;
}

@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}

@media (min-width: 992px) {
  .container {
    width: 970px;
  }
}

@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}

/* Grid */
.col-xs-3,
.col-sm-2 {
  position: relative;
  min-height: 1px;
  float: left;
  padding-left: 15px;
  padding-right: 15px;
}

.col-xs-3 {
  width: 25%;
}

@media (min-width: 768px) {
  .col-sm-2 {
    width: 16.66666667%;
  }
}

/* Clear floats for bookmark/engine lists */
#folder ul::after,
#nav ul::after {
  content: "";
  display: block;
  clear: both;
}

/* Visibility helpers */
.visible-xs,
.visible-sm {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
}

/* Alerts */
.alert {
  position: relative;
  padding: 15px;
  margin: 0 auto 20px;
  border: 1px solid transparent;
  border-radius: 4px;
  text-align: left;
}

.alert-info {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}

.alert-dismissible {
  padding-right: 35px;
}

.close {
  float: right;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  border: 0;
  background: transparent;
  cursor: pointer;
  opacity: 0.2;
}

.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
}

.close:hover {
  color: #000;
  text-decoration: none;
  opacity: 0.5;
}

blockquote {
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 17.5px;
  border-left: 5px solid #eee;
}

hr {
  box-sizing: content-box;
  height: 0;
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eee;
}

#Select hr {
  margin-top: 20px;
  margin-bottom: 20px;
}

#folder .folder-item {
  height: 82px;
}

#logo,
#logo div,
#state {
  line-height: 0;
}

#logo a,
#state a {
  display: inline-block;
  line-height: 0;
}

#img {
  display: block;
}

/* Form rendering parity with original bootstrap page */
.inputDiv input,
.inputDiv button {
  box-sizing: border-box;
}

.inputDiv input {
  font-size: 16px;
}

/* Draggable visuals */
.drag-ghost {
  opacity: 0.55;
}

.drag-chosen {
  opacity: 0.9;
}

.dragging {
  cursor: grabbing;
}

#menu .blockquote {
  color: var(--menu-item-text, black);
}

#menu .sidenav-btn {
  background-color: var(--menu-item-bg, #E3E3E3);
  color: var(--menu-item-text, black);
}

#menu .sidenav-btn:hover {
  background-color: var(--menu-item-hover-bg, lightgray);
}

#menu .blockquote {
  border-left: 5px solid var(--menu-heading-border, #eee);
  padding-left: 20px;
}
