/**
 * FoodCoopShop - The open source software for your foodcoop
 *
 * Licensed under the GNU Affero General Public License version 3
 * For full copyright and license information, please see LICENSE
 * Redistributions of files must retain the above copyright notice.
 *
 * @since         FoodCoopShop 1.0.0
 * @license       https://opensource.org/licenses/AGPL-3.0
 * @author        Mario Rothauer <office@foodcoopshop.com>
 * @copyright     Copyright (c) Mario Rothauer, https://www.rothauer-it.com
 * @link          https://www.foodcoopshop.com
 */
body {
    margin: 0px 5px 15px 0px;
    font-size: 11pt;
}

#container {
    position: relative;
    min-width: 1234px; /* 1074px + navi width 155 + border 5px */
    display: none;
}

body.customers.login #content {
    width: 100%;
}
body.pages.home .filter-container {
    display: none;
}
body.pages.home #content {
    border: none;
}
#home {
    width: 100%;
    text-align: center;
}
#home h1 {
    color: #333;
    padding: 10px;
    border-radius: 10px;
    background-color: #fff;
    width: 260px;
    margin: 0 auto;
}
#flashMessage {
    left: 470px;
    top: 42px;
}
body.blog_posts.add #flashMessage,
body.blog_posts.edit #flashMessage,
body.pages.add #flashMessage,
body.pages.edit #flashMessage,
body.categories.add #flashMessage,
body.categories.edit #flashMessage,
body.attributes.add #flashMessage,
body.attributes.edit #flashMessage,
body.configurations.edit #flashMessage,
body.manufacturers.add #flashMessage,
body.manufacturers.edit #flashMessage,
body.manufacturers.profile #flashMessage,
body.customers.profile #flashMessage,
body.customers.change_password #flashMessage,
body.taxes.add #flashMessage,
body.taxes.edit #flashMessage {
    top: 3px;
}
#content {
    width: 1074px;
    margin-top: 5px;
    line-height: 20px;
    float: left;
    margin-left: 155px;
    min-height: 500px; /* hack for mobile with little content */
    background-color: #fff;
    border: 1px solid #efefef;
    border-top: none;
    border-bottom-right-radius: 15px;
    position: relative;
}
body.pages.home #content {
    background: transparent;
    background-color: rgba(255,255,255,0.15);
    margin-top: 0;
    border-left-color: transparent;
}
#content-logo {
    margin: 10px 0 15px -5px;
}
a.btn-outline-light.help {
    color: #f3515c;
}
.input.select, .input.checkbox, .input.text {
    display: inline-block;
    margin-bottom: 3px;
}
.checkbox input[type="checkbox"] {
    margin-left: 0; /* bootstrap overwrite */
    position: inherit;
    margin-right: 5px;
    float: left;
    margin-top: 1px;
}
.checkbox label {
  padding-left: 5px;
  padding-right: 5px;
}
form.fcs-form .bootstrap-select {
    width: 250px ! important;
}
#menu {
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    background-color: #fff;
    min-height: 500px;
}
.vertical.menu {
    width: 155px;
}
.vertical.menu > li a img.logo {
    padding: 0;
    border: none;
}
.vertical.menu li.has-icon a,
.vertical.menu li a.has-icon {
    padding-left: 26px;
}
.vertical.menu li.has-children ul a {
    padding-left: 33px;
}
.vertical.menu li.has-children ul a i.fas {
    font-size: 13px;
    left: 13px;
    top: 6px;
}
.vertical.menu a {
    border-right: none;
}
.vertical.menu li.footer {
  padding: 5px 10px;
  font-size: 12px;
  word-break: break-word;
}
#logo {
    position: absolute;
    right: 20px;
    top: 10px;
}
span.name-for-dialog,
span.quantity-for-dialog,
span.product-amount-for-dialog,
span.price-for-dialog,
span.purchase-price-for-dialog,
span.purchase-price-for-dialog,
span.unit-purchase-price-for-dialog,
span.unit-price-for-dialog,
span.deposit-for-dialog,
span.categories-for-dialog,
span.tax-for-dialog,
span.product-price-for-dialog,
span.product-quantity-for-dialog,
span.delivery-rhythm-for-dialog,
span.quantity-in-units,
span.customer-name-for-dialog,
i.always-available,
span.purchase-price,
span.product-name {
    line-height: 21px;
    margin-left: 3px;
}

