/*
   ATTENTION: This file is not compiled when building gluon.
   The compiled version is at ../files/lib/gluon/web/www/static/gluon/cascade.css

   Use sass like this to update it:

   sass --sourcemap=none -C -t compressed sass/cascade.scss files/lib/gluon/web/www/static/gluon/cascade.css

   When commiting changes to this file make sure to commit the respective
   changes to the compilid version within the same commit!
*/

@charset "utf-8";

$ffyellow:  #ffb400;
$ffmagenta: #dc0067;
$ffzusatz:  #009ee0;
$red:       #ee3300;

@mixin button {
  &::-moz-focus-inner {
    padding: 0;
    border: 0;
  }

  display: inline-block;
  zoom: 1;
  line-height: normal;
  white-space: nowrap;
  vertical-align: baseline;
  text-align: center;
  cursor: pointer;
  user-select: none;


  font-size: 100%;
  padding: 0.5em 1em;
  color: rgba(0, 0, 0, 0.80);
  border: none rgba(0, 0, 0, 0);
  background-color: #E6E6E6;
  text-decoration: none;
  border-radius: 2px;

  /* Transitions */
  transition: 0.1s linear box-shadow;

  &:active {
    box-shadow: 0 0 0 1px rgba(0,0,0, 0.15) inset, 0 0 6px rgba(0,0,0, 0.20) inset;
  }

  &:focus {
    outline: 0;
  }

  &:hover, &:focus {
    background-image: linear-gradient(transparent, rgba(0,0,0, 0.05) 40%, rgba(0,0,0, 0.10));
  }

  &[disabled] {
    border: none;
    background-image: none;
    opacity: 0.40;
    cursor: not-allowed;
    box-shadow: none;
  }
}

@mixin button-primary {
  background-color: $ffzusatz;
  color: #fff;
}

.lang_he {
  direction: RTL;
  unicode-bidi: embed;
}

.hidden {
  display: none;
}

html {
  min-height: 100%;
  height: auto;
  position:relative;
}

body, input, select, option {
  font-family: 'Open Sans', Arial, sans-serif;
  font-size: 12pt;
}

body {
  color: rgb(77, 78, 83);
  line-height: 1.5em;
  margin: 0;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  background-color: #f3f3f3;
}

a img {
  border: none;
  text-decoration: none;
}

.tabmenu1 {
  text-align: center;
}

ul.tabmenu {
  list-style: none;
  padding: 0;
  margin: 2em 0;
  display: inline-flex;
}

ul.tabmenu li {
  white-space: nowrap;
  margin: 0 0.5em;
  padding: 0;
  text-align: center;

  a {
    display: block;
    text-decoration: none;
    padding: 1em;
    margin: 0;
    color: #333;
    border-radius: 2em;

    &:hover {
      background: lighten($ffyellow, 35);
    }
  }

  &.active a {
    font-weight: bold;
    background: white;
    color: #333;
  }
}

abbr,
acronym {
  font-style: normal;
  font-variant: normal;
}

abbr[title],
acronym[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

a:link abbr[title],
a:visited abbr[title],
a:link acronym[title],
a:visited acronym[title] {
  cursor: pointer;
}

code {
  font-family: monospace;
  white-space: pre;
}

#maincontent ul {
  margin-left: 2em;
}

.clear {
  clear: both;
}

.error {
  color: #ff0000;
  background-color: white;
}

#menubar {
  display: flex;
  background: $ffmagenta;
  color: #ffffff;
}

#menubar a:link.topcat,
#menubar a:visited.topcat {
  position: relative;
  display: block;
  padding: 0.5em;
  text-decoration: none;
  font-size: 80%;
  font-weight: normal;
  color: white;

  &:hover, &:focus {
    background: $ffyellow;
    color: black;
  }

  &.active {
    background: $ffyellow;
    color: black;
    font-weight: bold;
  }
}

#menubar div.hostinfo {
  position: relative;
  margin: 0;
  padding: 0.5em;
  flex: 1;
  font-weight: bold;
  font-size: 80%;
}

#menubar div.hostinfo a {
  &:link, &:visited {
    text-decoration: none;
    font-weight: bold;
    color: white;

    &:hover, &:focus {
      text-decoration: underline;
    }
  }
}

#topmenu {
  list-style: none;
  margin: 0;
  padding: 0;
}

#topmenu li {
  display: inline-block;
}

#maincontent {
  padding: 0 1em 2em;
  max-width: 60em;
  min-width: 40em;
  margin: 1em auto;
}

#maincontent p {
  margin-bottom: 1em;
}

.gluon-section {
  margin: 0;
  padding: 0;
  border: none;
  margin-bottom: 1.3em;
}

.gluon-section:last-child {
  margin-bottom: 0.7em;
}

.gluon-section legend {
  font-size: 1.4em;
  font-weight: bold;
  position: relative;
  padding: 0;
  margin-bottom: 0.5em;
}

.gluon-section h2 {
  margin: 0em 0 0.5em -0.5em !important;
}

.gluon-section h3 {
  text-decoration: none !important;
  font-weight: bold !important;
  color: #555555 !important;
  margin: 0.25em !important;
  font-size: 100% !important;
}

