/*
 * str-replace
 * Function to replace characters in a string
 */
/*
 * svg-url
 * Chunk up string in order to avoid
 * "SystemStackError: stack level too deep"
 */
/*
 * strip-units
 */
/*
 * Better underline,
 * used from: https://codepen.io/jonneal/pen/PzGYEE
 */
/*
 * cf
 * Modern clearfix
 */
/*
 * inline-list
 * A list with items floated next to each other
 */
/*
 * listing
 * USed for <ul> and <ol> tags that don't need margins/paddings
 */
/*
 * block-grid
 * A grid of items
 */
/*
 * font-size
 */
html {
  font-size: 100%;
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

body {
  margin: 0;
  background: #ffffff;
  font-family: "Open Sans", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.625;
  color: #222222;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Open Sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #e52931;
  text-rendering: optimizeLegibility;
  line-height: normal;
  margin: 15px 0;
}

h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
  margin-top: 0;
}

h1 {
  font-size: 42px;
  font-size: 2.625rem;
}

h2 {
  font-size: 36px;
  font-size: 2.25rem;
}

h3 {
  font-size: 28px;
  font-size: 1.75rem;
}

h4 {
  font-size: 22px;
  font-size: 1.375rem;
}

h5 {
  font-size: 18px;
  font-size: 1.125rem;
}

h6 {
  font-size: 16px;
  font-size: 1rem;
}

p {
  margin: 15px 0;
}

p:first-child {
  margin-top: 0;
}

.body {
  margin: 25px 0;
}

.body--text a {
  box-shadow: inset 0 -0.11em 0 0 #ffffff, inset 0 -0.14em 0 0 rgba(255, 255, 255, 0), inset 0 -0.14em 0 0 currentColor;
  text-decoration: none;
  text-shadow: 0.15em 0 #ffffff, -0.15em 0 #ffffff, 1.5px 0 #ffffff, -1.5px 0 #ffffff;
}

.body--intro {
  font-size: 24px;
  font-size: 1.5rem;
}

.body--intro a {
  box-shadow: inset 0 -0.11em 0 0 #ffffff, inset 0 -0.14em 0 0 rgba(255, 255, 255, 0), inset 0 -0.14em 0 0 currentColor;
  text-decoration: none;
  text-shadow: 0.15em 0 #ffffff, -0.15em 0 #ffffff, 1.5px 0 #ffffff, -1.5px 0 #ffffff;
}

em, i {
  font-style: italic;
  line-height: inherit;
}

strong, b {
  font-weight: 700;
  line-height: inherit;
}

small {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: inherit;
}

blockquote {
  margin: 25px 0;
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.3125;
}

blockquote > small {
  display: block;
}

a {
  color: #e52931;
  text-decoration: none;
}

a:hover {
  color: #c3181f;
}

.label {
  display: inline-block;
  padding: 0px 6px;
  background: #e52931;
  color: #ffffff;
  border-radius: 3px;
}

.label--secondary {
  background: #29e5dd;
}

.label--alert {
  background: #e52931;
}

.label--transparent {
  background: transparent;
  color: #222222;
}

.label--small {
  padding: 0px 4px;
  font-size: 12px;
  font-size: 0.75rem;
}

.svg-icon-alert, .svg-icon-check, .svg-icon-clipboard, .svg-icon-close, .svg-icon-glue, .svg-icon-menu, .svg-icon-select {
  background: url("../img/icons-svg-dist/sprite.svg") no-repeat;
}

.svg-icon-alert {
  background-position: 0 0;
}

.svg-icon-alert--dims {
  width: 80.1px;
  height: 70.7px;
}

.svg-icon-check {
  background-position: 88.60619469026547% 29.429037520391518%;
}

.svg-icon-check--dims {
  width: 39.6px;
  height: 29.7px;
}

.svg-icon-clipboard {
  background-position: 0 98.6603404967904%;
}

.svg-icon-clipboard--dims {
  width: 14.35px;
  height: 19.34px;
}

.svg-icon-close {
  background-position: 12.478260869565217% 91.81818181818181%;
}

.svg-icon-close--dims {
  width: 15px;
  height: 14px;
}

.svg-icon-glue {
  background-position: 98.88888888888887% 0;
}

.svg-icon-glue--dims {
  width: 49px;
  height: 18.04px;
}

.svg-icon-menu {
  background-position: 25.52173913043478% 91.81818181818181%;
}

.svg-icon-menu--dims {
  width: 15px;
  height: 14px;
}

.svg-icon-select {
  background-position: 75.56603773584905% 60.82303478150082%;
}

.svg-icon-select--dims {
  width: 24px;
  height: 12.51px;
}

.icon {
  display: inline-block;
  text-indent: -119988px;
  overflow: hidden;
  text-align: left;
}

.sprite-svg-hide {
  visibility: hidden;
  position: absolute;
  z-index: -1;
}

#main-sidebar-button svg {
  vertical-align: baseline;
}