span.purchase-price-list-element {
    margin-left: 3px;
}
span.purchase-price-list-element:after {
    content: ' /';
}
tr.main-product span.name-for-dialog {
    font-weight: 600;
    line-height: 24px;
}
span.categories-for-dialog {
    font-style: italic;
    font-size: 11px;
}
span.is-declaration-ok-wrapper,
span.product-declaration-header {
  float: right;
  margin-left: 3px;
}
td.is-stock-product i.fas.no-button {
    margin-left: 3px;
}
span.is-declaration-ok-wrapper .fa-times,
td.is-stock-product .fa-times,
td.amount .fa-times {
    color: #f3515c;
}

.filter-container {
    position: fixed;
    left: 155px;
    top: 0px;
    padding: 5px;
    background: #efefef;
    width: 1074px; /* be aware of table border if scrolled */
    z-index: 100;
    border: 1px solid #efefef;
    border-top: none;
}
.filter-container-not-fixed {
  float: left;
  width: 1035px;
}
.filter-container .right,
.filter-container-not-fixed .right {
    float: right;
}
.filter-container .right .icons,
.filter-container-not-fixed .right .icons {
    float: left;
    margin-bottom: 3px;
}
.filter-container .right a.submit,
.filter-container .right a.cancel {
   float: left;
   margin-right: 5px;
}
#content .form-buttons {
    clear: both;
    float: right;
    margin-right: 10px;
    margin-bottom: 10px;
}
#content .form-buttons a {
    float: left;
    margin-left: 3px;
}

.filter-container h1 {
    float: left;
    margin-top: 5px;
    margin-bottom: 0;
    margin-right: 5px;
    font-size: 23px;
}
.filter-container input[type="text"] {
    padding: 4px 6px;
    border-radius: 4px;
    font-size: 14px;
}
body.products.index .filter-container div.input.select {
  margin-right: 4px;
}
body.products.index td.status {
    text-align: center;
    width: 49px;
}
body.products.index td.status .fa-exclamation {
    margin-left: 3px;
}
td.right,
th.right {
    text-align: right;
}
td.center,
th.center {
    text-align: center;
}

td span.barcode-for-dialog,
td span.description-short-for-dialog,
td span.description-for-dialog,
td span.storage-location-for-dialog {
    display: none;
}

.bottom-button-container {
    float: right;
    margin: 10px 10px 7px 0;
}
.bottom-button-container .btn {
    float: right;
    margin-left: 3px;
    margin-bottom: 5px;
}
#customers-list input:not(.datepicker):not(.form-control) {
    width: 35px;
    text-align: center;
}
input.datepicker {
    width: 110px;
    text-align: center;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    top: 5px;
}
.ui-datepicker .ui-datepicker-prev-hover {
    left: 2px;
}
.ui-datepicker .ui-datepicker-next-hover {
    right: 2px;
}
.warning {
    color: var(--not-ok-red);
}
.ui-widget {
    font-family: 'Open Sans';
}

