/* Customer-facing styles only apply inside the Perfex customer/authentication shells. */
body.customers,
body.customers-authentication {
  background: var(--tekomi-background);
  color: var(--tekomi-text);
  font-family: var(--tekomi-font);
  overflow-x: hidden;
}

body.customers a { color: var(--tekomi-action); transition: color var(--tekomi-transition); }
body.customers a:hover,
body.customers a:focus { color: var(--tekomi-action-hover); }
body.customers h1, body.customers h2, body.customers h3, body.customers h4, body.customers h5, body.customers h6 { color: var(--tekomi-text); }
body.customers #wrapper,
body.customers .main { background: var(--tekomi-background); }
body.customers footer { background: var(--tekomi-surface); border-top: 1px solid var(--tekomi-border); color: var(--tekomi-muted); }

body.customers .navbar,
body.customers .navbar.navbar-default { background-color: var(--tekomi-surface); border-color: var(--tekomi-border); border-radius: 0; box-shadow: var(--tekomi-shadow-sm); }
body.customers .navbar-brand,
body.customers .navbar-default .navbar-nav > li > a { color: var(--tekomi-text); }
body.customers .navbar-default .navbar-nav > .active > a,
body.customers .navbar-default .navbar-nav > li > a:hover,
body.customers .navbar-default .navbar-nav > li > a:focus { background: var(--tekomi-soft); color: var(--tekomi-action); }
body.customers .navbar-default .navbar-nav > li.customers-nav-item-login > a {
  align-items: center;
  background-color: var(--tekomi-action) !important;
  border-color: var(--tekomi-action) !important;
  color: #fff !important;
  display: inline-flex !important;
  justify-content: center;
  line-height: normal !important;
  min-height: 38px;
}
body.customers .navbar-default .navbar-nav > li.customers-nav-item-login > a:hover,
body.customers .navbar-default .navbar-nav > li.customers-nav-item-login > a:focus {
  background-color: var(--tekomi-action-hover) !important;
  border-color: var(--tekomi-action-hover) !important;
  color: #fff !important;
}
body.customers .navbar-toggle { border-color: var(--tekomi-border); min-height: 36px; }
body.customers .navbar-toggle:focus,
body.customers .navbar-toggle:hover { background: var(--tekomi-soft); }
body.customers .navbar .dropdown-menu { border-color: var(--tekomi-border); border-radius: var(--tekomi-radius-md); box-shadow: var(--tekomi-shadow-md); }

body.customers .panel_s,
body.customers .panel,
body.customers .card { background: var(--tekomi-surface); border: 1px solid var(--tekomi-border); border-radius: var(--tekomi-radius-lg); box-shadow: var(--tekomi-shadow-sm); }
body.customers .panel_s .panel-body,
body.customers .panel .panel-body { background: var(--tekomi-surface); border-radius: var(--tekomi-radius-lg); box-shadow: var(--tekomi-shadow-sm); }

body.customers .btn { border-radius: var(--tekomi-radius-sm); min-height: 38px; transition: background-color var(--tekomi-transition), border-color var(--tekomi-transition), box-shadow var(--tekomi-transition); }
body.customers .btn.btn-primary,
body.customers .btn-primary { background-color: var(--tekomi-action); border-color: var(--tekomi-action); color: #fff; }
body.customers .btn.btn-primary:hover,
body.customers .btn.btn-primary:focus,
body.customers .btn-primary:hover,
body.customers .btn-primary:focus { background-color: var(--tekomi-action-hover); border-color: var(--tekomi-action-hover); color: #fff; }
body.customers .btn:focus,
body.customers .btn.focus { box-shadow: var(--tekomi-focus-ring); outline: 2px solid var(--tekomi-action); outline-offset: 1px; }
body.customers .btn-default { background: var(--tekomi-surface); border-color: var(--tekomi-border); color: var(--tekomi-text); }

body.customers .form-control,
body.customers select,
body.customers .bootstrap-select > .dropdown-toggle { background: var(--tekomi-surface); border-color: var(--tekomi-border); border-radius: var(--tekomi-radius-sm); color: var(--tekomi-text); min-height: 38px; }
body.customers .form-control:focus,
body.customers select:focus,
body.customers .bootstrap-select > .dropdown-toggle:focus { border-color: var(--tekomi-action); box-shadow: var(--tekomi-focus-ring); outline: 2px solid var(--tekomi-action) !important; outline-offset: 1px; }
body.customers label,
body.customers .control-label { color: var(--tekomi-text); }

body.customers .table > thead > tr > th,
body.customers table.dataTable thead th { background-color: var(--tekomi-soft); border-bottom-color: var(--tekomi-border); color: var(--tekomi-text); }
body.customers .table > tbody > tr > td { border-top-color: var(--tekomi-border); }
body.customers .preview-top-wrapper { background: var(--tekomi-surface); border: 1px solid var(--tekomi-border); border-radius: var(--tekomi-radius-lg); box-shadow: var(--tekomi-shadow-sm); }

body.customers .submenu { border-bottom: 1px solid var(--tekomi-border); }
body.customers .submenu > li > a { color: var(--tekomi-muted) !important; }
body.customers .submenu .active > a,
body.customers .submenu > li > a:hover,
body.customers .submenu > li > a:focus { color: var(--tekomi-action) !important; }
body.customers .nav-tabs { border-bottom-color: var(--tekomi-border); }
body.customers .nav-tabs > li > a { border-radius: var(--tekomi-radius-sm) var(--tekomi-radius-sm) 0 0; color: var(--tekomi-muted); }
body.customers .nav-tabs > li.active > a { color: var(--tekomi-action); }
body.customers .project-overview,
body.customers .ticket-panel { border-radius: var(--tekomi-radius-md); }
body.customers .alert { border-radius: var(--tekomi-radius-sm); }
body.customers .alert-warning { background: var(--tekomi-warning-bg); border-color: #f3cfb5; color: var(--tekomi-warning-text); }
body.customers .alert-success { background: var(--tekomi-success-bg); border-color: var(--tekomi-success-border); color: var(--tekomi-success-text); }
body.customers .alert-info { background: var(--tekomi-info-bg); border-color: var(--tekomi-info-border); color: var(--tekomi-info-text); }
body.customers .alert-danger { background: var(--tekomi-danger-bg); border-color: var(--tekomi-danger-border); color: var(--tekomi-danger-text); }
body.customers .badge,
body.customers .label { border-radius: 999px; }
body.customers .modal-content { border: 0; border-radius: var(--tekomi-radius-lg); box-shadow: var(--tekomi-shadow-md); }

body.customers-authentication .login-panel,
body.customers-authentication .authentication-form,
body.customers.login .panel_s { background: var(--tekomi-surface); border: 1px solid var(--tekomi-border); border-radius: var(--tekomi-radius-lg); box-shadow: var(--tekomi-shadow-md); }

@media (max-width: 767px) {
  body.customers .content { padding-left: 15px; padding-right: 15px; }
  body.customers .navbar .container { max-width: 100%; width: auto; }
  body.customers .table-responsive { border: 0; }
  body.customers .btn,
  body.customers .form-control { min-height: 38px; }
}

@media (prefers-reduced-motion: reduce) {
  body.customers *, body.customers *::before, body.customers *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