/*
SCSS variables are information about icon's compiled state, stored under its original file name

.icon-home {
  width: $icon-home-width;
}

The large array-like variables contain all information about a single icon
$icon-home: x y offset_x offset_y width height total_width total_height image_path;

At the bottom of this section, we provide information about the spritesheet itself
$spritesheet: width height image $spritesheet-sprites;
*/
/*
These "retina group" variables are mappings for the naming and pairing of normal and retina sprites.

The list formatted variables are intended for mixins like `retina-sprite` and `retina-sprites`.
*/
/*
The provided mixins are intended to be used with the array-like variables

.icon-home {
  @include sprite-width($icon-home);
}

.icon-email {
  @include sprite($icon-email);
}
*/
/*
The `retina-sprite` mixin sets up rules and a media query for a sprite/retina sprite.
  It should be used with a "retina group" variable.

The media query is from CSS Tricks: https://css-tricks.com/snippets/css/retina-display-media-query/

$icon-home-group: ('icon-home', $icon-home, $icon-home-2x, );

.icon-home {
  @include retina-sprite($icon-home-group);
}
*/
/*
The `sprites` mixin generates identical output to the CSS template
  but can be overridden inside of SCSS

@include sprites($spritesheet-sprites);
*/
/*
The `retina-sprites` mixin generates a CSS rule and media query for retina groups
  This yields the same output as CSS retina template but can be overridden in SCSS

@include retina-sprites($retina-groups);
*/
.png-icon-glue {
  background-image: url(../img/icons-png-dist/sprite.png);
  background-position: 0px 0px;
  width: 43px;
  height: 16px;
}

.png-icon-close {
  background-image: url(../img/icons-png-dist/sprite.png);
  background-position: 0px -16px;
  width: 15px;
  height: 14px;
}

*:focus {
  outline: none;
}

* {
  box-sizing: border-box;
}

html, body {
  height: 100%;
  width: 100%;
}

body {
  background: #75caf4;
  font-family: "filson-soft", sans-serif;
  font-size: 15px;
  color: #333;
  height: 100%;
}

body.bg-login {
  background: url(../img/bg-concrete-light.jpg);
}

h2 {
  font-family: "filson-soft", sans-serif;
  font-weight: 700;
  font-size: 16px;
  margin: 15px 0 15px 0;
  color: #18234f;
}

h3, h3:first-child {
  font-family: "ff-tisa-web-pro", sans-serif;
  font-weight: 700;
  font-size: 22px;
  margin-top: 0;
  margin-bottom: 36px;
  color: #F9A61B;
}

h4, h4:first-child {
  font-family: "filson-soft", sans-serif;
  font-weight: 700;
  font-size: 16px;
  text-transform: uppercase;
  margin: 20px 0 15px 0;
  color: #0C3749;
}

.bootstrap-dialog-title {
  font-family: "filson-soft", sans-serif;
  font-weight: 700;
  font-size: 16px;
  text-transform: uppercase;
  margin: 10px 0 0 15px;
  color: #0C3749;
}

a {
  color: #276078;
  outline: none;
}

a:hover {
  color: #0C3749;
}

.container-box {
  display: -ms-flexbox;
  display: flex;
  /*justify-content: space-between;
	flex-direction: row;*/
}

.sidebar {
  -ms-flex: 1;
      flex: 1;
  padding: 25px 25px 25px 40px;
  max-width: 350px;
  height: 100vh;
}

a.navbar-brand {
  float: none;
  color: #18234f;
  display: block;
  padding: 0;
  margin: 10px 0 15px 0;
  font-family: "ff-tisa-web-pro", sans-serif;
  font-size: 22px;
  text-transform: uppercase;
}

.list-group {
  margin-bottom: 30px;
}

a.list-group-item {
  padding: 4px 0;
  background: none;
  color: #B6D7E6;
  border: none;
}

a.list-group-item:hover, a.list-group-item:focus {
  color: #ffffff;
  background: none;
}

a.list-group-item {
  color: #4a58a4;
}

a.list-group-item:hover {
  color: #18234f;
}

.logout a {
  background-color: #4a58a4;
  border-radius: 4px;
  padding: 8px 12px;
  color: #fff;
  transition: all 0.3s ease 0s;
}

.logout a:hover, .logout a:focus, .logout a:active {
  color: #fff;
  text-decoration: none;
  background-color: #18234f;
}

.content {
  -ms-flex: 1;
      flex: 1;
  background: url(../img/bg-concrete-light.jpg);
  padding: 15px 0 0 50px;
  min-height: 900px;
}

.content-inner {
  padding: 12px 0 50px 0;
  max-width: 800px;
}

.content-inner table a {
  color: #276078;
  text-decoration: underline;
  outline: none;
}

.content-inner table a:hover {
  color: #0C3749;
}

.login-box {
  padding-top: 50px;
}

.panel {
  border-radius: 0;
}

.panel-default > .panel-heading {
  background: #75caf4;
  font-family: "ff-tisa-web-pro", sans-serif;
  font-weight: 700;
  font-size: 20px;
  color: #18234f;
  border: none;
  border-radius: 0;
}