.tooltipster-content ul {
    margin-bottom: 0;
}
.tooltipster-content li.negative {
    color: var(--not-ok-red);
}
.tooltipster-content .credit-balance-wrapper {
    margin-top: 10px;
    float: left;
    clear: both;
    width: 100%;
    margin-bottom: 0;
}
.tooltipster-content li,
#content ul.help-text-wrapper li {
    margin-left: 20px;
    margin-top: 0px;
    list-style: disc;
}
.last-n-days-dropdown,
.categories-checkboxes,
.tax-dropdown-wrapper,
.purchase-price-tax-dropdown-wrapper,
.storage-location-dropdown-wrapper,
.delivery-rhythm-dropdown-wrapper {
    display: none;
}
.date-dropdown-placeholder select {
    width: 300px;
}
body.order_details.index .pickup-day-filter-wrapper {
    display: flex;
    float: left;
    width: 270px;
    gap: 3px;
    align-items: baseline;
}
body.order_details.index .pickup-day-filter-wrapper.two-pickup-days {
    width: 330px;
}
body.order_details.index .weekday-as-name {
    text-align: right;
    flex-grow: 1;
}
body.order_details.index .add-payment-deposit-button-wrapper {
  float: left;
  margin-right: 3px;
}
body.order_details.index .product-feedback-button,
body.order_details.index .order-detail-product-name-edit-button {
    margin-right: 3px;
}
body.order_details.index i.product-feedback-button {
    margin-left: 3px;
    margin-right: 5px;
}
body.order_details.index td.date-short2,
body.orders.index td.date-short2 {
    width: 100px;
}
body.order_details.index a.change-products-picked-up-button {
    width: 64px;
    text-align: left;
}
.product-attributes-dropdown {
    width: 400px;
}
body.products.index table.list .unity-for-dialog, /* do not apply in dialogs! */
body.products.index table.list .quantity-in-units {
    font-size: 11px;
    font-style: italic;
}
body.products.index .toggle-sync-button-wrapper {
  float: left;
  margin-right: 3px;
}
body.configurations.index td.sync-domain-list a.btn {
  float: right;
}
body.configurations.index td {
    word-break: break-word;
}

#actionLogs div.changed {
    background: lightgray;
    padding: 10px;
    margin-bottom: 10px;
}
#actionLogs table.list tr.warn {
    background-color: #800080;
    color: white;
}
#actionLogs table.list tr.fail {
    background-color: #C00000;
    color: white;
}
#actionLogs table.list td.text {
    word-break :break-word;
    min-width: 500px;
}
#manufacturer-profile .input {
    float: left;
}
#manufacturer-profile .input label {
    float: left;
    line-height: 31px;
}
#manufacturer-profile .input.textarea label {
    margin-right: 10px;
    width: 100%;
}

#manufacturer-profile label[for="ManufacturerDescription"] {
    float: none;
}

#manufacturer-profile .input {
    margin-right: 10px;
}
#manufacturer-profile .input input[type="text"],
#manufacturer-profile .input input[type="email"] {
    width: 400px;
    margin-left: 10px;
}
#manufacturer-profile form {
    width: 802px;
    padding: 0 10px;
}
form div.error-message {
    margin-left: 220px;
}
.overlay-info {
    color: var(--not-ok-red);
    font-weight: 600;
    font-size: 14px;
}
#labelUnity span {
    font-weight: normal;
    font-size: 12px;
}
#add-payment-button-wrapper {
    margin-bottom: 10px;
    clear: both;
}
body.payments.product #add-payment-button-wrapper {
    margin-top: 8px;
}
.add-button-wrapper {
    float: left;
    margin-right: 3px;
    margin-bottom: 3px;
}
body.order_details #add-instant-order-button-wrapper.bottom {
    float: left;
}
body.order_details #add-instant-order-button-wrapper div.select,
body.order_details #add-self-service-order-button-wrapper div.select {
    display: none;
}
body.order_details td .pickup-day-comment-edit-button.btn-disabled i.fas,
body.customers.index td .customer-comment-edit-button.btn-disabled i.fas,
body.customers.index td i.not-activated {
  opacity: 0.3;
}
body.manufacturers.index a.edit-link,
body.customers.index a.edit-link {
    float: left;
    margin-right: 3px;
}
body.order_details.index td a.pickup-day-comment-edit-button {
  float: left;
  margin-right: 5px;
}
.add-payment-form {
    display: none;
}
.add-payment-form .multiple-checkbox-wrapper {
    margin-bottom: 20px;
    float: left;
    width: 480px;
}
.add-payment-form .multiple-checkbox-wrapper .input > label {
    display: none;
}
.add-payment-form .checkbox {
    margin-bottom: 3px;
}
.add-payment-form .checkbox label {
    margin-left: 3px;
}
#blogPostEditForm .blog-post-image-wrapper {
    float: left;
}
#blogPostEditForm .blog-post-image-wrapper span {
    float: left;
    width: 400px;
    margin-left: 10px;
}
.radio, .checkbox {
    margin-top: 0 ! important;
    margin-bottom: 0;
}

