/* LOG IN FORM */

.login-form {
  width : 620px;
  margin : auto;
  border : 1px solid #333;
  border-bottom-width: 12px;
  text-align : center;
  padding : 15px 100px;
}
.login-form  {
  margin-bottom: 50px;
}
.login-form .form-group {
  text-align: left;
}
.login-result {
  width: 620px;
  padding: 15px;
  margin: 0 auto 15px;
  text-align: center;
}
.login-result p:last-child {
  margin-bottom: 0;
}
.login-result button {
  position: relative;
  top : -15px;
  left : 8px;
}

/* LAYOUT COMMON ELEMENTS */

#logo-bar {
  background : #000;
  padding : 5px 20px;
}

#footer {
  margin-top : 20px;
  border-top : 1px solid #333;
  text-align : center;
}

#menu {
  background : #e1e1e1;
}

a#logout {
  color : #333;
  font-size : 30px;
}

a:hover#logout {
  color : #000;
}

.submenu {
  padding : 5px;
  margin-bottom : 15px;
  background : #f0f0f0;
}

.submenu a {
  color : #333;
}

.submenu a:hover {
  color : #000;
}

.submenu .nav-item.active .nav-link {
  background : #333;
  color : #fff;
}

nav.navbar .login-info {
  font-size : .9rem;
  line-height : 1rem;
  margin-right : 1rem;
}

nav.navbar .nav-item .nav-link {
  display : inline-block;
  width : 70px;
  height : 70px;
  background : #333;
  color : #fff;
  border-radius : 10px;
  padding : 0;
  text-align : center;
  margin-right : 15px;
  border : 3px solid #333;
  transition: background-color 100ms linear;
}

nav.navbar .nav-item .nav-link:hover {
  background : #666;
}

nav.navbar .nav-item.active .nav-link {
  color : #333;
  background : #fff;
}

nav.navbar .nav-item .nav-link i,
nav.navbar .nav-item .nav-link i:before {
  font-size : 50px;
  line-height : 61px;
}
/* OTHER COMMON ELEMENTS */

.high-rotation-info {
  background : #e1f3d6;
  border : 1px solid #53d671;
  font-size : .8rem;
  padding : 10px;
}

tr.strike td, td.strike {
  text-decoration: line-through;
}

.toast.success {
  position: absolute;
  top: 10px;
  right: 10px;
  background-color: #e3f2e6;
  border-color: #c3e6cb;
  min-width : 300px;
}
.toast.success .toast-header {
  background-color: #d4edda;
  color : #000;
  font-weight : bold;
}

#errorMessageModal div.modal-body {
  padding : 0;
  border : 0;
}
.toast.error {
  background-color: #f7e5e7;
  border-color: #f5c6cb;
  border-width : 5px;
  color: #721c24;
  max-width: 100%;
}
.toast.error .toast-header {
  background-color: #f8d7da;
  color: #721c24;
  font-weight: bold;
}
.toast.error .toast-body {
  width: 100%;
}

.spinner-border {
  display: none;
}

.modal-backdrop.show + .modal-backdrop.show {
  opacity: 0;
}

button.btn-no-border {
  border-color : transparent;
}
/* USER: DASHBOARD */

div.dashboard-image {
  position : relative;
  width : 862px;
  height : 603px;
  margin : auto;
}

div.dashboard-image img {
  position : absolute;
  left : 0;
}

div.dashboard-image img:nth-child(1) { top : 0; }
div.dashboard-image img:nth-child(2) { top : 84px; }
div.dashboard-image img:nth-child(3) { top : 344px; }

/* USER: CART */

.table-categories {
  border-collapse : collapse;
  width : 100%;
  margin-bottom : 5px;
}

.table-categories tr {
  height : auto;
}

.table-categories th {
  text-align : center;
  font-weight : normal;
}

.table-categories th h2 {
  font-size : 1rem;
  border : 5px solid #000;
  padding : 5px 0;
  margin : 0;
}