.table > tbody > tr > th {
  padding: 0 0 9px 9px;
  border-top: none;
  color: #0C3749;
}

.table > tbody > tr > td {
  padding: 9px 9px;
  vertical-align: middle;
}

.table tr:nth-child(odd) td {
  background-color: rgba(200, 200, 200, 0.2);
}

.alert-danger {
  border: none;
  color: #D0011B;
  border-radius: 0;
}

.alert-danger ul {
  padding-left: 25px;
}

.modal-header {
  border-bottom: none;
  padding: 15px 15px 2px 15px;
}

.modal-footer {
  border-top: none;
  padding: 15px 30px 20px 30px;
}

.bootstrap-dialog-footer-buttons .btn-default {
  padding: 9px 16px;
  margin-right: 5px;
  color: #333;
}

.bootstrap-dialog-footer-buttons .btn-default:hover, .bootstrap-dialog-footer-buttons .btn-default:focus, .bootstrap-dialog-footer-buttons .btn-default:active {
  color: #333;
  background-color: #ffffff;
  outline: none;
  box-shadow: none;
}

.bootstrap-dialog-footer-buttons .btn-success {
  background-color: #F9A61B;
  color: #333;
  border: none;
  font-weight: 700;
  padding: 8px 16px;
  font-size: 17px;
  transition: all 0.3s ease 0s;
}

.bootstrap-dialog-footer-buttons .btn-success:hover, .bootstrap-dialog-footer-buttons .btn-success:focus, .bootstrap-dialog-footer-buttons .btn-success:active {
  color: #333;
  background-color: #fab43e;
  outline: none;
  box-shadow: none;
}

/* forms */
.btn:focus, .btn:active {
  outline: none;
  background-color: #F9A61B;
}

textarea:focus, input:focus {
  outline: none;
}

label {
  margin-bottom: 3px;
  font-weight: 400;
  color: #276078;
}

label.block {
  display: block;
}

.btn-primary {
  background-color: #F9A61B;
  color: #333;
  border: none;
  font-weight: 700;
  padding: 8px 16px;
  font-size: 17px;
  transition: all 0.3s ease 0s;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  color: #333;
  background-color: #fab43e;
  outline: none;
  box-shadow: none;
}

.btn-primary:active:hover {
  color: #333;
  background-color: #fab43e;
  outline: none;
  box-shadow: none;
}

label .btn-primary {
  background-color: #ffffff;
  color: #276078;
  padding: 0 5px;
  text-decoration: none;
}

.btn-danger, .btn-success, .btn-validate {
  border: none;
  color: #276078;
  font-size: 15px;
  background: none;
  padding: 0;
}

.btn-danger:hover, .btn-success:hover, .btn-validate:hover {
  background: none;
  color: #0C3749;
}

.btn-link {
  color: #276078;
}

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px white inset;
}

.form-control {
  padding: 8px 12px;
  height: 42px;
  color: #0C3749;
}

.form-control:focus {
  border-color: #bbb;
  box-shadow: none;
}

.search-box {
  margin-bottom: 30px;
}

.stylish-input-group .input-group-addon {
  background: white !important;
}

.stylish-input-group .form-control {
  border-right: 0;
  box-shadow: 0 0 0;
  border-color: #ccc;
}

.stylish-input-group button {
  border: 0;
  background: transparent;
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .png-icon-glue {
    background-image: url(../img/icons-png-dist/sprite@2x.png);
    background-size: 43px 30px;
  }
  .png-icon-close {
    background-image: url(../img/icons-png-dist/sprite@2x.png);
    background-size: 43px 30px;
  }
}

body.dragging, body.dragging * {
  cursor: move !important;
}

.dragged {
  position: absolute;
  opacity: 0.5;
  z-index: 2000;
}

.sorted_table .placeholder {
  position: relative;
  /** More li styles **/
}
.sorted_table .placeholder:before {
  position: absolute;
  /** Define arrowhead **/
  content: "";
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-left-color: #F9A61B;
  margin-top: -5px;
  left: -5px;
  border-right: none;
}

.add-partner {
  margin-bottom: 25px;
}

.top-buffer { margin-top:35px; }

.printHeader {
  display: none;
}

.printFooter {
  display: none;
}

#general_form input, #general_form textarea {
  border: none;
  background-color: inherit;
  pointer-events:none;
}

#general_form h1 {
    color:black;
    font-size: 1.7em;
}

#general_form h2 {
    color:dimgrey;
}

.previewbutton{
    margin-bottom: 1em;
}

/* Tooltip container */
.tooltip-container {
  position: relative;
  display: inline-block;
  border-bottom: 1px dotted black; /* If you want dots under the hoverable text */
}

/* Tooltip text */
.tooltiptext {
  visibility: hidden;
  width: 200px;
  background-color: black;
  color: #fff;
  text-align: left;
  padding: 5px 0;
  border-radius: 6px;
  padding-left: 5px;

  /* Position the tooltip text*/
  position: absolute;
  z-index: 1;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip-container:hover .tooltiptext {
  visibility: visible;
}