.customer-comment-read-button-wrapper {
    float: left;
    margin-left: 10px;
}
.table-cell-wrapper {
    float: right;
}
body.products.index .table-cell-wrapper.price {
    width: 85px;
    text-align: right;
}
body.products.index .table-cell-wrapper.deposit {
    width: 61px;
    text-align: right;
}
body.order_details.index .table-cell-wrapper.price {
    width: 80px;
}
.table-cell-wrapper.amount {
    width: 50px;
}
.table-cell-wrapper.group {
    width: 110px;
}
.table-cell-wrapper.group span {
    margin-left: 3px;
}
.cell-surcharge {
    text-align: center;
}
table.list td.amount > .has-separator:after {
    content: ' / ';
}
#manufacturer-options-edit-form h3 {
    margin-top: 15px;
}
#manufacturer-options-edit-form label {
    width: 400px;
    float: left;
    margin-top: 10px;
    font-weight: normal;
}
#manufacturer-options-edit-form select {
    float: right;
    margin-top: 10px;
    width: 170px;
}
#manufacturer-options-edit-form input[type="text"] {
    float: right;
    width: 50px;
    margin-top: 5px;
}
#manufacturer-options-edit-form label.full-width,
#manufacturer-options-edit-form input.full-width {
    width: 100%;
}
body.payments.product table.list,
body.payments.overview table.list,
body.payments .bottom-button-container,
body.payments h2 {
    width: 650px;
}
body.payments.product h2.personal-transaction-code {
    margin-top: 10px;
}
body.payments .bottom-button-container {
    float: left;
    text-align: right;
}

#customer-group-edit-form {
    margin-top: 10px;
}
#product-deposit-edit-form input[type="text"] {
    margin-bottom: 5px;
    margin-right: 5px;
    text-align: right;
    width: 70px;
}
#product-is-stock-product-edit-form label.checkbox {
    font-weight: normal;
    clear: both;
    margin-bottom: 10px;
    width: 100%;
}
#product-is-stock-product-edit-form label.checkbox input {
    position: static;
    float: left;
    width: 20px;
    height: 20px;
}
#product-is-stock-product-edit-form input {
    float: right ! important;
}
#order-detail-pickup-day-edit-form .field-wrapper {
    width: 100%;
    float: left;
    margin-top: 5px;
}
.btn:not(.dropdown-toggle):not(.btn-close),
.btn.dropdown-toggle {
    padding: 4px 6px 3px 6px;
    font-size: 14px;
}
form.fcs-form {
    padding: 10px;
}
h2 {
    font-size: 20px;
    border-bottom: 1px solid #dfdfdf;
    padding-bottom: 5px;
}
h2 span {
    font-size: 12px;
    color: #333;
    font-weight: normal;
}
.fcs-form h2:not(:nth-of-type(1)) {
    margin-top: 25px;
}
form.fcs-form .input {
    float: left;
    clear: both;
    margin-bottom: 10px;
}
form.fcs-form label {
    width: 220px;
    font-weight: normal ! important;
    vertical-align: top;
    line-height: 19px;
    margin-top: 4px;
    float: left;
}
form.fcs-form .description {
  clear: both;
  float: left;
  margin-left: 220px;
  margin-bottom: 10px;
}
form.fcs-form .input.textarea label {
    float: none;
}
form.fcs-form .input.checkbox label {
    padding-left: 0;
    width: 250px;
}
form.fcs-form .input.checkbox input {
    float: right;
}
form.fcs-form input[type="checkbox"] {
    left: 200px;
}
body.customers .delete-customer-button {
    float: left;
    clear: both;
    margin-bottom: 15px;
    margin-top: 15px;
}
body.customers .generate-my-member-card-button {
    float: left;
    clear: both;
    margin-bottom: 15px;
    margin-top: 15px;
}
body.configurations.index td.first {
    vertical-align: top;
    width: 450px;
    font-weight: 600;
}
body.configurations.index td.first div.small {
    font-weight: normal;
    font-size: 13px;
    line-height: 17px;
    float: left;
    padding-bottom: 4px;
}
body.configurations.edit form.fcs-form label {
    width: 100%;
    font-weight: bold ! important;
}
body.configurations.edit form.fcs-form label .small {
    font-weight: normal ! important;
}
body.configurations.edit form div.error-message {
    margin-left: 0;
}
form.fcs-form .input.text input,
form.fcs-form .input.email input,
form.fcs-form .input.tel input,
form.fcs-form .input.password input {
    width: 270px;
    font-size: 14px;
}
form.fcs-form .input input.long {
    width: 562px;
}
form.fcs-form .input input.short {
    width: 30px;
    text-align: center;
}
form.fcs-form .small {
    line-height: 17px;
    float: left;
    font-size: 13px;
}
form.fcs-form .checkbox .small {
    line-height: 16px;
    float: left;
    max-width: 280px;
    margin-top: 7px;
}
form.fcs-form .checkbox .small.multiple-lines {
    line-height: 21px;
}
form.fcs-form .input.text .after.small,
form.fcs-form .input.number .after.small,
form.fcs-form .input.tel .after.small,
form.fcs-form .input.select .after.small,
form.fcs-form .input.fcs-upload .after.small,
form.fcs-form .input.time .after.small {
    float: right;
    line-height: 28px;
    margin-left: 5px;
}
div.date-field-wrapper {
    position: relative;
    float: left;
    margin-right: 3px;
}
ul.nav-tabs {
    background: #efefef;
    width: 1072px;
    padding-bottom: 1px;
}
ul.nav-tabs > li > a {
    padding: 5px 10px;
    float: left;
    color: #333 ! important;
}
ul.nav-tabs a:hover,
ul.nav-tabs li.active a {
    background-color: #fff;
    text-decoration: underline ! important;
}
a.btn-arrow {
    display: inline-block;
    position: absolute;
    top: 5px;
    color: #ccc ! important;
    width: 15px;
}
a.btn-previous-day {
    right: 94px;
}
a.btn-previous-day:nth-of-type(1) {
    left: 1px;
}
a.btn-next-day {
    right: 5px;
}
a.btn-next-day:nth-of-type(2) {
    left: 90px;
}
a.btn-arrow i {
    font-size: 15px;
}

