html {
  font-size: 14px;
}

:root {
  --bs-primary: #198754;
  --bs-primary-rgb: 25, 135, 84;
  --bs-link-color: #146c43;
  --bs-link-color-rgb: 20, 108, 67;
  --bs-link-hover-color: #0f5132;
  --bs-link-hover-color-rgb: 15, 81, 50;
  --idsales-success-soft: #d1e7dd;
  --idsales-success-border: #a3cfbb;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn-primary {
  --bs-btn-bg: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-bg: #157347;
  --bs-btn-hover-border-color: #146c43;
  --bs-btn-active-bg: #146c43;
  --bs-btn-active-border-color: #13653f;
  --bs-btn-disabled-bg: #198754;
  --bs-btn-disabled-border-color: #198754;
}

.btn-outline-primary {
  --bs-btn-color: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-bg: #198754;
  --bs-btn-hover-border-color: #198754;
  --bs-btn-active-bg: #146c43;
  --bs-btn-active-border-color: #146c43;
  --bs-btn-disabled-color: #198754;
  --bs-btn-disabled-border-color: #198754;
}

.pagination {
  --bs-pagination-active-bg: #198754;
  --bs-pagination-active-border-color: #198754;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.form-control:focus,
.form-select:focus,
.form-check-input:focus {
  border-color: var(--idsales-success-border);
}

.form-check-input:checked {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-select:focus,
.form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
}

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

body {
  margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

.implementation-timeline {
  display: grid;
  gap: 2rem;
}

.implementation-month {
  padding-top: 0.5rem;
  border-top: 2px solid var(--idsales-success-border);
}

.implementation-week {
  border: 1px solid var(--idsales-success-border);
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
}

.implementation-week-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem 1rem;
  background: var(--idsales-success-soft);
}

.implementation-delivered td {
  background-color: #f8fbf9;
  color: #5f6f66;
}

.implementation-calendar-table {
  table-layout: fixed;
  min-width: 1040px;
}

.implementation-calendar-table th {
  white-space: nowrap;
}

.implementation-calendar-date {
  width: 110px;
}

.implementation-calendar-customer {
  width: 170px;
}

.implementation-calendar-description {
  width: auto;
}

.implementation-calendar-quantity {
  width: 92px;
}

.implementation-calendar-term {
  width: 82px;
}

.implementation-calendar-delivery {
  width: 170px;
}

.implementation-calendar-document {
  width: 190px;
}

.document-lines-table {
  table-layout: fixed;
  min-width: 980px;
}

.document-lines-table th {
  white-space: nowrap;
}

.document-line-option {
  width: 230px;
}

.document-line-description {
  width: auto;
}

.document-line-quantity {
  width: 95px;
}

.document-line-price {
  width: 130px;
}

.document-line-delivery {
  width: 125px;
}

.document-line-actions {
  width: 105px;
}

.customer-documents-table {
  table-layout: fixed;
  min-width: 960px;
}

.customer-documents-table th {
  white-space: nowrap;
}

.customer-document-type {
  width: 180px;
}

.customer-document-number {
  width: 110px;
}

.customer-document-date {
  width: 105px;
}

.customer-document-amount {
  width: 130px;
}

.customer-document-comment {
  width: 175px;
}

.customer-document-status {
  width: 150px;
}

.customer-document-actions {
  width: 110px;
}

.customer-document-comment-cell {
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}

.documents-index-table {
  table-layout: fixed;
  min-width: 980px;
}

.documents-index-table th {
  white-space: nowrap;
}

.documents-index-type {
  width: 205px;
}

.documents-index-number {
  width: 110px;
}

.documents-index-document-date {
  width: 130px;
}

.documents-index-created {
  width: 150px;
}

.documents-index-amount {
  width: 135px;
}

.documents-index-status {
  width: 150px;
}

.documents-index-actions {
  width: 100px;
}

.document-details-lines-table {
  table-layout: fixed;
  min-width: 980px;
}

.document-details-lines-table th {
  white-space: nowrap;
}

.document-details-line-index {
  width: 55px;
}

.document-details-line-description {
  width: auto;
}

.document-details-line-quantity {
  width: 95px;
}

.document-details-line-price {
  width: 130px;
}

.document-details-line-total {
  width: 130px;
}

.document-details-line-delivery {
  width: 125px;
}

.document-details-line-status {
  width: 175px;
}

.document-details-support-lines-table {
  table-layout: fixed;
  min-width: 1100px;
}

.document-details-support-lines-table th {
  white-space: nowrap;
}

.document-details-support-index {
  width: 55px;
}

.document-details-support-description {
  width: auto;
}

.document-details-support-period {
  width: 160px;
}

.document-details-support-tariff {
  width: 120px;
}

.document-details-support-hours {
  width: 130px;
}

.document-details-support-overage {
  width: 160px;
}

.document-details-support-total {
  width: 155px;
}

.document-details-support-task-table {
  table-layout: fixed;
  min-width: 760px;
}

.document-details-support-task-label {
  width: 260px;
}

.document-details-support-task-value {
  width: auto;
}

.support-registry-table {
  table-layout: fixed;
  min-width: 1280px;
}

.support-registry-table th {
  white-space: nowrap;
}

.support-registry-customer {
  width: 190px;
}

.support-registry-document {
  width: 150px;
}

.support-registry-period {
  width: 170px;
}

.support-registry-manager {
  width: 160px;
}

.support-registry-kind {
  width: 130px;
}

.support-registry-hours-limit {
  width: 135px;
}

.support-registry-spent {
  width: 155px;
}

.support-registry-amount {
  width: 145px;
}

.support-registry-commission {
  width: 145px;
}

.support-registry-created {
  width: 110px;
}

.support-worklog-table {
  table-layout: fixed;
  min-width: 900px;
}

.support-worklog-table th {
  white-space: nowrap;
}

.support-worklog-date {
  width: 115px;
}

.support-worklog-time {
  width: 120px;
}

.support-worklog-description {
  width: auto;
}

.support-worklog-author {
  width: 180px;
}

.support-worklog-created {
  width: 150px;
}

.admin-users-table {
  table-layout: fixed;
  min-width: 980px;
}

.admin-users-table th {
  white-space: nowrap;
}

.admin-users-email {
  width: 230px;
}

.admin-users-name {
  width: 220px;
}

.admin-users-roles {
  width: 170px;
}

.admin-users-lock {
  width: 120px;
}

.admin-users-password {
  width: 180px;
}

.admin-users-actions {
  width: 160px;
}

.customers-index-table {
  table-layout: fixed;
  min-width: 980px;
}

.customers-index-table th {
  white-space: nowrap;
}

.customers-index-name {
  width: 340px;
}

.customers-index-inn {
  width: 135px;
}

.customers-index-address {
  width: auto;
}

.customers-index-actions {
  width: 110px;
}

.support-edit-lines-table {
  table-layout: fixed;
  min-width: 1180px;
}

.support-edit-lines-table th {
  white-space: nowrap;
}

.support-edit-description {
  width: auto;
}

.support-edit-tariff {
  width: 175px;
}

.support-edit-hours {
  width: 130px;
}

.support-edit-overage {
  width: 165px;
}

.support-edit-price {
  width: 150px;
}

.support-edit-actions {
  width: 105px;
}

.support-tariffs-admin-table {
  table-layout: fixed;
  min-width: 980px;
}

.support-tariffs-admin-table th {
  white-space: nowrap;
}

.support-tariff-admin-name {
  width: auto;
}

.support-tariff-admin-price {
  width: 150px;
}

.support-tariff-admin-hours {
  width: 145px;
}

.support-tariff-admin-overage {
  width: 150px;
}

.support-tariff-admin-one-time {
  width: 95px;
}

.support-tariff-admin-active {
  width: 95px;
}

.support-tariff-admin-actions {
  width: 120px;
}
