html,body {
  font-family: 'Roboto';
}

select:focus,
input:focus,
textarea:focus,
.form-select:focus {
  outline: none;
  box-shadow: none;
}

#ajax-loading {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(0,0,0,0.5) url(../images/bars.svg) no-repeat;
  background-position: center center;
  z-index: 9999;
  opacity: 0.6;
  -webkit-opacity: 0.6;
  -moz-opacity: 0.6;
  background-size: 70px;
}

#container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

#content h1 {
  font-size: 40px;
  font-weight: 600;
  margin: 0 0 50px 0;
}

.modal .modal-dialog .modal-content {
  border: none;
  border-radius: 30px;
  padding: 50px;
}

.modal .modal-dialog .modal-header {
  padding: 0;
  border: none;
  margin: 0 0 30px 0;
}

.modal .modal-dialog .modal-body {
  padding: 0 0 0 0;
}

.modal .modal-dialog .modal-body form {

}

.modal .modal-dialog .modal-body form input[type="text"],
.modal .modal-dialog .modal-body form select {
  padding: 10px 15px;
}

.modal .modal-dialog .modal-body .form-group {
  margin: 0 0 30px 0;
}

.modal .modal-dialog .modal-body .help-block {
  position: absolute;
  color: #ab0000;
  top: 0;
  right: 0;
  font-size: 12px;
  font-weight: 300;
}

.site-login #login-form {
  text-align: center;
}

.site-login #login-form .form-group {
  width: 400px;
  margin: 0 auto 30px auto;
}

.site-login #login-form .form-group label {
  display: block;
  margin: 0 0 5px 0;
}

.site-login #login-form .form-group input[type=text],
.site-login #login-form .form-group input[type=password] {
  display: block;
  width: 100%;
  margin: 0 auto;
  border: 1px solid #c1c1c1;
  padding: 10px 20px;
  border-radius: 20px;
}

.site-login #login-form .form-group button {
}

.form-control:focus {
  box-shadow: none;
}

a.link-blue:link,
a.link-blue:visited {
  color: #1D5AF3;
}

a.link-blue:hover {
  text-decoration: none;
}

.btn.btn-black {
  background-color: #222;
  color: #fff;
  transition: 0.2s ease-in-out;
  position: relative;
  border: none;
  z-index: 99;
}

.btn.btn-black:hover {
  background-color: #000;
}

header {
  flex: 0 0 auto;
  margin: 20px 100px 0 100px;
}

#content {
  flex: 2;
  margin: 40px 100px 100px 100px;
}

header > div {
  display: flex;
  align-items: center;
  border-top: 1px solid rgba(0,0,0,0.2);
  border-bottom: 1px solid rgba(0,0,0,0.2);
  padding: 20px 0;
}

header > div.topmenu {
  padding: 0;
  border: none;
}

header .logotype {
  background-image: url(../images/logotype_full.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto 100%;
  width: 160px;
  height: 80px;
}

header .account {
  margin: 0 0 0 auto;
  /* display: flex; */
  /* align-items: center; */
  font-size: 16px;
}

header .account {
  margin: 0 0 0 auto;
  font-size: 16px;
  text-align: right;
}

header .account[data-guest="1"] {
  flex-wrap: nowrap;
}

header .account span {
  color: #999;
  display: inline-block;
  padding: 0 8px;
}

header .account[data-guest] .btn {
  padding: 0px 15px;
  font-size: 12px;
  margin: 10px 0 0 0;
}

header .account[data-guest="1"] .btn {
  padding: 0.375rem 0.75rem;
  margin: 0 0 0 0;
}

header .topmenu {
  display: flex;
}

header .topmenu nav {
  margin: 10px 0 0 auto;
  padding: 0;
  background-color: transparent!important;
}

header .topmenu nav > .container {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
}

header .topmenu nav > .container .nav-item {
  margin: 0 20px 0 0;
  font-size: 13px;
}

header .topmenu nav > .container .nav-item:last-of-type {
  margin: 0;
}

header .topmenu nav > .container .nav-link {
  padding: 0 0 0 0;
  color: #222;
  text-decoration: none;
}

header .topmenu nav > .container .nav-link:hover {
  text-decoration: underline;
}

footer {
  flex: 0 0 auto;
  background-color: #222;
  color: #fff;
  text-align: center;
  padding: 30px 0;
}

footer > div {
  margin: 0 100px;
  display: flex;
}

footer .copyrights {
  font-size: 13px;
  margin: 0;
  color: rgba(255,255,255,0.5);
}

.site-register {}

.site-register form {
  display: block;
  margin: 0 auto;
}

.site-register form .field-signupform-username,
.site-register form .field-signupform-email,
.site-register form .field-signupform-password,
.site-register form .field-signupform-confirm_password {
  width: 50%;
  display: block;
}

.site-register form .form-group.submits {
  margin: 50px 0 0 0;
}

.site-reports {}

.site-accountment .tab-content,
.site-reports .tab-content,
.site-orders-config .tab-content {
  margin: 30px 0 0 0;
}

.site-accountment form label {
  display: block;
}

.site-accountment .tab-content h2,
.site-reports .tab-content h2,
.site-orders-config .tab-content h2 {
  width: 100%;
  font-size: 25px;
  font-weight: bold;
  margin: 0 0 30px 0;
}

.site-accountment .tab-content h2 {
  padding: 0 0 0 40px;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 30px auto;
}

.site-accountment .tab-content h2.kaspi {
  background-image: url(../images/kaspikz.svg);
}

.site-accountment .tab-content h3,
.site-reports .tab-content h3 {
  font-size: 20px;
  font-weight: bold;
  margin: 0 0 30px 0;
}

.site-reports .tab-content form[name="marketing-report-cpc-projects"] {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.site-reports .tab-content form[name="marketing-report-cpc-projects"] select option[value=""]{
  color: #999;
}

.site-reports .tab-content .cpc-projects-list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.site-reports .tab-content .cpc-projects-list .title {
  font-weight: bold;
}

.site-reports .tab-content .cpc-projects-list .type {
  font-size: 12px;
}

.site-reports .tab-content .cpc-projects-list .remove-cpc-project {
  font-size: 8px;
}

.site-reports .tab-content #marketing-cpc-data-issue-form .weekly-row,
.site-reports .tab-content #marketing-data-issue-form .weekly-row {
  display: flex;
  gap: 20px;
}

.site-reports .tab-content #marketing-cpc-data-issue-form .weekly-row input,
.site-reports .tab-content #marketing-data-issue-form .weekly-row input {
}