body.customers.index #selectgroupid,
body.customers.index span.group-for-dialog {
    display: none;
}
body.attributes.index table.list td {
    padding-top: 3px;
    vertical-align: top;
}
body.attributes.index table.list td .toggle-link {
    margin-bottom: 0px;
}
body.customers.index .customer-details-wrapper,
body.manufacturers.index .manufacturer-details-wrapper {
    position: absolute;
    right: 5px;
    top: 3px;
}
body.customers.index td.name,
body.manufacturers.index td.name {
    position: relative;
    min-width: 260px; /* width does not work on mobile */
}
body.manufacturers.index td.name {
    vertical-align: top;
}
body.customers.index span.name,
body.manufacturers.index span.name {
    float: left;
    width: 201px;
}
body.deposits table.list,
body.deposits .bottom-button-container {
    width: 500px;
}
body.deposits .bottom-button-container {
    float: left;
    text-align: right;
}
body.deposits .add-payment-deposit-wrapper {
    float: left;
    width: 100%;
    margin-top: 10px;
    margin-bottom: 10px;
}
body.taxes.index table.list,
body.slider.index table.list {
    width: 400px;
}
body.storage_locations.index table.list {
    width: 400px;
}
.accept-updated-terms-of-use-form {
    width: 800px;
    margin: 0 auto;
    margin-top: 20px;
    float: none;
    text-align: left;
    height: 155px;
}
body.payments tr.last-row-of-year td {
    border-top-width: 3px;
    border-top-color: #a8a8a8;
    border-top-style: solid;
}
body.payments i.payment-approval,
body.reports.payment i.payment-approval {
    float: left;
    margin-top: 4px;
    margin-right: 2px;
}
body.payments .payment-approval-comment,
body.reports.payment .payment-approval-comment {
    float: left;
    margin-right: 2px;
}
body.reports.payment form#csv-upload {
    padding: 10px 0 5px 10px;
    border-bottom: 1px solid #efefef;
}
body.reports.payment form#csv-upload label {
    margin-right: 10px;
    font-weight: 600;
}
body.reports.payment form#csv-records {
    padding-bottom: 40px;
    margin-top: -20px;
}
body.reports.payment form#csv-records table.list {
    margin-top: 20px;
    margin-bottom: 10px;
}
body.reports.payment form#csv-records .bootstrap-select.select-member {
    width: 270px ! important;
}
body.reports.payment form#csv-records .error-message {
    margin-left: 0;
}
body.reports.payment form#csv-records tr.not-selected {
    background-color: #EBEBEB;
}
body.reports.payment form#csv-records tr.not-selected .error-message {
    display: none;
}
body.reports.payment form#csv-records tr.not-selected,
body.reports.payment form#csv-records tr.not-selected span,
body.reports.payment form#csv-records tr.not-selected select {
    text-decoration: line-through;
}
body.reports.payment form#csv-records .checkbox label {
    margin-bottom: 0;
    margin-top: 6px;
}
body.reports.payment form#csv-records button {
    float: right;
}
body.payments.edit form {
    width: 100%;
    float: left;
}
body.payments.edit form p,
body.order_details.edit_purchase_price form p {
    float: left;
    clear: both;
    margin-bottom: 0;
}
body.payments.edit form p span {
    float: left;
    margin-bottom: 5px;
}
body.payments.edit .email-template-info {
    float: left;
    margin-left: 3px;
}
body.manufacturers .holiday-wrapper {
  float: left;
  width: 100%;
  margin-bottom: 10px;
}
body.manufacturers .holiday-wrapper div.date-field-wrapper {
  float: left;
}
label[for="groupbycustomer"] {
    padding-left: 0;
}
i.fa-fw.far.fa-money-bill-alt {
    margin-right: 3px;
}