.table-3m      th h2 { border-color : #f8bbd0; }
.table-festool th h2 { border-color : #c8e6c9; }
.table-ivat    th h2 { border-color : #bbdefb; }
.table-others  th h2 { border-color : #d1c4e9; }

.table-3m th h2 span {
  font-weight : bold;
  color : red;
}

.table-categories td {
  text-align: center;
  border: 1px solid #fff;
  cursor : pointer;
}

.table-3m      td { background : #f8bbd0; }
.table-festool td { background : #c8e6c9; }
.table-ivat    td { background : #bbdefb; }
.table-others  td { background : #d1c4e9; }

.table-categories td a {
  color : #000;
  text-decoration : none;
}

.table-categories td.active a {
  color : #000;
  font-weight : bold;
}

.table-categories td:hover a, .table-categories td a:hover {
  color : #000;
  font-weight : bold;
}

.product-list td {
  vertical-align : middle;
}

.product-list td:first-child {
  white-space : nowrap;
}

.product-list td:last-child {
  width : 7rem;
  text-align : right;
}

table.high-rotation {
  background : #ffa;
  font-size : 0.8rem;
  border-collapse : collapse;
  width : 100%;
  margin-bottom : 15px;
}

table.high-rotation td, table.high-rotation th {
  border : 1px solid #000;
  padding : 10px;
}

table.cart {
  font-size : 0.9rem;
}

table.cart th {
  text-align : center;
}

table.cart th.ref, table.cart th.desc {
  text-align : left;
}

table.cart td {
  vertical-align : middle;
}

table.cart form.qty-form label {
  display : none;
}

tr.high-rotation {
  background-color : #e1f3d6;
}

.discount-form label {
  display : none;
}

.discount-form input[type="text"] {
  width : 50px;
}

/* USER: UNCONFIRMED ORDERS TABLE */

table.unconfirmed-lines th, table.unconfirmed-lines td {
  vertical-align:  middle;
}
table.unconfirmed-lines form.qty-form label {
  display : none;
}
nav.unconfirmed-lines {
  margin-bottom : 15px;
}
nav.unconfirmed-lines form {
  display : inline-block;
  margin-right : 1em;
}

table.unconfirmed-lines td:nth-child(4),
table.unconfirmed-lines td:nth-child(5),
table.unconfirmed-lines td:nth-child(7)
{
  text-align : center;
}

table.unconfirmed-lines td:nth-child(6),
table.unconfirmed-lines td:nth-child(8),
table.unconfirmed-lines td:nth-child(9)
{
  text-align : right;
}

table.unconfirmed-lines.group-PSA td:nth-child(8) {
  text-align : center;
}
table.unconfirmed-lines.group-PSA td:nth-child(9) {
  text-align : left;
}

/* USER: PENDING AND COMPLETE ORDERS TABLES */

table.franchise-user-orders table th {
  border-top : 0;
  text-align: center;
}

table.franchise-user-orders  td {
  vertical-align : middle;
}

table.franchise-user-orders > tbody > tr:nth-child(even) {
  background : #f8f8f8;
}

table.franchise-user-orders td.action form {
  margin-bottom : 5px;
}

/* USER: PENDING AND COMPLETE ORDERS SUBTABLES */

table.order-subtable th:nth-child(2) {
  border-top : 0;
  text-align: left;
}

table.order-subtable td:first-child {
  width : 2rem;
  text-align : right;
}
table.order-subtable td:nth-child(2) {
  width : 3rem;
  text-align : left;
}
table.order-subtable td:nth-child(3) {
  width : 5rem;
  text-align : center;
}
table.order-subtable td:nth-child(4) {
  text-align : center;
}
table.order-subtable td:nth-child(5) {
  width : 5rem;
  text-align : left;
}
table.order-subtable td:nth-child(6) {
  text-align : left;
}
table.order-subtable td:nth-child(7) {
  width : 7rem;
  text-align: right;
}
table.order-subtable td:nth-child(8) {
  width : 5rem;
  text-align: center;
}
table.order-subtable td:nth-child(9) {
  width : 7rem;
  text-align: right;
}
table.order-subtable td:nth-child(10) {
  width : 7rem;
  text-align: right;
}

table.order-subtable.group-PSA td:nth-child(8) {
  text-align: center;
}
/* ADMIN: NEW ORDERS TABLE */

table.new-orders td, table.new-orders th {
  vertical-align: middle;
}
table.new-orders div.select-line {
  margin-right: -5px;
}
table.new-orders tr th:nth-child(1),
table.new-orders tr th:nth-child(2),
table.new-orders tr th:nth-child(3),
table.new-orders tr th:nth-child(5),
table.new-orders tr th:nth-child(6),
table.new-orders tr th:nth-child(7),
table.new-orders tr th:nth-child(9),
table.new-orders tr th:nth-child(10),
table.new-orders tr th:nth-child(11) {
  text-align : center;
}
table.new-orders tr th:nth-child(4),
table.new-orders tr th:nth-child(8),
table.new-orders tr th:nth-child(12) {
  text-align : left;
}

table.new-orders tr.full td:nth-child(1),
table.new-orders tr.full td:nth-child(2),
table.new-orders tr.full td:nth-child(3),
table.new-orders tr.full td:nth-child(5),
table.new-orders tr.full td:nth-child(6),
table.new-orders tr.full td:nth-child(7),
table.new-orders tr.full td:nth-child(9) {
  text-align : center;
}
table.new-orders tr.full td:nth-child(4),
table.new-orders tr.full td:nth-child(8),
table.new-orders tr.full td:nth-child(12) {
  text-align: left;
}

table.new-orders tr.full td:nth-child(10),
table.new-orders tr.full td:nth-child(11) {
  text-align: right;
}

table.new-orders tr.partial td:nth-child(1),
table.new-orders tr.partial td:nth-child(3) {
  text-align: center;
}
table.new-orders tr.partial td:nth-child(2) {
  text-align: left;
}
table.new-orders tr.partial td:nth-child(4),
table.new-orders tr.partial td:nth-child(5) {
  text-align: right;
}
table.new-orders .high-rotation {
  color: #62aa00;
  font-weight: bold;
  float : right;
}
table.new-orders > tbody > tr:nth-child(even) {
  background : #f8f8f8;
}

table.new-orders > tbody > tr.has-comments:nth-child(odd) {
  background : #ffffe0;
}

table.new-orders > tbody > tr.has-comments:nth-child(even) {
  background : #fafad2;
}

nav.new-lines {
  margin-bottom : 15px;
}
nav.new-lines form {
  display : inline-block;
  margin-right : 1em;
}

table.new-orders form.qty-form label {
  display : none;
}

/* ADMIN: ORDERS IN PROGRESS TABLE */

table.orders-in-progress th,
table.orders-in-progress td {
  vertical-align: middle;
}

table.orders-in-progress th {
  text-align: center;
}

table.orders-in-progress td[rowspan] {
  vertical-align: top;
  padding-top: 15px;
}

table.orders-in-progress div.select-line {
  margin-right: -5px;
}

table.orders-in-progress .high-rotation {
  color: #62aa00;
  font-weight: bold;
  float : right;
}
table.orders-in-progress tr.even {
  background : #f8f8f8;
}

table.orders-in-progress > tbody > tr.odd.has-comments {
  background : #ffffe0;
}

table.orders-in-progress > tbody > tr.even.has-comments {
  background : #fafad2;
}

table.orders-in-progress tbody button {
  transition: background-color 200ms;
}

table.orders-in-progress tbody button:hover {
  background : lightyellow;
}

nav.lines-in-progress form {
  display: inline-block;
  margin-right: 20px;
}

nav.lines-in-progress .custom-file {
  width : 20rem;
  vertical-align: middle;
}

.orders-in-progress-filters form {
  display : inline;
  white-space: nowrap;
}

.orders-in-progress-filters form label,
.orders-in-progress-filters form select,
.orders-in-progress-filters form button {
  display: inline;
  vertical-align: middle;
}

.orders-in-progress-filters form select {
  width : auto;
}

/* ADMIN: COMPLETE ORDERS */

table.complete-orders th,
table.complete-orders td {
  vertical-align: middle;
}

table.complete-orders th {
  text-align: center;
}

table.complete-orders td[rowspan] {
  vertical-align: top;
  padding-top: 15px;
}

table.complete-orders .high-rotation {
  color: #62aa00;
  font-weight: bold;
  float : right;
}
table.complete-orders tr.even {
  background : #f8f8f8;
}

table.complete-orders > tbody > tr.odd.has-comments {
  background : #ffffe0;
}

table.complete-orders > tbody > tr.even.has-comments {
  background : #fafad2;
}

/*
table.complete-orders tbody button {
  transition: background-color 200ms;
}

table.complete-orders tbody button:hover {
  background : lightyellow;
}
*/

nav.complete-lines form {
  display: inline-block;
  margin-right: 20px;
}

/*
nav.complete-lines-in-progress .custom-file {
  width : 20rem;
  vertical-align: middle;
}
*/

.complete-orders-filters form {
  display : inline;
  white-space: nowrap;
}

.complete-orders-filters form label,
.complete-orders-filters form select,
.complete-orders-filters form button {
  display: inline;
  vertical-align: middle;
}

.complete-orders-filters form select {
  width : auto;
}

/* USER: incidents */

table.incidents td {
  vertical-align: middle;
}

table.incidents .incident-date,
table.incidents .order-date {
  width : 7rem;
  text-align : center;
}

table.incidents .order-number {
  width : 3rem;
  text-align : center;
}

table.incidents .product-list {
  width : 35rem;
}

table.incidents .quantity {
  width : 3rem;
  text-align: center;
}

table.incidents .reference {
  width : 7rem;
  text-align: left;
}

table.incidents .product {
  width : 25rem;
  text-align: left;
}

table.incidents .address {
  width : 10rem;
  text-align: left;
}

table.incidents .action {
  width : 5rem;
  text-align: left;
}

/* USER: report */

table.report td {
  font-size : .9rem;
  vertical-align: middle;
}

table.report th {
  font-size: .9rem;
  vertical-align: middle;
  text-align: center;
}

table.report td.address {
  text-align : left;
  width : 8rem;
}

table.report td.order-number {
  text-align : center;
  width : 4rem;
}

table.report td.order-price {
  text-align : right;
  width : 6rem;
}

table.report td.order-date {
  text-align : center;
  width : 6rem;
}

table.report td.quantity {
  text-align : center;
  width : 5rem;
}

table.report .delivery-notes {
  text-align: center;
  padding : 0;
  width : 15rem;
  position : relative;
}

table.report .delivery-notes .delivery-note-number {
  text-align: center;
  width : 4rem;
}

table.report .delivery-notes .delivery-note-date {
  text-align: center;
  width : 7rem;
}

table.report .delivery-notes .delivery-note-qty {
  text-align: center;
  width : 4rem;
}

table.report .delivery-notes table {
  margin : 0;
  position : relative;
  width : 100%;
  height : 100%;
  top : 0;
  left : 0;
}

table.report td.delivered {
  text-align : center;
  width : 5rem;
}

table.report td.unit-price-before,
table.report td.unit-price-after,
table.report td.line-price-after {
  text-align : right;
  width : 5rem;
}

table.report td.baremo {
  text-align : center;
  width : 3rem;
}

table.report td.discount {
  text-align : center;
  width : 5rem;
}

table.report td.incidents {
  text-align : center;
  width : 7rem;
}

table.report .delivery-notes table tr:first-child td {
  border-top : 0;
}

table.report .delivery-notes table tr:last-child td {
  border-bottom : 0;
}

table.report .delivery-notes table tr td:first-child {
  border-left : 0;
}

table.report .delivery-notes table tr td:last-child {
  border-right : 0;
}

table.report > tbody > tr.even {
  background : #f8f8f8;
}

form.date-range {
  margin-left : 50px;
}
form.date-range label[for='date-from'] {
  padding-right : 10px;
}

form.date-range label[for='date-until'] {
  padding : 0 10px;
}

form.date-range button {
  margin-left : 20px;
}

/* ADMIN: incidents */

table.admin-incidents td {
  vertical-align: middle;
}

table.admin-incidents .incident-date,
table.admin-incidents .order-date {
  width : 7rem;
  text-align : center;
}

table.admin-incidents .order-number {
  width : 3rem;
  text-align : center;
}

table.admin-incidents .product-list {
  width : 35rem;
}

table.admin-incidents .quantity {
  width : 3rem;
  text-align: center;
}

table.admin-incidents .reference {
  width : 7rem;
  text-align: left;
}

table.admin-incidents .product {
  width : 25rem;
  text-align: left;
}

table.admin-incidents .address {
  width : 10rem;
  text-align: left;
}

table.admin-incidents .action {
  width : 5rem;
  text-align: left;
}

table.admin-incidents .action form:first-of-type {
  margin-bottom : 10px;
}

/* ADMIN: groups */

table.admin-groups td {
  vertical-align: middle;
}

table.admin-groups th:first-of-type {
  width : 120px;
}

table.admin-groups th:last-of-type {
  width : 120px;
}

table.admin-groups td {
  text-align: left;
}

table.admin-groups td:first-of-type,
table.admin-groups th:last-of-type {
  text-align: center;
}

/* USER: profile */

#profile div.from-group {
  margin-bottom: 30px;
}