.gluon-section-descr {
  margin-bottom: 2em;
}

input:placeholder {
  color: #aaaaaa;
}

input:-webkit-input-placeholder {
  color: #aaaaaa;
}

input:-moz-placeholder {
  color: #aaaaaa;
}

input:-ms-input-placeholder {
  color: #aaaaaa;
}

input[type=checkbox] {
  display: none;

  & + label {
    display: inline-block;
    width: 1em;
    height: 1em;
    margin: 0;
  }

  &:checked + label:after {
    content: '✔';
    color: $ffmagenta;
    vertical-align: middle;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -0.5em;
    width: 100%;
    text-align: center;
    font-size: 1.7em;
  }
}

input[type=submit],
input[type=reset],
input[type=image],
input[type=button] {
  cursor: pointer;
}

select,
input,
textarea,
input[type=checkbox] + label {
  color: darken($ffzusatz, 30);
  border: none;
  background: lighten($ffyellow, 30);
  border-radius: 3pt;
  padding: 0.5em;
  margin-top: 1px;
  margin-bottom: 2px;
}

input[type=image] {
  border: none;
}

select,
input[type=text],
input[type=password] {
  min-width: 20em;
}

input.gluon-button {
  @include button;

  margin-left: 0.5em;
  background-repeat: no-repeat;
}

input.gluon-button-reset {
  background-color: $red;
  color: #fff;
}
input.gluon-button-submit {
  @include button-primary;
}

.gluon-input-invalid {
  background: $red !important;
  color: white;
}

div.gluon-section-remove input {
  border-bottom: none;
}

textarea {
  margin-left: -1px;
  margin-bottom: 0.5em;
}

.gluon-section .gluon-rowstyle-1 h3 {
  background-color: #eeeeff;
  color: #555555;
}

.gluon-rowstyle-2 {
  color: #000000;
}

div.gluon-value {
  display: flex;
  flex-direction: row;
  margin-bottom: 0.5em;
}

.gluon-section-node .gluon-value:last-child {
  margin-bottom: 0;
}

.gluon-value-title {
  flex: 2;
  text-align: right;
  padding-right: 1em;
  font-weight: bold;
}

div.gluon-value-field {
  flex: 3;
  position: relative;

  input, select, input + label {
    position: relative;
    top: -0.39em;
  }
}

div.gluon-value-field-long {
  flex: 10;
  position: relative;


  input, select, input + label {
    position: relative;
    top: -0.39em;
  }
}

div.gluon-value-field-long-after {
  flex: 2;
}

div.gluon-value-description {
  font-size: 8pt;
}

div.gluon-section-create {
  clear: left;
  white-space: nowrap;
  vertical-align: top;
}

div.gluon-section-create .gluon-button {
  margin: 0.25em;
}

input.gluon-section-create-name {
  margin-right: -0.25em;
}

div.gluon-map-descr {
  margin-bottom: 1em;
}

.gluon-map-descr:empty, .gluon-section-descr:empty {
  display: none;
}

.gluon-map-descr, .gluon-section-descr, .gluon-page-actions {
  padding: 1em;
  background: #ececec;
}

.gluon-page-actions {
  text-align: right;
  display: flex;
  flex-flow: row-reverse;
}

div.gluon-optionals {
  padding: 0.25em;
  border-bottom: 1px dotted #bbbbbb;
}

div.gluon-section-remove {
  float: right;
}

.gluon-section-node {
  clear: both;
  position: relative;
  border: none;
}

.gluon-section-node-tabbed {
  border-top-left-radius: 0;
}

div.gluon-error {
  font-size: 95%;
  font-weight: bold;
  color: #ff0000;
  background-color: #ffffff;
}

.gluon-value-error input,
.gluon-value-error select {
  background-color: #ffcccc;
}

.gluon-section-error {
  color: red;
  background-color: white;
  font-size: 95%;
  border: 1px dotted red;
  margin: 3px;
  padding: 3px;
}

.gluon-value-field var {
  color: #2222FF;
}

.gluon-add:after, .gluon-remove:after {
  cursor: pointer;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  font-size: 180%;
  width: 1.2em;
  height: 1em;
}

.gluon-add {
  color: #008000;

  position: relative;
  left: 21em;

  input + & {
    left: 0;
    top: -0.35em;
  }

  &:first-child {
    top: 0.04em;
    left: -0.08em;
  }

  &:after {
    content: '+';
  }
}

.gluon-remove {
  color: #800000;

  position: relative;
  top: -0.42em;

  &:after {
    content: '–';
  }
}

.left {
  text-align: left !important;
}

.right {
  text-align: right !important;
}

.inline {
  display: inline;
}

.error500 {
  border: 1px dotted #ff0000;
  background-color: #ffffff;
  color: #000000;
  padding: 0.5em;
}

.errorbox {
  border: 1px solid #FF0000;
  background-color: #FFCCCC;
  padding: 5px;
  margin-bottom: 5px;
}

.errorbox a {
  color: #000000 !important;
}


.the-key {
  text-align: left;
  font-size: 1.4em;
  background: lighten($ffyellow, 35);
  border: 3pt dashed $ffmagenta;
  margin-bottom: 0.5em;
  padding: 0.5em
}