body .gmi-picker-panel .gmi-month-table td .cell {
  position: relative;
}

body .gmi-picker-panel .gmi-month-table td .status {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: transparent;
}

body .gmi-picker-panel .gmi-month-table td .status::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 0;
  border-left: none;
  border-right: 10px solid transparent;
  right: auto;
  left: 0;
}

body .gmi-picker-panel .gmi-month-table td .status.status-ok {
  border: 1px solid #5ac500;
}

body .gmi-picker-panel .gmi-month-table td .status.status-ok::before {
  border-top: 10px solid #5ac500;
}

body .gmi-picker-panel .gmi-month-table td .status.status-notok {
  border: 1px solid #e6cb06;
}

body .gmi-picker-panel .gmi-month-table td .status.status-notok::before {
  border-top: 10px solid #e6cb06;
}

.site-reports .tab-content #marketingReport label .statuses {
  font-size: 12px;
  color: #666;
  margin: 10px 0 0 0;
}

.site-reports .tab-content #marketingReport label .statuses span {
  margin: 0 10px 0 0;
}

.site-reports .tab-content #marketingReport label .statuses span::before {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  margin: 0 2px 0 0;
}

.site-reports .tab-content #marketingReport label .statuses span.ok::before {
  background-color: #5ac500;
}

.site-reports .tab-content #marketingReport label .statuses span.notok::before {
  background-color: #e6cb06;
}

.site-reports .tab-content #incomeBrandsReport .months-data {
  margin: 40px 0 0 0;
}

.site-reports .tab-content #incomeBrandsReport .monthes-values {
}

.site-reports .tab-content #incomeBrandsReport .monthes-values h3 {
  width: 100%;
}

.site-reports .tab-content #incomeBrandsReport .monthes-values > div {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}

.site-reports .tab-content #incomeBrandsReport .monthes-values .month label {
  display: block;
}

.site-reports .tab-content #incomeBrandsReport .monthes-values .month {
  width: calc(10% - 40px);
  flex: 0 0 calc(10% - 40px);
}

.site-reports .tab-content #incomeBrandsReport .monthes-values .month input {
  width: 100%;
}

.site-reports .tab-content #incomeBrandsReport .months-data .submits {
  margin: 50px 0 0 0;
}

.site-orders-config form[name="order-config"]{
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.site-orders-config .form-group.submits {
  width: 100%;
}

.site-orders-config .form-group .hint {
  font-size: 12px;
  color: #999;
  margin: 5px 0 0 5px;
}

#content .nav-tabs {
    margin-top: 20px;
}

#content .nav-item {
    border-bottom: 2px solid #e5e5e5;
    margin-bottom: 20px;
}

#content .nav-item .nav-link {
    padding: 10px 18px;
    margin-right: 6px;
    border-radius: 8px 8px 0 0;
    background: #f4f6f8;
    color: #333;
    font-weight: 500;
    transition: all .2s ease;
}

#content .nav-item .nav-link:hover {
    background: #e9ecef;
    color: #000;
}

#content .nav-item .nav-link.active {
    background: #ffffff;
    border-color: #dee2e6 #dee2e6 #fff;
    color: #198754;
    font-weight: 600;
}

#content .tab-pane {
    padding: 20px;
    background: #ffffff;
    border: 1px solid #dee2e6;
    border-radius: 0 8px 8px 8px;
}

#content .tab-pane h2 {
    margin-top: 0;
    margin-bottom: 15px;
    font-size: 20px;
    border-bottom: 1px solid #eee;
    padding-bottom: 8px;
}
