/* GENERAL */

html, body {
  margin: 0 auto;
  top: 0;
  font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue"
}

/* vietnamese */
@font-face {
  font-family: 'Inconsolata';
  font-style: normal;
  font-weight: 400;
  src: local('Inconsolata Regular'), local('Inconsolata-Regular'), url(lib/Inconsolata-Regular.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inconsolata';
  font-style: normal;
  font-weight: 400;
  src: local('Inconsolata Regular'), local('Inconsolata-Regular'), url(lib/Inconsolata-Regular.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inconsolata';
  font-style: normal;
  font-weight: 400;
  src: local('Inconsolata Regular'), local('Inconsolata-Regular'), url(lib/Inconsolata-Regular.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 400;
  src: local('SourceCodePro Light'), local('SourceCodePro-Light'), url(lib/SourceCodePro-Light.ttf) format('ttf');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

::-webkit-scrollbar {
  width: 4px;
}

::-webkit-scrollbar-track {
  background: #DDD;
}

::-webkit-scrollbar-thumb {
  background: #666;
}

/* APP */

.app {
  height: 100%;
  width: 100%;
}

/* HEADER */

.dash-header {
  height: 3em;
  width: 100%;
  display: flex;
}

/* HEADER LEFT */

.dash-header .header-left {
  width: 50%;
  height: 100%;
  display: flex;
}

.dash-header .header-left .logo {
  height: 36px;
  margin: 8px;
}

.dash-header .header-left .dropdown {
  position: relative;
  display: inline-block;
  cursor: pointer;
  height: 30px;
  margin: 9px;
  width: 160px;
  border: 2px solid #FFF0;
  border-bottom: none;
  border-radius: 3px;
  font-weight: bold;
}

.dash-header .header-left .dropdown:hover {
  border: 2px solid #BBB;
}

.dash-header .header-left .dropdown .item {
  padding: 6px 14px;
  color: #2b5fb4;
}

div.arrow {
  border: solid #DDD;
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 3px;
}

div.arrow.down {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}

.dash-header .header-left .dropdown .item.active-item div.arrow {
  margin: 0 0 3px 10px;
  -webkit-transition: all .6s;
  opacity: 1;
}

.dash-header .header-left .dropdown:hover .item.active-item div.arrow {
  opacity: 0;
  margin-bottom: -2px;
}

.dash-header .header-left .dropdown ul.inactive-items {
  display: none;
  position: absolute;
  background-color: #FFF;
  border: 2px solid #BBB;
  border-radius: 0 0 3px 3px;
  border-top: none;
  width: 160px;
  box-shadow: 0px 8px 8px 0px rgba(182, 128, 128, 0.2);
  z-index: 1;
  list-style-type: none;
  margin: -3px -2px;
  padding: 0;
}

.dash-header .header-left .dropdown ul.inactive-items li.item:hover {
  color: #1c3f78;
  background: #DDD;
}

.dash-header .header-left .dropdown ul.inactive-items li.item.inactive {
  color: #DDD;
}

.dash-header .header-left .dropdown ul.inactive-items li.item.inactive:hover {
  color: #DDD;
  background: #FFF;
  cursor: default;
}

.dash-header .header-left .dropdown:hover .inactive-items {
  display: block;
}

/* HEADER RIGHT */

.dash-header .header-right {
  width: 50%;
  height: 100%;
}

.dash-header .header-right .filter {
  float:right;
  outline: 0px;
  width: 300px;
  height: 6px;
  background: #DDD;
  margin: 34px 20px 0 0;
  -webkit-transition: all .6s;
}

.dash-header .header-right .filter .input {
  border: 0px;
  outline: none;
  width: 280px;
  background: #FFF;
  margin-left: 2px;
  margin-top: -19px;
  padding: 4px 8px;
  position: absolute;
  -webkit-transition: all .6s;
  font-family: 'Inconsolata', 'Lucida Console', Monaco, monospace;
  font-size: 14px;

}

.dash-header .header-right .filter:focus-within {
  background: #BBB;
}

.dash-header .header-right .filter.invalid {
  background: #db002f;
}

.dash-header .header-right .filter.invalid:focus-within {
  background: #db002f;
}

.dash-header .header-right .filter .input::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #DDD;
  opacity: 1; /* Firefox */
  -webkit-transition: all .6s;
}

.dash-header .header-right .filter .input:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #DDD;
  -webkit-transition: all .6s;
}

.dash-header .header-right .filter .input::-ms-input-placeholder { /* Microsoft Edge */
  color: #DDD;
  -webkit-transition: all .6s;
}

.dash-header .header-right .filter .input:focus::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #BBB;
  opacity: 1; /* Firefox */
}

.dash-header .header-right .filter .input:focus:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #BBB;
}

.dash-header .header-right .filter .input:focus::-ms-input-placeholder { /* Microsoft Edge */
  color: #BBB;
}

/* DASHBOARD */

.dashboard-container {
  padding: 2px;
  height: calc(100% - 3em);
  box-sizing: border-box;
}

.dashboard-wrapper {
  position: relative;
  height: 100%;
}

.read-only-area {
  flex-grow: 1;
  width: 100%;
  background: transparent;
  resize: none;
  outline: none;
  border: 0;
  padding: 0.5em;
  color: inherit;
  cursor: default;
}

.editable-area {
  flex-grow: 1;
  width: 100%;
  background: transparent;
  resize: none;
  outline: none;
  border: 0;
  padding: 0.5em;
  color: inherit;
}

/* PANEL */

.dash-panel {
  box-sizing: border-box;
  position: absolute;
  padding: 2px;
  display: flex;
  flex-direction: column;
}

.dash-panel .title {
  font-size: 1.2em;
  font-weight: 500;
  cursor: default;
  color: #fff;
  display: block;
  background: #2b5fb4;
  text-transform: uppercase;
  height: 1.8em;
}

.dash-panel .title.success {
  background: #00db87;
}

.dash-panel .title.warning {
  background: #dcd007;
}

.dash-panel .title.error {
  background: #db002f;
}

.dash-panel .title .text {
  float: left;
  padding: 6px 0 0 12px;
}

.dash-panel .title .pill {
  background: #0005;
  color: #FFF;
  font-size: .6em;
  margin: 0.4em .4em;
  padding: .6em 12px;
  vertical-align: middle;
  float: right;
  text-align: center;
  border-radius: 3px;
  width: 6em;
}

.dash-panel .content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  background: #0000000D;
  color: #222;
  overflow: hidden;
}

.dash-panel .content textarea {
  font-size: 1em;
  font-family: 'Inconsolata', 'Lucida Console', Monaco, monospace;
  line-height: 1.3em;
}