body.deposits.overview_diagram table th,
body.deposits.overview_diagram table td {
    text-align: right;
}
body.invoices table.invoices-table {
    width: 1008px;
    margin-bottom: 15px;
}
body.invoices table.invoices-table th:nth-child(1) {
    width: 98px;
}
body.invoices table.invoices-table th:nth-child(8) {
    width: 110px;
}
body.invoices table.invoices-table th {
    word-break: normal;
}
body.invoices table.tax-sum-table {
    width: 600px;
}
body.invoices table.tax-sum-table th,
body.invoices table.tax-sum-table td {
    text-align: right;
    width: 150px;
}
body.invoices h4 {
    margin-top: 20px;
}
body.invoices tr.data.cancelled {
    text-decoration: line-through;
}
body.action_logs.index tr.data div.changed img {
    max-width: 100%;
}
body.feedbacks textarea,
body.feedbacks form div.error-message {
    width: 500px;
}
body.feedbacks textarea {
    height: 190px;
    padding: 5px;
}
body.feedbacks form div.error-message {
    margin-top: -10px;
}
body.manufacturers .generate-order-lists-tooltip a.btn {
    text-align: left;
    text-decoration: none ! important;
}
body.products .product-import-wrapper {
    padding: 10px;
}
body.products .product-import-wrapper .input.file {
    display: inline;
}
body.products .product-import-wrapper > * {
    margin-bottom: 10px;
}
.dropdown {
    float: left;
}
.jodit-container {
    margin-bottom: 10px;
    float: right;
}
#cke_configurations-value {
    float: left;
}
.jodit-container {
    font-size: 14px;
}
.jodit-container ul {
    padding-left: 20px ! important;
}
.jodit-container ul,
.jodit-container ul li {
    list-style: disc;
}
.jodit-container ol,
.jodit-container ol li {
    list-style: decimal;
}
.jodit-container .jodit-add-new-line {
    display: none ! important;
}
.jodit-ui-input__input {
    width: 100% ! important;
    padding: 0 8px ! important;
}
/* fix path for packed css */
.elfinder-button-icon {
    background-image: url(/js/elfinder/img/toolbar.png);
}
.changelog-link a:not(.btn) {
    color: #333 ! important;
    position: fixed;
    right: 20px;
    bottom: 10px;
    font-size: 12px;
}
.changelog-content {
    padding: 20px;
    line-height: 1.7em;
}
.changelog-content h2 {
    margin-top: 40px;
    font-size: 22px;
    border-bottom: none;
    margin-bottom: -10px;
}
.changelog-content h3 {
    font-size: 16px;
    margin-top: 25px;
    font-weight: bold;
}