:root {
  --background: #edf2f8;
  --surface: #ffffff;
  --surface-soft: #f8fafc;
  --line: #dce4ef;
  --text: #172236;
  --muted: #647084;
  --BlueNote: rgb(75, 100, 165);
  --BlueNote-hover: rgb(60, 82, 137);
  --primary: var(--BlueNote);
  --primary-dark: var(--BlueNote-hover);
  --shadow: 0 12px 30px rgba(23, 34, 54, 0.08);
}

* {
  box-sizing: border-box;
}

html {
  font-size: 16px;
  min-height: 100%;
}

body {
  background:
    linear-gradient(rgba(237, 242, 248, 0.84), rgba(237, 242, 248, 0.84)),
    url("/images/menu-background.jpg") center / cover no-repeat fixed;
  color: var(--text);
  font-family: "Segoe UI", Arial, sans-serif;
  margin: 0;
  min-height: 100vh;
}

html:has(body.article-modal-page),
body.article-modal-page {
  background: transparent;
}

body.article-modal-page .app-footer {
  display: none;
}

button,
a {
  font: inherit;
}

.page-container {
  margin: 0 auto;
  max-width: 1320px;
  padding: 0 24px;
}

.app-identity {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  gap: 14px;
}

.app-logo {
  border-radius: 8px;
  box-shadow: 0 7px 16px rgba(23, 58, 96, 0.18);
  flex: 0 0 58px;
  height: 58px;
  object-fit: cover;
  width: 58px;
}

.app-heading {
  align-items: center;
  display: flex;
  gap: 28px;
  justify-content: space-between;
  min-height: 126px;
  padding: 26px 0 44px;
  user-select: none;
  -webkit-user-select: none;
}

.eyebrow {
  color: var(--primary-dark);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.09em;
  margin: 0 0 5px;
  text-transform: uppercase;
}

.app-heading h1 {
  font-size: clamp(27px, 3vw, 36px);
  letter-spacing: -0.03em;
  margin: 0;
}

.app-heading-copy {
  min-width: 230px;
}

.food-logo {
  flex: 0 0 82px;
  height: 82px;
  object-fit: contain;
  width: 82px;
}

.app-subtitle {
  color: var(--muted);
  margin: 7px 0 0;
}

.session-panel {
  min-width: min(100%, 480px);
}

.app-version {
  color: #42556e;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  margin: 0 4px 5px 0;
  text-align: right;
  text-transform: uppercase;
}

.session-summary {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  display: grid;
  grid-template-columns: repeat(3, minmax(120px, 1fr));
  margin: 0;
  min-width: 100%;
  overflow: hidden;
}

.session-summary div {
  padding: 10px 14px;
}

.session-summary div + div {
  border-left: 1px solid var(--line);
}

.session-summary dt {
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.session-summary dd {
  font-size: 14px;
  font-weight: 600;
  margin: 3px 0 0;
}

.quick-links {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-bottom: 42px;
  user-select: none;
  -webkit-user-select: none;
}

.quick-link {
  align-items: center;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(228, 239, 252, 0.96));
  border: 1px solid #8fa9c7;
  border-bottom: 3px solid #567da9;
  border-radius: 10px;
  box-shadow: 0 9px 20px rgba(23, 58, 96, 0.14);
  color: #173b65;
  display: flex;
  font-size: 16px;
  font-weight: 700;
  gap: 13px;
  min-height: 66px;
  padding: 9px 15px;
  text-align: left;
  text-decoration: none;
  transition:
    border-color 140ms ease,
    box-shadow 140ms ease,
    transform 140ms ease;
}

.quick-link:not(:disabled):hover,
.quick-link:not(:disabled):focus-visible {
  background: linear-gradient(135deg, #ffffff, #d8eaff);
  border-color: #5f8fc5;
  box-shadow: 0 12px 25px rgba(23, 75, 132, 0.2);
  color: var(--primary-dark);
  outline: none;
  transform: translateY(-2px);
}

.quick-icon {
  align-items: center;
  background: linear-gradient(145deg, #2d72bd, #164f9f);
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: 9px;
  box-shadow: 0 4px 10px rgba(22, 79, 159, 0.22);
  color: #ffffff;
  display: flex;
  flex: 0 0 38px;
  font-size: 13px;
  font-weight: 800;
  height: 36px;
  justify-content: center;
  width: 38px;
}

.menu-link.is-pending {
  cursor: default;
  opacity: 0.88;
}

.quick-link.is-pending {
  cursor: default;
  opacity: 1;
}

.menu-shell {
  background: rgba(246, 249, 253, 0.9);
  border: 1px solid #b8c5d6;
  border-radius: 10px;
  box-shadow: var(--shadow);
  margin-bottom: 26px;
  padding: 18px;
  user-select: none;
  -webkit-user-select: none;
}

.menu-intro {
  align-items: end;
  display: flex;
  justify-content: space-between;
  margin-bottom: 14px;
}

.menu-intro h2 {
  font-size: 21px;
  margin: 0;
}

.menu-intro > p {
  color: var(--muted);
  font-size: 14px;
  margin: 0;
}

.main-menu {
  display: grid;
  gap: 11px 13px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  user-select: none;
}

.menu-section {
  --accent: #647084;
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid #bcc8d8;
  border-left: 5px solid #143f82;
  border-radius: 8px;
  overflow: hidden;
}

.menu-section[open] {
  background: #edf5ff;
  border-color: #9db4d0;
  box-shadow: 0 12px 26px rgba(23, 34, 54, 0.13);
  overflow: visible;
}

.menu-section summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 13px;
  grid-template-columns: 38px 1fr 28px;
  list-style: none;
  min-height: 64px;
  padding: 10px 15px;
}

.menu-section summary::-webkit-details-marker {
  display: none;
}

.menu-section summary:focus-visible {
  outline: 3px solid rgba(31, 111, 235, 0.22);
  outline-offset: -3px;
}

.section-icon {
  align-items: center;
  background: #b8cbe0;
  border-radius: 8px;
  color: #143f82;
  display: flex;
  font-size: 12px;
  font-weight: 800;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.section-title {
  color: #143f82;
  font-size: 17px;
  font-weight: 700;
}

.section-toggle {
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 50%;
  color: var(--muted);
  display: flex;
  height: 26px;
  justify-content: center;
  width: 26px;
}

.section-toggle::before {
  content: "+";
  font-size: 20px;
  line-height: 1;
}

.menu-section[open] .section-toggle::before {
  content: "-";
}

.section-content {
  border-top: 1px solid var(--line);
  box-sizing: border-box;
  display: grid;
  gap: 13px;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  padding: 13px;
}

.main-menu > .menu-section[open] .section-content {
  background: #edf5ff;
  border: 1px solid #9db4d0;
  border-top: 1px solid var(--line);
  border-radius: 0 0 8px 8px;
  margin: 0 -1px -1px;
  position: relative;
  width: calc(200% + 13px);
  z-index: 2;
}

.main-menu > .menu-section:nth-child(even)[open] .section-content {
  transform: translateX(calc(-50% - 6.5px));
}

.main-menu > #menu-tabelle[open] .section-content {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-rows: auto 1fr;
}

.main-menu > #menu-tabelle[open] .menu-group:nth-child(1),
.main-menu > #menu-tabelle[open] .menu-group:nth-child(2),
.main-menu > #menu-tabelle[open] .menu-group:nth-child(3) {
  grid-row: 1 / 3;
}

.main-menu > #menu-tabelle[open] .menu-group:nth-child(4) {
  align-self: start;
  grid-column: 4;
  grid-row: 1;
  margin-top: 0;
  min-height: 0;
  padding-bottom: 8px;
  padding-top: 8px;
}

.main-menu > #menu-tabelle[open] .menu-group:nth-child(4) .menu-items {
  gap: 5px;
}

.main-menu > #menu-tabelle[open] .menu-group:nth-child(5) {
  grid-column: 4;
  grid-row: 2;
  align-self: stretch;
  justify-self: stretch;
  min-height: 0;
  position: static;
}

.main-menu > #menu-tabelle[open] .menu-group:nth-child(5) .menu-items {
  grid-template-columns: 1fr;
}

.main-menu > #menu-tabelle[open] .menu-group:nth-child(5) .menu-link {
  white-space: nowrap;
  width: 100%;
}

.menu-group {
  background: var(--surface);
  border: 1px solid #b9c6d6;
  border-radius: 7px;
  padding: 12px;
}

.menu-group h3 {
  color: #143f82;
  font-size: 14px;
  font-weight: 750;
  margin: 0 0 9px;
}

.menu-items {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#menu-vendite .section-content {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#menu-vendite .menu-group {
  grid-column: auto;
  grid-row: auto;
}

#menu-vendite .menu-items {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#menu-dipendenti .menu-group {
  grid-column: 3;
  grid-row: 1;
}

#menu-dipendenti .menu-items {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.menu-link {
  align-items: center;
  background: #edf2f8;
  border: 1px solid #c1ccda;
  border-radius: 6px;
  color: var(--text);
  display: flex;
  font-weight: 600;
  font-size: 14px;
  min-height: 42px;
  padding: 8px 11px;
  text-decoration: none;
}

a.menu-link:hover,
a.menu-link:focus-visible {
  background: #dceaff;
  border-color: #8eb3e5;
  color: var(--primary-dark);
  outline: none;
}

.accent-tables { --accent: #866118; }
.accent-stock { --accent: #227a68; }
.accent-sales { --accent: #b25757; }
.accent-accounting { --accent: #70578f; }
.accent-employees { --accent: #1f6feb; }
.accent-tools { --accent: #647084; }

.app-footer {
  color: var(--muted);
  font-size: 14px;
  padding: 0 0 24px;
  user-select: none;
  -webkit-user-select: none;
}

.module-page {
  padding: 28px 0 34px;
}

.list-page {
  display: flex;
  flex-direction: column;
  height: 100vh;
  margin: 0 calc(50% - 50vw);
  overflow: hidden;
  padding: 14px 18px 18px;
  width: 100vw;
}

.list-titlebar {
  align-items: center;
  background: #fff;
  border: 1px solid #8799ad;
  border-radius: 8px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 7px 18px rgba(23, 34, 54, 0.14);
  display: flex;
  flex: 0 0 auto;
  justify-content: space-between;
  margin-bottom: 12px;
  min-height: 66px;
  padding: 7px 10px;
  position: relative;
  z-index: 5;
}

.list-title-identity {
  align-items: center;
  color: #172236;
  display: flex;
  gap: 11px;
  text-decoration: none;
}

.list-title-identity img {
  border-radius: 7px;
  height: 48px;
  object-fit: cover;
  width: 48px;
}

.supplier-list-page .list-title-identity img {
  border-radius: 0;
  box-shadow: 1px 1px 0 rgba(28, 42, 82, 0.85), 2px 2px 3px rgba(20, 28, 48, 0.28);
  filter: contrast(1.04);
  height: 48px;
  object-fit: contain;
  width: auto;
}

.supplier-list-page .list-titlebar {
  min-height: 66px;
  padding-bottom: 6px;
  padding-top: 6px;
}

.list-title-identity strong,
.list-title-identity small {
  display: block;
}

.list-title-identity strong {
  font-size: 23px;
  line-height: 1.05;
}

.list-title-identity small {
  color: #40536a;
  font-size: 13px;
  margin-top: 4px;
}

.list-title-actions {
  align-items: center;
  display: flex;
  gap: 9px;
}

.list-title-button {
  align-items: center;
  background: var(--BlueNote);
  border: 1px solid var(--BlueNote-hover);
  border-radius: 6px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22);
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  font-weight: 700;
  justify-content: center;
  min-height: 36px;
  min-width: 94px;
  padding: 7px 14px;
  text-decoration: none;
}

.list-title-button:hover,
.list-title-button:focus-visible {
  background: var(--BlueNote-hover);
  color: #fff;
  outline: 2px solid rgba(255, 255, 255, 0.7);
  outline-offset: -3px;
}

.list-page > .message {
  flex: 0 0 auto;
  margin-bottom: 10px;
}

.list-panel {
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid #9eacbc;
  border-radius: 8px;
  box-shadow: var(--shadow);
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  padding: 12px 14px 14px;
}

.list-toolbar {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 10px;
  margin-bottom: 8px;
}

.list-filter-field {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: max-content minmax(0, 1fr);
}

.list-filter-field label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #b8cbe0;
  border-radius: 6px 0 0 6px;
  box-sizing: border-box;
  color: #263b55;
  display: flex;
  font-size: 13px;
  font-weight: 500;
  min-height: 28px;
  padding: 0 8px;
  line-height: 1;
  white-space: nowrap;
}

.list-filter-field input,
.list-filter-field select {
  background: #fff;
  border: 1px solid #8799ad;
  border-radius: 6px;
  min-height: 28px;
  padding: 3px 8px;
}

.list-search-field {
  flex: 1 1 420px;
  max-width: 620px;
}

.list-search-control {
  position: relative;
  width: 100%;
}

.list-search-control input {
  padding-right: 40px;
  width: 100%;
}

.list-search-clear {
  align-items: center;
  background: var(--BlueNote);
  border: 1px solid var(--BlueNote-hover);
  border-radius: 6px;
  color: #ffffff;
  cursor: pointer;
  display: inline-flex;
  font-size: 18px;
  font-weight: 700;
  height: 26px;
  justify-content: center;
  line-height: 1;
  padding: 0;
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
}

.list-search-clear:hover,
.list-search-clear:focus-visible {
  background: var(--BlueNote-hover);
  color: #ffffff;
  outline: none;
}

.list-account-field {
  flex: 0 1 360px;
}

.list-records-box {
  align-items: center;
  background: #d5e1ee;
  border: 1px solid #8799ad;
  border-radius: 6px;
  color: #263b55;
  display: inline-flex;
  gap: 7px;
  justify-content: center;
  margin-left: auto;
  min-height: 28px;
  min-width: 112px;
  padding: 3px 15px;
  white-space: nowrap;
}

.list-grid-frame {
  border: 1px solid #8799ad;
  border-radius: 5px;
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  position: relative;
  scrollbar-gutter: stable;
}

.list-grid {
  border-collapse: collapse;
  color: #000;
  font-size: 13px;
  font-weight: 520;
  min-width: 1120px;
  user-select: none;
  width: 100%;
}

.list-grid th {
  background: linear-gradient(#c7d7e8, #b8cbe0 52%, #a9bed6);
  border-bottom: 1px solid #758aa1;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.72),
    inset 0 -1px 0 rgba(72, 91, 112, 0.26);
  color: #0e1824;
  font-size: 12px;
  font-weight: 400;
  height: 30px;
  padding: 0 8px;
  position: sticky;
  text-align: left;
  text-transform: none;
  top: 0;
  z-index: 2;
}

.list-grid th[data-sort-key] {
  cursor: pointer;
  padding-right: 22px;
  position: sticky;
}

.list-grid th[data-sort-key]::after {
  color: #40536a;
  content: "";
  font-size: 11px;
  position: absolute;
  right: 7px;
  top: 50%;
  transform: translateY(-50%);
}

.list-grid th[data-sort-key].is-sorted::after {
  content: "▲";
}

.list-grid th[data-sort-key].is-sorted[data-sort-direction="desc"]::after {
  content: "▼";
}

.list-grid th[data-sort-key]:focus-visible {
  outline: 2px solid rgba(75, 100, 165, 0.45);
  outline-offset: -3px;
}

.list-grid td {
  border-bottom: 1px solid #cfd8e3;
  box-sizing: border-box;
  height: 27px;
  line-height: 18px;
  max-width: 280px;
  overflow: hidden;
  padding: 4px 6px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.list-grid tbody tr {
  background: #fff;
  cursor: pointer;
  height: 27px;
  outline: none;
}

.list-grid tbody tr:nth-child(even) {
  background: #f4f7fa;
}

.list-grid tbody tr:hover {
  background: #e3edf8;
}

.list-grid tbody tr.selected-row,
.list-grid tbody tr.selected-row:hover {
  background: #b8d2ee;
  box-shadow: inset 4px 0 0 #2f6faa;
  color: #102b49;
}

.list-grid tbody tr:focus-visible {
  box-shadow: inset 0 0 0 2px #2f6faa;
}

.list-grid tr.is-inactive {
  color: #000;
}

.list-empty {
  color: var(--muted);
  left: 0;
  padding: 34px;
  position: absolute;
  right: 0;
  text-align: center;
  top: 31px;
}

body.list-module {
  overflow: hidden;
}

body.list-module .app-footer {
  display: none;
}

body.accounting-cause-edit-module .app-footer {
  display: none;
}

body.accounting-movement-edit-module .app-footer {
  display: none;
}

.module-header {
  align-items: end;
  background: rgba(255, 255, 255, 0.93);
  border: 1px solid #b8c5d6;
  border-radius: 10px;
  box-shadow: var(--shadow);
  display: flex;
  gap: 24px;
  justify-content: space-between;
  margin-bottom: 20px;
  padding: 20px 22px;
}

.module-header h1 {
  font-size: 30px;
  margin: 0;
}

.module-header p:last-child {
  color: var(--muted);
  margin: 6px 0 0;
}

.module-title-identity {
  align-items: center;
  display: flex;
  gap: 11px;
  min-width: 0;
}

.module-title-logo {
  border-radius: 7px;
  display: block;
  flex: 0 0 42px;
  height: 42px;
  width: 42px;
}

.module-title-logo:focus-visible {
  outline: 3px solid rgba(75, 100, 165, 0.28);
  outline-offset: 3px;
}

.module-title-identity img {
  border-radius: 7px;
  display: block;
  height: 42px;
  object-fit: cover;
  width: 42px;
}

.module-actions,
.form-actions,
.filter-actions,
.row-actions {
  align-items: center;
  display: flex;
  gap: 9px;
}

.button,
.icon-button {
  align-items: center;
  border: 1px solid transparent;
  border-radius: 7px;
  cursor: pointer;
  display: inline-flex;
  font-weight: 700;
  justify-content: center;
  text-decoration: none;
}

.button {
  min-height: 42px;
  padding: 8px 15px;
}

.button-primary {
  background: var(--BlueNote);
  border-color: var(--BlueNote-hover);
  color: #fff;
}

.button-primary:hover,
.button-primary:focus-visible {
  background: var(--BlueNote-hover);
  color: #fff;
}

.button-secondary {
  background: var(--BlueNote);
  border-color: var(--BlueNote-hover);
  color: #fff;
}

.button-secondary:hover,
.button-secondary:focus-visible {
  background: var(--BlueNote-hover);
  color: #fff;
}

.message {
  border: 1px solid;
  border-radius: 7px;
  font-weight: 650;
  margin-bottom: 16px;
  padding: 11px 14px;
}

.message-success {
  background: #e8f7ee;
  border-color: #91c9a6;
  color: #205e38;
}

.message-error,
.validation-summary {
  background: #fff0ed;
  border-color: #dfaaa0;
  color: #8c2f20;
}

.messagebox-overlay {
  align-items: center;
  background: rgba(23, 32, 51, 0.32);
  display: none;
  inset: 0;
  justify-content: center;
  padding: 24px;
  position: fixed;
  z-index: 3000;
}

.messagebox-overlay.active {
  display: flex;
}

.messagebox {
  background: #fff;
  border: 1px solid #b8c5d6;
  border-radius: 8px;
  box-shadow: 0 18px 42px rgba(23, 32, 51, 0.28);
  max-width: 620px;
  overflow: hidden;
  width: min(620px, 100%);
}

.messagebox-title {
  background: #1673b8;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  padding: 10px 18px;
}

.messagebox-success .messagebox-title {
  background: #15803d;
}

.messagebox-error .messagebox-title {
  background: #dc2626;
}

.messagebox-confirm .messagebox-title {
  background: #f59e0b;
}

.messagebox-body {
  padding: 28px 22px 20px;
  text-align: center;
}

.messagebox-message {
  color: var(--text);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
  overflow-wrap: anywhere;
  white-space: pre-line;
}

.messagebox-detail {
  color: #1673b8;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.45;
  margin-top: 14px;
  overflow-wrap: anywhere;
  white-space: pre-line;
}

.messagebox-success .messagebox-detail {
  color: #15803d;
}

.messagebox-error .messagebox-detail {
  color: #dc2626;
}

.messagebox-confirm .messagebox-detail {
  color: #b45309;
}

.messagebox-actions {
  display: flex;
  gap: 10px;
  justify-content: center;
  padding: 0 22px 24px;
}

.messagebox-ok,
.messagebox-cancel {
  min-height: 40px;
  min-width: 148px;
}

.operation-progress-overlay {
  align-items: center;
  background: rgba(23, 32, 51, 0.28);
  display: none;
  inset: 0;
  justify-content: center;
  padding: 24px;
  position: fixed;
  z-index: 2800;
}

.operation-progress-overlay.active {
  display: flex;
}

.operation-progress-box {
  align-items: center;
  background: transparent;
  border: 0;
  box-shadow: none;
  color: var(--text);
  display: flex;
  flex-direction: column;
  min-width: 192px;
  padding: 0;
  text-align: center;
}

.operation-progress-box img {
  display: block;
  height: 144px;
  object-fit: contain;
  width: 144px;
}

.password-control {
  display: flex;
  gap: 6px;
  width: 100%;
}

.password-control input {
  flex: 1 1 auto;
  min-width: 0;
}

.password-control input.password-masked {
  -webkit-text-security: disc;
}

.password-view-button {
  background: var(--BlueNote);
  border: 1px solid var(--BlueNote-hover);
  color: #ffffff;
  cursor: pointer;
  flex: 0 0 58px;
  font-size: 12px;
  font-weight: 700;
  height: 30px;
  padding: 0 8px;
}

.password-view-button:hover,
.password-view-button:focus-visible {
  background: var(--BlueNote-hover);
  outline: none;
}

.user-form-page .user-name-row {
  display: grid;
  column-gap: 14px;
  grid-column: 1 / -1;
  grid-template-columns:
    minmax(0, calc((100% - 42px) / 4))
    minmax(0, calc(((100% - 42px) / 4) + var(--label-width) + 14px))
    minmax(0, 1fr);
  min-height: 30px;
}

.user-form-page .form-frame-grid {
  grid-auto-rows: 30px;
}

.user-form-page .field,
.user-form-page .check-button-field,
.user-form-page .password-control {
  min-height: 30px;
}

.filter-panel {
  align-items: end;
  background: rgba(255, 255, 255, 0.93);
  border: 1px solid #b8c5d6;
  border-radius: 9px;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(260px, 1.5fr) minmax(260px, 1fr) auto auto;
  margin-bottom: 16px;
  padding: 15px;
}

.field {
  display: grid;
  gap: 5px;
  min-width: 0;
}

label,
.check-text,
.readonly-field,
input[readonly],
textarea[readonly] {
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
}

.accounting-cause-account-column h2,
.accounting-cause-account-subhead span,
.accounting-cause-row-button {
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
}

.field label {
  color: #43546a;
  font-size: 13px;
  font-weight: 750;
}

th,
legend,
.sales-entry-grid th,
.sales-entry-total-label {
  user-select: none;
}

.field input,
.field select,
.field textarea {
  background: #fff;
  border: 1px solid #9fb0c4;
  border-radius: 6px;
  color: var(--text);
  font-size: 12px;
  font-weight: 600;
  min-height: 40px;
  padding: 7px 10px;
  width: 100%;
}

.field input:focus,
.field select:focus {
  border-color: #1f6feb;
  box-shadow: 0 0 0 3px rgba(31, 111, 235, 0.14);
  outline: none;
}

.updown-control {
  align-items: stretch;
  display: block;
  position: relative;
  width: 100%;
}

.field .updown-control input[data-updown] {
  font-variant-numeric: tabular-nums;
  min-width: 0;
  text-align: center;
}

.updown-buttons {
  display: grid;
  grid-template-rows: 1fr 1fr;
  height: 100%;
  left: calc(100% + 1px);
  position: absolute;
  top: 0;
  width: 24px;
}

.updown-button {
  align-items: center;
  background: linear-gradient(#f8fafc, #d9e3ee);
  border: 1px solid #9fb0c4;
  color: #203247;
  cursor: default;
  display: flex;
  justify-content: center;
  min-height: 0;
  padding: 0;
  position: relative;
}

.updown-button-up {
  border-bottom: 0;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}

.updown-button-down {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}

.updown-button::before {
  border-color: currentColor;
  border-style: solid;
  border-width: 0 2px 2px 0;
  content: "";
  height: 7px;
  width: 7px;
}

.updown-button-up::before {
  margin-top: 8px;
  transform: rotate(225deg);
}

.updown-button-down::before {
  margin-bottom: 3px;
  transform: rotate(45deg);
}

.updown-button:hover,
.updown-button:focus-visible {
  background: linear-gradient(#ffffff, #c8d7e6);
  color: #0f2742;
  outline: none;
}

.updown-button:active {
  background: #c2d1e0;
}

fieldset:disabled .updown-button,
.updown-control input:disabled + .updown-buttons .updown-button,
.updown-control input[readonly] + .updown-buttons .updown-button {
  background: #edf2f7;
  color: #8493a5;
  pointer-events: none;
}

.field span.field-validation-error {
  color: #9a3412;
  display: none;
  font-size: 12px;
  font-weight: 650;
}

.record-count {
  color: #43546a;
  padding: 0 4px 11px;
  white-space: nowrap;
}

.data-table-frame {
  background: #fff;
  border: 1px solid #aebccd;
  border-radius: 9px;
  box-shadow: var(--shadow);
  overflow: auto;
}

.data-table {
  border-collapse: collapse;
  font-size: 14px;
  min-width: 1160px;
  width: 100%;
}

.data-table th {
  background: #dce8f6;
  border-bottom: 1px solid #9fb0c4;
  color: #203955;
  font-size: 12px;
  letter-spacing: 0.025em;
  padding: 10px 9px;
  position: sticky;
  text-align: left;
  text-transform: uppercase;
  top: 0;
  z-index: 1;
}

.data-table td {
  border-bottom: 1px solid #dbe2eb;
  max-width: 240px;
  overflow: hidden;
  padding: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.data-table tbody tr:hover {
  background: #edf5ff;
}

.data-table tr.is-inactive {
  color: #788598;
}

.code-cell {
  font-variant-numeric: tabular-nums;
  text-align: center;
}

.table-primary-link {
  color: #164f9f;
  font-weight: 700;
  text-decoration: none;
}

.table-primary-link:hover {
  text-decoration: underline;
}

.table-actions-column {
  min-width: 150px;
}

.row-actions {
  overflow: visible !important;
}

.row-actions form {
  margin: 0;
}

.icon-button {
  background: var(--BlueNote);
  border-color: var(--BlueNote-hover);
  color: #fff;
  font-size: 12px;
  min-height: 32px;
  padding: 5px 8px;
}

.icon-button-danger {
  background: #fff4f2;
  border-color: #d7a39a;
  color: #8c2f20;
}

.empty-row {
  color: var(--muted);
  padding: 30px !important;
  text-align: center;
}

.entity-form {
  display: grid;
  gap: 16px;
}

.validation-summary {
  border: 1px solid;
  border-radius: 7px;
  padding: 10px 14px;
}

.validation-summary:empty,
.validation-summary.validation-summary-valid {
  display: none;
}

.form-frame {
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid #afbecf;
  border-radius: 9px;
  box-shadow: 0 8px 20px rgba(23, 34, 54, 0.07);
  margin: 0;
  padding: 15px;
}

.form-frame legend {
  color: #164f9f;
  float: none;
  font-size: 15px;
  font-weight: 800;
  margin: 0;
  padding: 0 7px;
  width: auto;
}

.form-grid {
  display: grid;
  gap: 13px 15px;
}

.form-grid-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.field-span-2 {
  grid-column: span 2;
}

.field-small {
  max-width: 130px;
}

.field-code {
  max-width: 240px;
}

.code-display {
  font-variant-numeric: tabular-nums;
  text-align: center;
}

.currency-display {
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.checkbox-field {
  align-content: end;
}

.checkbox-field label {
  align-items: center;
  background: #edf2f8;
  border: 1px solid #b8c5d6;
  border-radius: 6px;
  display: flex;
  gap: 9px;
  min-height: 40px;
  padding: 7px 10px;
}

.checkbox-field input {
  min-height: auto;
  width: auto;
}

.readonly-field,
input[readonly],
textarea[readonly] {
  color: #000 !important;
  pointer-events: none;
}

.readonly-field {
  background: #e8edf3 !important;
}

.text-uppercase {
  text-transform: uppercase;
}

.form-actions {
  justify-content: flex-end;
  padding: 4px 0 20px;
}

.supplier-form-page {
  --label-width: 120px;
}

.supplier-form-page .module-header {
  align-items: center;
  margin-bottom: 12px;
  padding: 12px 16px;
}

.supplier-form-page .module-header h1 {
  font-size: 24px;
}

.supplier-form-page .module-header p:last-child {
  margin-top: 3px;
}

.supplier-form-page .top-actions {
  align-items: center;
  display: flex;
  gap: 10px;
  margin-right: 14px;
}

.supplier-form-page .entity-form {
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid #9eacbc;
  border-radius: 8px;
  box-shadow: var(--shadow);
  gap: 8px;
  padding: 14px;
}

.supplier-form-page .form-grid,
.supplier-form-page .compact-frame .form-frame-grid {
  gap: 8px 14px;
}

.supplier-form-page .supplier-location-row {
  display: grid;
  gap: 8px 14px;
  grid-column: 1 / -1;
  grid-template-columns:
    minmax(0, calc(38.16% - 16.03px))
    minmax(0, calc(18.42% - 7.74px))
    minmax(0, calc(18.42% - 7.74px))
    minmax(0, calc(25% - 10.5px));
}

.supplier-form-page .field {
  align-items: center;
  gap: 6px;
  grid-template-columns: var(--label-width) minmax(0, 1fr);
  min-height: 30px;
}

.supplier-form-page .supplier-email-row {
  display: grid;
  gap: 8px 14px;
  grid-column: 1 / -1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.supplier-form-page .field-span-2 {
  grid-column: span 2;
}

.supplier-form-page .field-country {
  grid-column: 3 / span 2;
  grid-row: 3;
  margin-left: calc(13.16% - 1.85px);
}

.supplier-form-page .field-address,
.supplier-form-page .field-legal-nature {
  grid-column: 1 / -1;
  max-width: 100%;
  width: calc(56.58% - 9.77px);
}

.supplier-form-page .field-address {
  grid-row: 3;
}

.supplier-form-page .field-legal-nature {
  grid-row: 4;
}

.supplier-form-page .field-small {
  max-width: none;
}

.supplier-form-page .field-active {
  grid-column: 3 / span 2;
  grid-row: 4;
  margin-left: calc(13.16% - 1.85px);
}

.supplier-form-page.user-form-page .field-user-active {
  grid-column: 4;
  grid-row: 3;
  margin-left: 0;
}

.supplier-form-page.user-form-page .field-user-locked {
  grid-column: 1 / span 2;
  grid-row: 3;
  margin-left: 0;
}

.supplier-form-page.user-form-page .field-user-store {
  grid-column: 3 / span 2;
  grid-row: 3;
  margin-left: 0;
}

.supplier-form-page .form-frame {
  grid-column: 1 / -1;
  padding: 10px 12px 12px;
}

.supplier-form-page .compact-frame + .compact-frame {
  margin-top: 6px;
}

.supplier-form-page.data-form-skin .form-frame {
  background: #ffffff;
  border: 1px solid #8a8f98;
  border-radius: 0;
  box-shadow: none;
}

.supplier-form-page.data-form-skin .form-frame legend {
  background: transparent;
  border: 1px solid #8a8f98;
  color: #0e1824;
  font-size: 15px;
  font-weight: 700;
  padding: 3px 10px;
  text-transform: uppercase;
}

.supplier-form-page.data-form-skin .field label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  color: #0e1824;
  display: flex;
  font-weight: 500;
  height: 30px;
  line-height: 1.15;
  min-height: 30px;
  padding: 5px 8px;
}

.supplier-form-page.data-form-skin input,
.supplier-form-page.data-form-skin select,
.supplier-form-page.data-form-skin textarea {
  border: 1px solid #8a8f98;
  font-size: 12px;
  font-weight: 600;
  height: 30px;
  line-height: 1.15;
  min-height: 30px;
  padding-bottom: 5px;
  padding-top: 5px;
}

.supplier-form-page.data-form-skin select {
  padding-bottom: 3px;
  padding-top: 3px;
}

.supplier-form-page.data-form-skin .top-actions .button,
.supplier-form-page.data-form-skin .top-actions button {
  background: var(--BlueNote);
  border: 0;
  color: #fff;
  gap: 7px;
  min-height: 40px;
  min-width: 96px;
  padding: 9px 13px;
  white-space: nowrap;
  width: 96px;
}

.supplier-form-page.data-form-skin .top-actions .button:hover,
.supplier-form-page.data-form-skin .top-actions .button:focus-visible,
.supplier-form-page.data-form-skin .top-actions button:hover,
.supplier-form-page.data-form-skin .top-actions button:focus-visible {
  background: var(--BlueNote-hover);
  color: #fff;
  outline: 2px solid rgba(31, 111, 235, 0.22);
  outline-offset: 2px;
}

.supplier-form-page.data-form-skin .form-actions.top-actions {
  justify-content: flex-end;
  margin-right: 0;
  padding: 4px 0 6px;
}

.supplier-form-page.data-form-skin .form-actions.top-actions .button,
.supplier-form-page.data-form-skin .form-actions.top-actions button {
  width: 96px;
}

.supplier-form-page.data-form-skin .field-check {
  min-height: 30px;
}

.supplier-form-page.data-form-skin .field-check .check-button-field {
  align-items: stretch;
  background: transparent;
  border: 0;
  display: grid;
  gap: 6px;
  grid-template-columns: var(--label-width) 68px;
  height: 30px;
  min-height: 30px;
  padding: 0;
  width: 100%;
}

.supplier-form-page.data-form-skin .field-check .check-button-field .check-text {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  box-sizing: border-box;
  color: #0e1824;
  display: flex;
  font-weight: 500;
  height: 30px;
  min-height: 30px;
  width: var(--label-width);
  padding: 5px 8px;
}

.supplier-form-page.data-form-skin .field-check .check-button-field input {
  border: 0;
  height: 1px;
  min-height: 0;
  opacity: 0;
  padding: 0;
  position: absolute;
  width: 1px;
}

.supplier-form-page.data-form-skin .field-check .check-button-field .check-button-wrap {
  align-items: center;
  background: #ffffff !important;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  box-sizing: border-box;
  display: flex;
  font-size: 0;
  height: 30px;
  justify-content: center;
  min-height: 30px;
  overflow: hidden;
  padding: 0 !important;
  position: relative;
}

.supplier-form-page.data-form-skin .field-check .check-button-field .check-button-wrap::before {
  background: rgb(210, 210, 210);
  border: 1px solid #c2ccda;
  border-radius: 999px;
  content: "";
  display: block;
  height: 22px;
  transition: background 0.15s ease, border-color 0.15s ease;
  width: 42px;
}

.supplier-form-page.data-form-skin .field-check .check-button-field .check-button-wrap::after {
  background: #ffffff;
  border-radius: 50%;
  box-shadow: 0 1px 3px rgba(23, 32, 51, 0.28);
  content: "";
  height: 16px;
  left: 16px;
  position: absolute;
  top: 7px;
  transition: transform 0.15s ease;
  width: 16px;
}

.supplier-form-page.data-form-skin .field-check .check-button-field input:checked ~ .check-button-wrap::before {
  background: var(--BlueNote);
  border-color: var(--BlueNote);
}

.supplier-form-page.data-form-skin .field-check .check-button-field input:checked ~ .check-button-wrap::after {
  transform: translateX(20px);
}

.supplier-form-page.data-form-skin .field-check .check-button-field input:focus-visible ~ .check-button-wrap {
  box-shadow: 0 0 0 3px rgba(75, 100, 165, 0.18);
}

.supplier-form-page.user-form-page.data-form-skin .field,
.supplier-form-page.user-form-page.data-form-skin .field-check,
.supplier-form-page.user-form-page.data-form-skin .field-check .check-button-field,
.supplier-form-page.user-form-page.data-form-skin .password-control {
  min-height: 30px;
}

.sector-list-page .sector-grid {
  min-width: 680px;
}

.sector-list-page .list-panel {
  flex: 1 1 auto;
  margin-bottom: 10px;
  min-height: 330px;
}

.sector-list-page .sector-grid-frame {
  max-height: 64vh;
}

.sector-list-page.is-sector-editing .sector-grid-frame {
  opacity: 0.58;
  pointer-events: none;
}

.sector-list-page .sector-grid th:first-child,
.sector-list-page .sector-grid td:first-child {
  width: 110px;
}

.sector-inline-editor {
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid #9eacbc;
  border-radius: 8px;
  box-shadow: var(--shadow);
  flex: 0 0 auto;
  margin: 0;
  max-width: none;
  padding: 12px 14px 14px;
}

.sector-form-page .entity-form {
  max-width: 760px;
}

.sector-form-page .sector-fields-row {
  align-items: start;
  grid-template-columns: 190px minmax(0, 1fr) max-content;
}

.sector-form-page .field-code {
  grid-template-columns: 70px minmax(0, 1fr);
  max-width: none;
}

.supplier-form-page .sector-description-field {
  grid-column: span 1;
}

.sector-inline-actions {
  align-items: center;
  align-self: center;
  display: flex;
  gap: 8px;
  min-height: 30px;
}

.sector-inline-actions .button {
  background: var(--BlueNote);
  border: 0;
  color: #fff;
  min-height: 30px;
  width: 96px;
}

.sector-inline-actions .button:disabled {
  cursor: default;
  opacity: 0.56;
}

.sector-inline-actions .button:hover,
.sector-inline-actions .button:focus-visible {
  background: var(--BlueNote-hover);
  color: #fff;
}

.sector-inline-editor fieldset:disabled {
  opacity: 0.76;
}

.sector-inline-editor fieldset:disabled input {
  background: #eef1f5;
  color: #3f4f63;
}

.small-table-grid {
  min-width: 680px;
}

.small-table-page .list-panel {
  flex: 1 1 auto;
  margin-bottom: 10px;
  min-height: 330px;
}

.small-table-page .small-table-grid-frame {
  max-height: 64vh;
}

.small-table-page.is-small-table-editing .small-table-grid-frame {
  opacity: 0.58;
  pointer-events: none;
}

.small-table-grid th:first-child,
.small-table-grid td:first-child {
  width: 110px;
}

.comuni-grid th:first-child,
.comuni-grid td:first-child {
  width: 320px;
}

.comuni-grid th:nth-child(2),
.comuni-grid td:nth-child(2) {
  text-align: center;
  width: 100px;
}

.comuni-grid th:nth-child(3),
.comuni-grid td:nth-child(3) {
  text-align: center;
  width: 120px;
}

.small-table-editor {
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid #9eacbc;
  border-radius: 8px;
  box-shadow: var(--shadow);
  flex: 0 0 auto;
  margin: 0;
  max-width: none;
  padding: 12px 14px 14px;
}

.small-table-fields-row {
  align-items: start;
  grid-template-columns: 190px minmax(0, 1fr) max-content;
}

.small-table-editor .field-code {
  grid-template-columns: 70px minmax(0, 1fr);
  max-width: none;
}

.small-table-editor .small-table-description-field {
  grid-column: span 1;
}

.small-table-actions {
  align-items: center;
  align-self: center;
  display: flex;
  gap: 8px;
  min-height: 30px;
}

.small-table-actions .button {
  background: var(--BlueNote);
  border: 0;
  color: #fff;
  min-height: 30px;
  width: 96px;
}

.small-table-actions .button:disabled {
  cursor: default;
  opacity: 0.56;
}

.small-table-actions .button:hover,
.small-table-actions .button:focus-visible {
  background: var(--BlueNote-hover);
  color: #fff;
}

.small-table-editor fieldset:disabled {
  opacity: 0.76;
}

.small-table-editor fieldset:disabled input {
  background: #eef1f5;
  color: #3f4f63;
}

.comuni-fields-row {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 430px 140px 170px 190px 1fr 174px;
  min-height: 30px;
}

.comuni-name-field,
.comuni-province-field,
.comuni-postal-code-field,
.comuni-code-field {
  grid-column: auto;
}

.comuni-name-field input {
  width: 100%;
}

.comuni-fields-row .comuni-name-field {
  grid-template-columns: 58px minmax(0, 1fr);
}

.comuni-fields-row .comuni-province-field {
  grid-template-columns: 56px minmax(0, 1fr);
}

.comuni-fields-row .comuni-postal-code-field {
  grid-template-columns: 54px minmax(0, 1fr);
}

.comuni-fields-row .comuni-code-field {
  grid-template-columns: 66px minmax(0, 1fr);
}

.comuni-fields-row .field {
  align-items: center;
  min-height: 30px;
}

.comuni-fields-row .field label,
.comuni-fields-row .field input {
  height: 30px;
}

.comuni-fields-row .field label {
  align-items: center;
  display: flex;
  padding-bottom: 0;
  padding-top: 0;
}

.comuni-fields-row .comuni-actions {
  align-items: center;
  align-self: center;
  display: flex;
  height: 30px;
  justify-content: flex-end;
  min-height: 30px;
}

.comuni-fields-row .comuni-action-button {
  align-items: center;
  background: var(--BlueNote);
  border: 0;
  border-radius: 7px;
  color: #fff;
  display: inline-flex;
  flex: 0 0 78px;
  font-size: 14px;
  font-weight: 800;
  height: 30px;
  justify-content: center;
  line-height: 1;
  min-height: 30px;
  padding-bottom: 0;
  padding-top: 0;
  width: 78px;
}

.comuni-fields-row .comuni-action-button:hover,
.comuni-fields-row .comuni-action-button:focus-visible {
  background: var(--BlueNote-hover);
  color: #fff;
}

.comuni-fields-row .comuni-action-button:disabled {
  cursor: default;
  opacity: 0.56;
}

.comuni-actions {
  grid-column: 6;
  align-items: center !important;
  align-self: center !important;
  display: flex !important;
  height: 30px !important;
  justify-content: flex-end !important;
  margin: 0 !important;
  min-width: 0;
  padding: 0 !important;
}

.comuni-action-button {
  align-items: center !important;
  display: inline-flex !important;
  height: 30px !important;
  justify-content: center !important;
  line-height: 1 !important;
  margin: 0 !important;
  min-height: 30px !important;
  padding: 0 !important;
  width: 78px !important;
}

.nazioni-grid {
  min-width: 980px;
}

.nazioni-grid th:first-child,
.nazioni-grid td:first-child {
  width: 86px;
}

.nazioni-grid th:nth-child(2),
.nazioni-grid td:nth-child(2) {
  width: 320px;
}

.nazioni-grid th:not(:nth-child(2)),
.nazioni-grid td:not(:nth-child(2)) {
  text-align: center;
}

.nazioni-fields-row {
  align-items: center;
  display: grid;
  gap: 18px;
  grid-template-columns: 252px 452px 180px 180px;
  padding-right: 112px;
  position: relative;
}

.nazioni-fields-row .field {
  align-items: center;
  min-height: 30px;
}

.nazioni-fields-row .field label,
.nazioni-fields-row .field input {
  height: 30px;
}

.nazioni-fields-row .field label {
  align-items: center;
  display: flex;
  min-width: 0;
  padding-bottom: 0;
  padding-top: 0;
}

.nazioni-code-field {
  column-gap: 6px;
  grid-template-columns: 66px 120px;
  width: 196px;
}

.nazioni-code-field input {
  text-align: center;
  width: 120px;
}

.nazioni-name-field {
  column-gap: 6px;
  grid-template-columns: 58px 360px;
  width: 424px;
}

.nazioni-name-field input {
  text-align: left;
  width: 360px;
}

.nazioni-fields-row .field-validation-valid,
.nazioni-fields-row .field-validation-error {
  display: none;
}

.nazioni-abbreviation-field {
  grid-template-columns: 68px 96px;
  width: 164px;
}

.nazioni-short-field {
  grid-template-columns: 58px 96px;
  width: 154px;
}

.nazioni-abbreviation-field input,
.nazioni-short-field input {
  width: 96px;
}

.nazioni-zone-field {
  column-gap: 6px;
  grid-column: 2;
  grid-row: 2;
  grid-template-columns: 48px 360px;
  width: 414px;
}

.nazioni-zone-field input {
  width: 360px;
}

.nazioni-tax-field {
  grid-column: 1;
  grid-row: 2;
  grid-template-columns: 94px 120px;
  width: 224px;
}

.nazioni-tax-field input {
  text-align: center;
  width: 120px;
}

.nazioni-iso-field {
  grid-column: 3;
  grid-row: 2;
}

.nazioni-sigla1-field,
.nazioni-iso-field {
  transform: translateX(44px);
}

.nazioni-regime-field {
  grid-column: 4;
  grid-row: 2;
}

.nazioni-sigla2-field,
.nazioni-regime-field {
  transform: translateX(88px);
}

.nazioni-actions {
  bottom: auto;
  flex-direction: column;
  gap: 8px;
  justify-content: center;
  min-width: 96px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.nazioni-actions .button {
  height: 32px;
  width: 92px;
}

.vat-rate-grid {
  min-width: 900px;
}

.vat-rate-grid th:first-child,
.vat-rate-grid td:first-child {
  width: 110px;
}

.vat-rate-grid th:nth-child(2),
.vat-rate-grid td:nth-child(2) {
  width: 420px;
}

.vat-rate-grid th:nth-child(n + 3),
.vat-rate-grid td:nth-child(n + 3) {
  text-align: center;
  width: 130px;
}

.vat-rate-fields-row {
  align-items: center;
  display: grid;
  gap: 12px;
  grid-template-columns: 210px 430px 170px 190px 180px;
  min-height: 30px;
  padding-right: 174px;
  position: relative;
}

.vat-rate-fields-row .field {
  align-items: center;
  min-height: 30px;
}

.vat-rate-fields-row .field label,
.vat-rate-fields-row .field input,
.vat-rate-fields-row .field select {
  height: 30px;
}

.vat-rate-fields-row .field label {
  align-items: center;
  display: flex;
  min-width: 0;
  padding-bottom: 0;
  padding-top: 0;
}

.vat-rate-fields-row .field-validation-valid,
.vat-rate-fields-row .field-validation-error {
  display: none;
}

.vat-rate-code-field {
  grid-template-columns: 66px 90px;
}

.vat-rate-code-field input {
  text-align: center;
  width: 90px;
}

.vat-rate-description-field {
  grid-template-columns: 86px 320px;
  transform: translateX(8px);
}

.vat-rate-description-field input {
  width: 320px;
}

.vat-rate-fields-row .vat-rate-percent-field {
  column-gap: 6px;
  grid-template-columns: 80px 70px;
  width: 170px;
}

.vat-rate-fields-row .vat-rate-percent-field label {
  width: 80px;
}

.vat-rate-fields-row .vat-rate-rate-field {
  column-gap: 6px;
  grid-template-columns: 80px 90px;
  transform: translateX(28px);
  width: 176px;
}

.vat-rate-fields-row .vat-rate-deduction-field {
  transform: translateX(40px);
}

.vat-rate-fields-row .vat-rate-percent-field input {
  text-align: right;
  width: 90px;
}

.vat-rate-nature-field {
  grid-template-columns: 90px 88px;
  transform: translateX(25px);
}

.vat-rate-nature-field select {
  text-align: center;
  width: 88px;
}

.vat-rate-actions {
  position: absolute;
  justify-content: flex-end;
  right: 0;
}

.ledger-master-grid {
  min-width: 760px;
}

.ledger-master-grid th:first-child,
.ledger-master-grid td:first-child {
  width: 120px;
}

.ledger-master-grid th:nth-child(2),
.ledger-master-grid td:nth-child(2) {
  width: 420px;
}

.ledger-master-grid th:nth-child(n + 3),
.ledger-master-grid td:nth-child(n + 3) {
  text-align: center;
  width: 120px;
}

.ledger-master-fields-row {
  align-items: center;
  display: grid;
  gap: 14px;
  grid-template-columns: 190px 430px 250px 180px;
  min-height: 30px;
  padding-right: 174px;
  position: relative;
}

.ledger-master-fields-row .field {
  align-items: center;
  min-height: 30px;
}

.ledger-master-fields-row .field label,
.ledger-master-fields-row .field input,
.ledger-master-fields-row .field select {
  height: 30px;
}

.ledger-master-fields-row .field label {
  align-items: center;
  display: flex;
  min-width: 0;
  padding-bottom: 0;
  padding-top: 0;
}

.ledger-master-fields-row .field-validation-valid,
.ledger-master-fields-row .field-validation-error {
  display: none;
}

.ledger-master-fields-row .ledger-master-code-field {
  grid-template-columns: 66px 90px;
}

.ledger-master-fields-row .ledger-master-code-field input {
  text-align: center;
  width: 90px;
}

.ledger-master-fields-row .ledger-master-description-field {
  column-gap: 6px;
  grid-template-columns: 86px 360px;
  width: 452px;
}

.ledger-master-fields-row .ledger-master-description-field label {
  width: 86px;
}

.ledger-master-fields-row .ledger-master-description-field input {
  width: 360px;
}

.ledger-master-fields-row .ledger-master-type-field {
  column-gap: 6px;
  grid-template-columns: 50px 180px;
  transform: translateX(40px);
}

.ledger-master-fields-row .ledger-master-type-field select {
  width: 180px;
}

.ledger-master-locked-field {
  align-items: center;
  display: flex;
  height: 30px;
  transform: translateX(40px);
}

.ledger-master-locked-field .check-button-field {
  grid-template-columns: 86px 68px;
  width: 160px;
}

.ledger-master-actions {
  justify-content: flex-end;
  position: absolute;
  right: 0;
}

.payment-code-grid {
  min-width: 1060px;
}

.payment-code-grid th:first-child,
.payment-code-grid td:first-child {
  width: 100px;
}

.payment-code-grid th:nth-child(2),
.payment-code-grid td:nth-child(2) {
  width: 460px;
}

.payment-code-grid th:nth-child(3),
.payment-code-grid td:nth-child(3) {
  text-align: center;
  width: 80px;
}

.payment-code-grid th:nth-child(4),
.payment-code-grid td:nth-child(4) {
  width: 180px;
}

.payment-code-grid th:nth-child(5),
.payment-code-grid td:nth-child(5) {
  text-align: center;
  width: 90px;
}

.payment-code-grid th:nth-child(6),
.payment-code-grid td:nth-child(6) {
  width: 120px;
}

.payment-code-fields {
  display: grid;
  gap: 10px 18px;
  grid-template-columns: 550px 430px;
  padding: 6px 0 2px;
}

.payment-code-fields .field {
  align-items: center;
  min-height: 30px;
}

.payment-code-fields .field label,
.payment-code-fields .field input,
.payment-code-fields .field select {
  font-weight: 650;
  height: 30px;
}

.payment-code-fields .field label {
  align-items: center;
  display: flex;
  min-width: 0;
  padding-bottom: 0;
  padding-top: 0;
}

.payment-code-fields .field-validation-valid,
.payment-code-fields .field-validation-error {
  display: none;
}

.payment-code-form-page .payment-code-code-field {
  grid-column: 1;
  grid-row: 1;
  grid-template-columns: 150px 90px;
}

.payment-code-form-page .payment-code-code-field input {
  text-align: center;
  width: 90px;
}

.payment-code-form-page .payment-code-description-field {
  grid-column: 1;
  grid-row: 2;
  grid-template-columns: 150px 370px;
}

.payment-code-form-page .payment-code-description-field input {
  width: 370px;
}

.payment-code-form-page .payment-code-abbreviation-field {
  grid-column: 2;
  grid-row: 2;
  grid-template-columns: 150px 270px;
}

.payment-code-form-page .payment-code-abbreviation-field input {
  text-align: center;
  width: 270px;
}

.payment-code-form-page .payment-code-title-type-field,
.payment-code-form-page .payment-code-conditions-field,
.payment-code-form-page .payment-code-mode-field {
  grid-template-columns: 150px 270px;
}

.payment-code-form-page .payment-code-type-field {
  grid-column: 1;
  grid-row: 3;
  grid-template-columns: 150px 370px;
}

.payment-code-form-page .payment-code-title-type-field {
  grid-column: 2;
  grid-row: 3;
}

.payment-code-form-page .payment-code-conditions-field {
  grid-column: 2;
  grid-row: 4;
}

.payment-code-form-page .payment-code-mode-field {
  grid-column: 2;
  grid-row: 5;
}

.payment-code-form-page .payment-code-type-field select {
  width: 370px;
}

.payment-code-form-page .payment-code-title-type-field select,
.payment-code-form-page .payment-code-conditions-field select,
.payment-code-form-page .payment-code-mode-field select {
  width: 270px;
}

.payment-code-form-page .payment-code-due-dates-field,
.payment-code-form-page .payment-code-first-interval-field,
.payment-code-form-page .payment-code-interval-field,
.payment-code-form-page .payment-code-offset-field,
.payment-code-form-page .payment-code-start-field,
.payment-code-form-page .payment-code-expenses-field {
  grid-template-columns: 150px 100px;
}

.payment-code-form-page .payment-code-due-dates-field {
  grid-column: 1;
  grid-row: 5;
}

.payment-code-form-page .payment-code-interval-field {
  grid-column: 1;
  grid-row: 6;
}

.payment-code-form-page .payment-code-start-field {
  grid-column: 1;
  grid-row: 4;
  grid-template-columns: 150px 370px;
}

.payment-code-form-page .payment-code-offset-field {
  grid-column: 1;
  grid-row: 8;
}

.payment-code-form-page .payment-code-expenses-field {
  grid-column: 1;
  grid-row: 9;
}

.payment-code-form-page .payment-code-first-interval-field {
  grid-column: 1;
  grid-row: 7;
}

.payment-code-due-dates-field input,
.payment-code-first-interval-field input,
.payment-code-interval-field input,
.payment-code-offset-field input,
.payment-code-expenses-field input {
  width: 100px;
}

.payment-code-due-dates-field input,
.payment-code-first-interval-field input,
.payment-code-interval-field input,
.payment-code-offset-field input {
  text-align: center;
}

.payment-code-expenses-field input {
  text-align: right;
}

.payment-code-start-field select {
  width: 370px;
}

.payment-code-skip-august-field,
.payment-code-skip-december-field {
  align-items: center;
  display: flex;
  height: 30px;
}

.payment-code-skip-august-field {
  grid-column: 2;
  grid-row: 6;
}

.payment-code-skip-december-field {
  grid-column: 2;
  grid-row: 7;
}

.payment-code-form-page.data-form-skin .payment-code-skip-august-field .check-button-field,
.payment-code-form-page.data-form-skin .payment-code-skip-december-field .check-button-field {
  gap: 0;
  grid-template-columns: 150px 68px;
  width: 224px;
}

.payment-code-form-page.data-form-skin .payment-code-skip-august-field .check-button-field .check-text,
.payment-code-form-page.data-form-skin .payment-code-skip-december-field .check-button-field .check-text {
  width: 150px;
}

.payment-code-form-page.data-form-skin .payment-code-skip-august-field .check-button-field .check-button-wrap,
.payment-code-form-page.data-form-skin .payment-code-skip-december-field .check-button-field .check-button-wrap {
  justify-self: start;
  margin-left: 6px;
  width: 68px;
}

.sales-entry-page {
  max-width: none;
}

.sales-entry-module .page-container {
  max-width: none;
  padding-left: 12px;
  padding-right: 12px;
  width: 100%;
}

.sales-entry-module .module-page {
  padding-top: 8px;
}

.sales-entry-page .module-header {
  margin-bottom: 10px;
}

.sales-entry-frame {
  background: #f7f9fc;
  padding: 18px 18px 14px;
}

.sales-entry-toolbar {
  align-items: center;
  display: grid;
  gap: 28px;
  grid-template-columns: 270px 240px 330px 360px;
  margin-bottom: 18px;
}

.sales-entry-toolbar .field {
  align-items: center;
  display: grid;
  grid-template-columns: 120px 1fr;
  min-height: 30px;
}

.sales-entry-toolbar .sales-entry-last-field {
  grid-template-columns: 150px 1fr;
}

.sales-entry-toolbar .sales-entry-exercise-field {
  grid-template-columns: 150px 1fr;
}

.sales-entry-toolbar input {
  text-align: center;
}

.sales-entry-page label,
.sales-entry-grid th,
.sales-entry-total-label,
.sales-entry-summary label {
  color: #000000;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
}

.sales-entry-page input,
.sales-entry-page select,
.sales-entry-page textarea,
.sales-entry-grid input {
  color: #000000;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
}

.supplier-form-page.data-form-skin.sales-entry-page input,
.supplier-form-page.data-form-skin.sales-entry-page select,
.supplier-form-page.data-form-skin.sales-entry-page textarea,
.supplier-form-page.data-form-skin.sales-entry-page .sales-entry-grid input {
  color: #000000;
  font-size: 13px;
  font-weight: 520;
}

.sales-entry-page input[readonly],
.sales-entry-page textarea[readonly],
.sales-entry-page input:disabled,
.sales-entry-page textarea:disabled,
.sales-entry-grid input[readonly],
.sales-entry-grid input:disabled {
  color: #000000;
  opacity: 1;
  -webkit-text-fill-color: #000000;
}

.supplier-form-page.data-form-skin.sales-entry-page input[readonly],
.supplier-form-page.data-form-skin.sales-entry-page textarea[readonly],
.supplier-form-page.data-form-skin.sales-entry-page input:disabled,
.supplier-form-page.data-form-skin.sales-entry-page textarea:disabled,
.supplier-form-page.data-form-skin.sales-entry-page .sales-entry-grid input[readonly],
.supplier-form-page.data-form-skin.sales-entry-page .sales-entry-grid input:disabled {
  color: #000000;
  opacity: 1;
  -webkit-text-fill-color: #000000;
}

.sales-entry-grid-wrap {
  border: 1px solid #8799ad;
  overflow-x: auto;
}

.sales-entry-grid {
  border-collapse: separate;
  border-spacing: 0;
  min-width: 1500px;
  table-layout: fixed;
  width: 100%;
}

.sales-entry-grid tbody {
  display: table-row-group;
}

.sales-entry-grid tbody.is-scrollable {
  display: block;
  max-height: calc(var(--sales-visible-rows, 10) * 24px);
  overflow-y: auto;
}

.sales-entry-grid tbody.is-scrollable tr {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.sales-entry-grid col.sales-col-code {
  width: 70px;
}

.sales-entry-grid col.sales-col-name {
  width: 180px;
}

.sales-entry-grid col.sales-col-money {
  width: 96px;
}

.sales-entry-grid th,
.sales-entry-grid td {
  border: 1px solid #c8ced8;
  height: 24px;
  padding: 0;
}

.sales-entry-grid tr > :last-child {
  border-right: 0;
}

.sales-entry-grid tbody tr:last-child td,
.sales-entry-grid tfoot tr:last-child th,
.sales-entry-grid tfoot tr:last-child td {
  border-bottom: 0;
}

.sales-entry-grid thead tr:not(.sales-entry-group-row) th:nth-child(2),
.sales-entry-grid thead tr:not(.sales-entry-group-row) th:nth-child(7),
.sales-entry-grid tbody td:nth-child(2),
.sales-entry-grid tbody td:nth-child(7),
.sales-entry-grid tfoot th:first-child,
.sales-entry-grid tfoot td:nth-child(6) {
  border-right: 1px solid #ffffff;
}

.sales-entry-grid th {
  background: #b8cbe0;
  color: #000000;
  text-align: center;
}

.sales-entry-grid .sales-entry-group-row th {
  background: linear-gradient(#c7d7e8, #b8cbe0 52%, #a9bed6);
  border: 1px solid #c8ced8;
  border-bottom: 1px solid #9fb0c4;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.72),
    inset 0 -1px 0 rgba(72, 91, 112, 0.26);
  height: 30px;
}

.sales-entry-grid .sales-entry-group-row th:nth-child(1),
.sales-entry-grid .sales-entry-group-row th:nth-child(2) {
  border-right: 1px solid #ffffff;
}

.sales-entry-grid thead th {
  border-color: #c8ced8;
}

.sales-entry-grid thead tr + tr th {
  border-top: 0;
}

.sales-entry-grid thead th + th {
  border-left: 0;
}

.sales-entry-grid td {
  background: #ffffff;
}

.sales-entry-grid tbody td:nth-child(1),
.sales-entry-grid tbody td:nth-child(2) {
  background: #b8cbe0;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: #000000;
}

.sales-entry-grid tbody td:nth-child(1) {
  text-align: center;
  width: 70px;
}

.sales-entry-grid tbody td:nth-child(2) {
  padding-left: 6px;
  width: 180px;
}

.sales-entry-grid .sales-entry-disabled-row td,
.sales-entry-grid .sales-entry-disabled-row td:nth-child(1),
.sales-entry-grid .sales-entry-disabled-row td:nth-child(2) {
  background: #edf2f7;
  color: #8493a5;
}

.sales-entry-grid .sales-entry-disabled-row input {
  background: #edf2f7 !important;
  color: #8493a5 !important;
  cursor: default;
  pointer-events: none;
  -webkit-text-fill-color: #8493a5 !important;
}

.sales-entry-grid thead tr:not(.sales-entry-group-row) th:nth-child(1),
.sales-entry-grid tbody td:nth-child(1),
.sales-entry-grid tfoot th:nth-child(1) {
  width: 70px;
}

.sales-entry-grid thead tr:not(.sales-entry-group-row) th:nth-child(2),
.sales-entry-grid tbody td:nth-child(2),
.sales-entry-grid tfoot th:nth-child(2) {
  width: 180px;
}

.sales-entry-grid thead tr:not(.sales-entry-group-row) th:nth-child(n+3),
.sales-entry-grid tbody td:nth-child(n+3),
.sales-entry-grid tfoot td {
  width: 96px;
}

.sales-entry-grid input {
  background: #ffffff;
  border: 0;
  display: block;
  height: 24px;
  padding: 2px 5px;
  text-align: right;
  width: 100%;
}

.supplier-form-page.data-form-skin.sales-entry-page .sales-entry-grid input {
  background: #ffffff;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box;
  display: block;
  height: 24px !important;
  line-height: 24px;
  min-height: 0 !important;
  outline: none;
  padding: 0 6px !important;
  text-align: right;
  width: 100%;
}

.sales-entry-grid input:not([readonly]):focus {
  background: #fff8bd;
  outline: 2px solid rgba(75, 100, 165, 0.28);
  outline-offset: -2px;
}

.sales-entry-grid input[readonly]:focus {
  background: rgb(230, 230, 240);
  outline: none;
}

.sales-entry-grid .sales-calculated,
.sales-entry-grid .sales-total-field {
  background: rgb(230, 230, 240);
}

.supplier-form-page.data-form-skin.sales-entry-page .sales-entry-grid input[readonly],
.supplier-form-page.data-form-skin.sales-entry-page .sales-entry-grid input:disabled,
.supplier-form-page.data-form-skin.sales-entry-page .sales-entry-grid input.sales-calculated,
.supplier-form-page.data-form-skin.sales-entry-page .sales-entry-grid input.sales-total-field {
  background: rgb(230, 230, 240);
  color: #000000;
  opacity: 1;
  -webkit-text-fill-color: #000000;
}

.sales-entry-grid tfoot th,
.sales-entry-grid tfoot td {
  background: #d9e3ef;
  border-top: 1px solid #ffffff;
  height: 26px;
}

.sales-entry-grid .sales-entry-total-label {
  background: #b8cbe0 !important;
}

.sales-entry-summary {
  display: grid;
  gap: 14px 20px;
  grid-template-columns: repeat(6, minmax(160px, 1fr));
  margin-top: 18px;
}

.sales-entry-summary .field {
  align-items: center;
  display: grid;
  grid-template-columns: 112px 1fr;
  min-height: 30px;
}

.sales-entry-summary label {
  white-space: nowrap;
}

.sales-entry-summary input {
  text-align: right;
}

.sales-history-module .page-container {
  max-width: none;
  overflow: hidden;
  padding-left: 12px;
  padding-right: 12px;
}

body.sales-history-module {
  overflow: hidden;
}

body.sales-history-module .app-footer {
  display: none;
}

.stock-purchase-stats-module .page-container {
  max-width: none;
  overflow: hidden;
  padding-left: 12px;
  padding-right: 12px;
}

body.stock-purchase-stats-module {
  overflow: hidden;
}

body.stock-purchase-stats-module .app-footer {
  display: none;
}

.sales-history-page {
  height: calc(100vh - 24px);
  max-width: none;
  overflow: hidden;
  padding-top: 4px;
}

.sales-history-page .module-header {
  align-items: center;
  gap: 12px;
  margin-bottom: 6px;
  padding-bottom: 8px;
  padding-top: 8px;
}

.supplier-form-page .sales-history-actions {
  margin-left: auto;
  margin-right: 0;
}

.sales-history-actions .button,
.sales-history-actions button {
  min-width: 86px;
  white-space: nowrap;
}

.sales-history-page.supplier-form-page.data-form-skin .top-actions button[data-sales-history-action="print"] {
  min-width: 118px;
  width: 118px;
}

.supplier-form-page.data-form-skin .top-actions .sales-history-article-button,
.supplier-form-page.data-form-skin .top-actions button.sales-history-article-button {
  min-width: 166px;
  width: 166px;
}

.sales-history-actions .sales-history-records {
  margin-left: 0;
  margin-right: 2px;
}

.stock-purchase-stats-page {
  gap: 8px;
  height: calc(100vh - 24px);
  max-width: none;
  overflow: hidden;
  padding-top: 4px;
}

.stock-purchase-stats-filters {
  margin-bottom: 0;
}

.purchase-stats-filter-row {
  align-items: center;
  display: grid;
  column-gap: 0;
  grid-template-columns: 244px 20px 244px 40px minmax(160px, 1fr) 20px 300px 20px 210px;
}

.purchase-stats-filter-row .field {
  align-items: center;
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
}

.purchase-stats-filter-row .field:nth-child(2) {
  grid-column: 3;
}

.purchase-stats-search-field {
  grid-column: 5;
  grid-template-columns: 106px minmax(0, 1fr) !important;
}

.purchase-stats-store-field {
  grid-column: 7;
  grid-template-columns: 124px minmax(0, 1fr) !important;
}

.purchase-stats-price-field {
  grid-column: 9;
  grid-template-columns: 116px 94px !important;
}

.purchase-stats-price-field input {
  text-align: right;
}

.purchase-stats-refresh {
  height: 40px;
}

.purchase-stats-main-panel,
.purchase-stats-detail-panel {
  border: 1px solid #8799ad;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.purchase-stats-main-panel {
  flex: 1 1 0;
  min-height: 0;
}

.purchase-stats-main-panel h2,
.purchase-stats-detail-panel h2 {
  background: #b8cbe0;
  color: #061d45;
  font-size: 13px;
  font-weight: 520;
  line-height: 22px;
  margin: 0;
  padding: 0 8px;
}

.purchase-stats-grid-frame {
  border: 0;
  border-radius: 0;
}

.purchase-stats-grid {
  min-width: 1500px;
}

.purchase-stats-grid th,
.purchase-stats-detail-grid th {
  height: 24px;
}

.purchase-stats-grid th:nth-child(n+4):nth-child(-n+10),
.purchase-stats-grid td:nth-child(n+4):nth-child(-n+10) {
  width: 98px;
}

.purchase-stats-grid th:nth-child(n+4) {
  text-align: right;
}

.purchase-stats-grid th:nth-child(2),
.purchase-stats-grid td:nth-child(2) {
  width: 280px;
}

.purchase-stats-grid td:nth-child(1),
.purchase-stats-grid td:nth-child(2) {
  background: #ffffb3;
}

.purchase-stats-grid td:nth-child(3),
.purchase-stats-grid td:nth-child(10),
.purchase-stats-grid td:nth-child(11),
.purchase-stats-grid td:nth-child(12),
.purchase-stats-detail-grid td:nth-child(1) {
  text-align: center;
}

.purchase-stats-grid td:nth-child(n+4):nth-child(-n+10),
.purchase-stats-detail-grid th:nth-child(n+3),
.purchase-stats-detail-grid td:nth-child(n+3) {
  text-align: right;
}

.purchase-stats-detail-panel {
  flex: 0 0 124px;
}

.purchase-stats-detail-layout {
  display: grid;
  flex: 1 1 auto;
  grid-template-columns: minmax(0, 1fr);
  min-height: 0;
  padding: 0;
}

.purchase-stats-detail-frame {
  border: 0;
  border-radius: 0;
}

.purchase-stats-detail-grid {
  max-width: 940px;
  min-width: 940px;
  table-layout: fixed;
  width: 940px;
}

.purchase-price-low {
  background: #bfe8bf !important;
}

.purchase-price-high {
  background: #f5b6b6 !important;
}

.sales-history-filters {
  margin-bottom: 6px;
}

.sales-history-filters .form-frame {
  background: #f7f9fc;
  margin-top: 0;
  padding: 8px 14px 10px;
}

.sales-history-filter-row {
  align-items: center;
  display: grid;
  gap: 20px;
  grid-template-columns: 196px 256px;
}

.sales-history-filter-row .field {
  align-items: center;
  display: grid;
  grid-template-columns: 90px 1fr;
}

.sales-history-filter-row input,
.sales-history-filter-row select {
  height: 24px;
}

.sales-history-filter-row select[name="year"] {
  text-align: center;
  text-align-last: center;
}

.sales-history-layout {
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) 145px;
  height: calc(100vh - 176px);
  min-height: 0;
}

.sales-history-main {
  display: grid;
  gap: 6px;
  grid-template-rows: minmax(0, 1fr) 139px;
  min-width: 0;
  min-height: 0;
}

.sales-history-panel {
  border: 1px solid #8a8f98;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}

.sales-history-panel h2,
.sales-history-totals h2 {
  background: #a9c0d8;
  color: #0f2236;
  font-size: 13px;
  font-weight: 500;
  height: 23px;
  line-height: 23px;
  margin: 0;
  padding: 0 8px;
}

.sales-history-grid-frame {
  background: #ffffff;
  height: calc(100% - 23px);
  min-height: 0;
  overflow: auto;
  scrollbar-gutter: stable;
}

.sales-history-detail-frame {
  background: #ffffff;
  height: calc(100% - 23px);
  min-height: 0;
  overflow: auto;
  scrollbar-gutter: stable;
}

.sales-history-grid {
  min-width: 1210px;
  table-layout: fixed;
  user-select: none;
}

.sales-history-grid th,
.sales-history-grid td {
  font-size: 13px;
  height: 27px;
  padding: 4px 6px;
}

.sales-history-grid th {
  text-align: center;
}

.sales-history-grid td {
  background: #ffffff;
  box-sizing: border-box;
  font-weight: 520;
  line-height: 18px;
  text-align: right;
  white-space: nowrap;
}

.sales-history-grid td:nth-child(1),
.sales-history-grid td:nth-child(2),
.sales-history-grid td:nth-child(3) {
  text-align: center;
}

.sales-history-grid td:nth-child(4),
.sales-history-grid td:nth-child(5),
.sales-history-grid td:nth-child(6),
.sales-history-grid td:nth-child(7) {
  background: rgb(255, 255, 220);
}

.sales-history-grid td:nth-child(n+8) {
  background: rgb(200, 255, 220);
}

.sales-history-detail-grid td:nth-child(3),
.sales-history-detail-grid td:nth-child(4),
.sales-history-detail-grid td:nth-child(5),
.sales-history-detail-grid td:nth-child(6) {
  background: rgb(255, 255, 220);
}

.sales-history-detail-grid td:nth-child(n+7) {
  background: rgb(200, 255, 220);
}

.sales-history-grid tbody tr.selected td,
.sales-history-grid tbody tr.selected-row td {
  background: #b8d2ee;
  color: #102b49;
}

.sales-history-grid tbody tr.selected td:first-child,
.sales-history-grid tbody tr.selected-row td:first-child {
  box-shadow: inset 4px 0 0 #2f6faa;
}

.sales-history-grid tbody tr:focus-visible td {
  outline: none;
}

.sales-history-grid tbody tr {
  cursor: pointer;
  height: 27px;
  outline: none;
}

.sales-history-grid th:nth-child(1),
.sales-history-grid td:nth-child(1) {
  width: 60px;
}

.sales-history-grid th:nth-child(2),
.sales-history-grid td:nth-child(2) {
  width: 83px;
}

.sales-history-grid th:nth-child(3),
.sales-history-grid td:nth-child(3) {
  width: 124px;
}

.sales-history-grid th:nth-child(4),
.sales-history-grid td:nth-child(4),
.sales-history-grid th:nth-child(5),
.sales-history-grid td:nth-child(5),
.sales-history-grid th:nth-child(6),
.sales-history-grid td:nth-child(6),
.sales-history-grid th:nth-child(7),
.sales-history-grid td:nth-child(7),
.sales-history-grid th:nth-child(8),
.sales-history-grid td:nth-child(8),
.sales-history-grid th:nth-child(11),
.sales-history-grid td:nth-child(11),
.sales-history-grid th:nth-child(12),
.sales-history-grid td:nth-child(12) {
  width: 84px;
}

.sales-history-grid th:nth-child(9),
.sales-history-grid td:nth-child(9),
.sales-history-grid th:nth-child(10),
.sales-history-grid td:nth-child(10),
.sales-history-grid th:nth-child(13),
.sales-history-grid td:nth-child(13) {
  width: 80px;
}

.sales-history-grid th:last-child,
.sales-history-grid td:last-child {
  padding-right: 22px;
  width: 115px;
}

.sales-history-detail-grid th:nth-child(1),
.sales-history-detail-grid td:nth-child(1) {
  width: 80px;
}

.sales-history-detail-grid th:nth-child(2),
.sales-history-detail-grid td:nth-child(2) {
  text-align: left;
  width: 190px;
}

.sales-history-totals {
  border: 1px solid #8a8f98;
  display: grid;
  gap: 5px;
  padding-bottom: 8px;
  overflow: hidden;
  user-select: none;
}

.sales-history-totals div {
  display: grid;
  gap: 0;
  grid-template-rows: 22px 22px;
  padding: 0 6px;
}

.sales-history-totals span,
.sales-history-totals strong {
  align-items: center;
  border: 1px solid #8a8f98;
  display: inline-flex;
  justify-content: center;
}

.sales-history-totals span {
  background: #b8cbe0;
  font-weight: 400;
}

.sales-history-totals strong {
  background: #e2e2ea;
  font-weight: 600;
}

.sales-history-empty {
  background: #ffffff;
  padding: 18px;
  text-align: center;
}

.sales-history-page input[readonly],
.sales-history-page textarea[readonly] {
  user-select: none;
}

.fish-sales-history-page .sales-history-filter-row {
  grid-template-columns: 200px 250px minmax(430px, 1fr) 280px;
}

.fish-sales-history-page > .module-header {
  height: 70px;
  margin-bottom: 10px;
  min-height: 70px;
}

.fish-sales-history-page.supplier-form-page.data-form-skin .top-actions.sales-history-actions > .button,
.fish-sales-history-page.supplier-form-page.data-form-skin .top-actions.sales-history-actions > button {
  flex: 0 0 125px;
  min-width: 125px;
  width: 125px;
}

.fish-sales-history-page {
  padding-top: 10px;
}

.fish-sales-history-page .sales-history-filters,
.fish-sales-history-page .sales-history-filters .form-frame {
  box-sizing: border-box;
  height: 52px;
  min-height: 52px;
  max-height: 52px;
}

.fish-sales-history-page .sales-history-filters .form-frame {
  align-items: center;
  display: flex;
  padding: 0 14px;
}

.fish-sales-history-page .sales-history-filter-row {
  align-items: center;
  height: 24px;
  width: 100%;
}

.fish-sales-history-page .sales-history-customer-filter {
  grid-template-columns: 90px 110px minmax(260px, 1fr) 34px;
}

.fish-sales-history-page .sales-history-customer-filter input {
  min-width: 0;
}

.fish-sales-history-page .sales-history-customer-lookup {
  box-sizing: border-box;
  height: 24px;
  min-height: 24px;
  max-height: 24px;
  padding: 0;
  width: 34px;
}

.fish-sales-history-page .sales-history-store-filter {
  grid-template-columns: 110px minmax(150px, 1fr);
}

.fish-sales-history-page .sales-history-main {
  grid-template-rows: minmax(0, 1fr) 182px;
}

.fish-sales-history-page .sales-history-totals {
  align-content: start;
  gap: 4px;
  grid-auto-rows: 44px;
  padding-top: 4px;
}

.fish-sales-history-page .sales-history-totals div {
  height: 44px;
}

.fish-sales-history-grid {
  min-width: 1140px;
}

.fish-sales-history-grid td {
  background: #fff;
}

.fish-sales-history-grid td:nth-child(4),
.fish-sales-history-grid td:nth-child(5),
.fish-sales-history-grid td:nth-child(6),
.fish-sales-history-grid td:nth-child(7),
.fish-sales-history-grid td:nth-child(n+8) {
  background: #fff;
}

.fish-sales-history-grid th:nth-child(1),
.fish-sales-history-grid td:nth-child(1) { width: 60px; }
.fish-sales-history-grid th:nth-child(2),
.fish-sales-history-grid td:nth-child(2),
.fish-sales-history-grid th:nth-child(3),
.fish-sales-history-grid td:nth-child(3) { width: 80px; }
.fish-sales-history-grid th:nth-child(4),
.fish-sales-history-grid td:nth-child(4) { width: 92px; text-align: center; }
.fish-sales-history-grid th:nth-child(5),
.fish-sales-history-grid td:nth-child(5) { width: 80px; text-align: center; }
.fish-sales-history-grid th:nth-child(6),
.fish-sales-history-grid td:nth-child(6) { width: 290px; text-align: left; }
.fish-sales-history-grid th:nth-child(n+7),
.fish-sales-history-grid td:nth-child(n+7) { width: 92px; text-align: right; }
.fish-sales-history-grid th:last-child,
.fish-sales-history-grid td:last-child { width: 100px; padding-right: 10px; }

.fish-sales-history-detail-grid {
  min-width: 1080px;
}

.fish-sales-history-detail-grid td {
  background: #fff !important;
}

.fish-sales-history-detail-grid th:nth-child(1),
.fish-sales-history-detail-grid td:nth-child(1) { width: 100px; text-align: left; }
.fish-sales-history-detail-grid th:nth-child(2),
.fish-sales-history-detail-grid td:nth-child(2) { width: 300px; text-align: left; }
.fish-sales-history-detail-grid th:nth-child(3),
.fish-sales-history-detail-grid td:nth-child(3) { width: 70px; text-align: center; }
.fish-sales-history-detail-grid th:nth-child(4),
.fish-sales-history-detail-grid td:nth-child(4) { width: 70px; }
.fish-sales-history-detail-grid th:nth-child(5),
.fish-sales-history-detail-grid td:nth-child(5) { width: 80px; }
.fish-sales-history-detail-grid th:nth-child(6),
.fish-sales-history-detail-grid td:nth-child(6),
.fish-sales-history-detail-grid th:nth-child(7),
.fish-sales-history-detail-grid td:nth-child(7),
.fish-sales-history-detail-grid th:nth-child(9),
.fish-sales-history-detail-grid td:nth-child(9) { width: 90px; }
.fish-sales-history-detail-grid th:nth-child(8),
.fish-sales-history-detail-grid td:nth-child(8) { width: 70px; }
.fish-sales-history-detail-grid th:nth-child(10),
.fish-sales-history-detail-grid td:nth-child(10) { width: 100px; padding-right: 10px; }

.exercise-change-page {
  max-width: 940px;
}

.exercise-change-page .module-header {
  grid-template-columns: 1fr auto;
}

.exercise-change-page .top-actions {
  justify-content: flex-end;
}

.exercise-change-page .form-frame {
  min-height: 118px;
  padding: 26px 20px;
}

.exercise-change-content {
  align-items: center;
  display: flex;
  gap: 28px;
  justify-content: space-between;
}

.exercise-change-actions {
  align-items: stretch;
  flex: 0 0 120px;
  flex-direction: column;
  gap: 10px;
}

.exercise-change-actions .button,
.exercise-change-actions button {
  height: 36px;
  justify-content: center;
  width: 120px;
}

.exercise-change-form {
  max-width: none;
  width: 100%;
}

.exercise-change-fields {
  align-items: start;
  display: grid;
  gap: 34px;
  grid-template-columns: 330px 330px;
}

.exercise-change-fields .field {
  align-items: center;
  column-gap: 6px;
  display: grid;
  grid-template-columns: 164px 150px;
}

.exercise-change-fields label,
.exercise-change-fields input {
  font-size: 18px;
  font-weight: 700;
}

.exercise-change-fields input {
  font-size: 22px;
  font-weight: 700;
  height: 42px;
  text-align: center;
}

.supplier-form-page.data-form-skin .exercise-change-fields input {
  font-size: 22px;
  font-weight: 700;
  height: 42px;
  width: 150px;
}

.settings-module .app-footer {
  user-select: none;
}

.settings-page.module-page {
  max-width: 1240px;
}

.settings-page .module-header {
  margin-bottom: 8px;
}

.settings-shell {
  background: #ffffff;
  border: 1px solid #aab3bf;
  border-radius: 7px;
  display: grid;
  grid-template-columns: 186px minmax(0, 1fr);
  min-height: 560px;
  overflow: hidden;
}

.settings-tabs {
  background: #e8eef7;
  border-right: 1px solid #aab3bf;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 12px 10px;
}

.settings-tab-button {
  align-items: center;
  background: #ffffff;
  border: 1px solid #aab3bf;
  border-radius: 5px;
  color: #22384e;
  cursor: pointer;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  height: 34px;
  justify-content: flex-start;
  padding: 0 12px;
  text-align: left;
}

.settings-tab-button.active {
  background: var(--BlueNote);
  border-color: var(--BlueNote);
  color: #ffffff;
}

.settings-content {
  padding: 14px;
}

.settings-tab-panel {
  display: none;
}

.settings-tab-panel.active {
  display: block;
}

.settings-frame {
  margin: 0 0 7px;
  padding: 8px 10px 9px;
}

.settings-frame:last-child {
  margin-bottom: 0;
}

.settings-grid {
  display: grid;
  gap: 6px 12px;
}

.settings-company-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.settings-address-grid {
  grid-template-columns: minmax(360px, 1fr) 300px 300px;
}
.settings-owner-address-grid {
  grid-template-columns: calc((100% - 12px) / 2) 300px minmax(0, 1fr);
}

.settings-owner-address-grid .settings-owner-phone-field,
.settings-owner-address-grid .settings-owner-email-field {
  grid-column: 2 / 4;
}

.settings-owner-address-grid .settings-owner-pec-field {
  grid-column: 1;
  grid-row: 3;
}

.settings-fe-grid {
  grid-template-columns: minmax(0, 1fr);
}

.settings-accounting-grid {
  grid-template-columns: minmax(0, 1fr);
}

.settings-accounting-grid .field {
  grid-template-columns: 170px 140px;
}

.settings-accounting-grid input {
  max-width: 140px;
  min-width: 140px;
  width: 140px;
}
.settings-accounting-grid input[data-percent-field] {
  text-align: center;
}

.settings-billing-grid,
.settings-mail-grid,
.settings-backup-grid,
.settings-print-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.settings-grid .field {
  align-items: center;
  column-gap: 6px;
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
}

.settings-grid .field-check {
  align-items: center;
  display: grid;
}

.settings-grid .field-wide {
  grid-column: span 2;
}

.settings-address-grid .field-wide {
  grid-column: 1 / -1;
}

.settings-address-grid .field-short {
  grid-template-columns: 120px minmax(0, 1fr);
}

.settings-address-grid .settings-address-pec-field {
  grid-template-columns: 86px minmax(0, 1fr);
}

.settings-address-grid .settings-address-country-field {
  grid-template-columns: 86px 70px;
}

.settings-grid .field-full {
  grid-column: 1 / -1;
}
.settings-billing-left-field {
  grid-column: 1;
}

.settings-grid .field-short {
  grid-template-columns: 86px 70px;
}

.settings-grid .settings-mail-port-field {
  grid-template-columns: 150px 70px;
}
.settings-grid .settings-mail-smtp-row {
  align-items: center;
  column-gap: 12px;
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: calc((100% - 12px) / 2) 226px 1fr 226px;
}

.settings-grid .settings-mail-smtp-row .settings-mail-server-field {
  grid-column: 1;
}

.settings-grid .settings-mail-smtp-row .settings-mail-port-field {
  grid-column: 2;
}

.settings-grid .settings-mail-smtp-row .settings-mail-check-field {
  grid-column: 4;
}
.settings-grid .settings-mail-check-field {
  grid-template-columns: 150px 70px;
}

.settings-grid .settings-mail-check-field > span:last-child {
  display: none;
}

.settings-password-control {
  position: relative;
  width: 100%;
}

.settings-password-control input {
  padding-right: 44px;
  width: 100%;
}

.settings-password-toggle {
  align-items: center;
  background: transparent;
  border: 0;
  color: #526173;
  cursor: pointer;
  display: flex;
  height: 28px;
  justify-content: center;
  min-height: 28px;
  padding: 0;
  position: absolute;
  right: 1px;
  top: 1px;
  width: 40px;
}

.settings-password-toggle:hover,
.settings-password-toggle.active {
  background: #eef4ff;
  color: var(--BlueNote);
}

.settings-password-toggle svg {
  fill: none;
  height: 20px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
  width: 20px;
}
.settings-grid .settings-mail-test-field {
  grid-template-columns: 150px 170px;
}

.settings-grid .settings-mail-test-field > span {
  display: block;
}

.settings-mail-test-button {
  min-height: 40px;
  padding-left: 14px;
  padding-right: 14px;
  white-space: nowrap;
}

.settings-grid label,
.settings-grid input,
.settings-grid select,
.settings-grid textarea,
.settings-weekdays label {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
}

.settings-grid label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  color: #22384e;
  display: inline-flex;
  height: 30px;
  padding: 0 9px;
  user-select: none;
}

.settings-grid input,
.settings-grid select,
.settings-grid textarea {
  background: #ffffff;
  border: 1px solid #9aa5b5;
  border-radius: 5px;
  color: #111827;
  padding: 0 10px;
}

.settings-grid input,
.settings-grid select {
  height: 30px;
}

.settings-grid textarea {
  min-height: 58px;
  padding: 7px 10px;
  resize: vertical;
}

.settings-grid input:focus,
.settings-grid select:focus,
.settings-grid textarea:focus {
  border-color: var(--BlueNote);
  box-shadow: 0 0 0 2px rgba(75, 100, 165, 0.18);
  outline: none;
}

.settings-grid .field-validation-error,
.settings-grid .field-validation-valid,
.settings-page .validation-summary {
  display: none;
}

.settings-grid .input-validation-error {
  border-color: #b32d2e;
  box-shadow: 0 0 0 2px rgba(179, 45, 46, 0.14);
}

.settings-textarea-field {
  align-items: start !important;
}

.settings-textarea-field label {
  align-self: start;
}
.settings-billing-wide-label-field {
  grid-template-columns: 210px minmax(0, 1fr) !important;
}

.settings-note {
  align-items: center;
  background: #fff8a6;
  border: 1px solid #c9b94d;
  border-radius: 5px;
  color: #1f2937;
  display: flex;
  flex-wrap: wrap;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  gap: 8px 16px;
  min-height: 34px;
  padding: 6px 10px;
}

.settings-grid .check-button-field {
  align-items: stretch;
  background: transparent;
  border: 0;
  display: grid;
  gap: 6px;
  grid-template-columns: 150px 68px;
  height: 30px;
  min-height: 30px;
  padding: 0;
  width: 224px;
}

.settings-grid .check-button-field .check-text {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  box-sizing: border-box;
  color: #22384e;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 30px;
  min-height: 30px;
  padding: 0 9px;
  user-select: none;
  width: 150px;
}

.settings-grid .check-button-field input[type="checkbox"] {
  border: 0;
  height: 1px;
  min-height: 0;
  opacity: 0;
  padding: 0;
  position: absolute;
  width: 1px;
}

.settings-grid .check-button-field .check-button-wrap {
  align-items: center;
  background: #ffffff;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  box-sizing: border-box;
  display: flex;
  height: 30px;
  justify-content: center;
  overflow: hidden;
  position: relative;
}

.settings-grid .check-button-field .check-button-wrap::before {
  background: rgb(210, 210, 210);
  border: 1px solid #c2ccda;
  border-radius: 999px;
  content: "";
  display: block;
  height: 22px;
  transition: background 0.15s ease, border-color 0.15s ease;
  width: 42px;
}

.settings-grid .check-button-field .check-button-wrap::after {
  background: #ffffff;
  border-radius: 50%;
  box-shadow: 0 1px 3px rgba(23, 32, 51, 0.28);
  content: "";
  height: 16px;
  left: 16px;
  position: absolute;
  top: 7px;
  transition: transform 0.15s ease;
  width: 16px;
}

.settings-grid .check-button-field input:checked ~ .check-button-wrap::before {
  background: var(--BlueNote);
  border-color: var(--BlueNote);
}

.settings-grid .check-button-field input:checked ~ .check-button-wrap::after {
  transform: translateX(20px);
}

.settings-grid .check-button-field input:focus-visible ~ .check-button-wrap {
  box-shadow: 0 0 0 3px rgba(75, 100, 165, 0.18);
}

.settings-check-full {
  grid-column: 1 / -1;
}

.settings-backup-grid > .field,
.settings-backup-grid > .field-check {
  grid-column: 1;
}

.settings-backup-grid > .field {
  grid-template-columns: 170px minmax(0, 1fr);
}

.settings-backup-grid .settings-backup-check-field {
  grid-template-columns: 170px 70px;
}

.settings-backup-grid .settings-backup-check-field > span:last-child {
  display: none;
}

.settings-backup-grid > .settings-weekdays {
  grid-column: 1 / -1;
  grid-template-columns: 170px repeat(7, minmax(0, 1fr));
}
.settings-check-wide {
  min-height: 30px;
}

.settings-weekdays {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: 150px repeat(7, minmax(0, 1fr));
}

.settings-weekdays .settings-weekdays-label,
.settings-weekdays label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  box-sizing: border-box;
  color: #22384e;
  display: inline-flex;
  height: 30px;
  padding: 0 9px;
  user-select: none;
}

.settings-weekdays label {
  background: #ffffff;
  gap: 6px;
}

.settings-weekdays input[type="checkbox"] {
  height: 15px;
  min-height: 15px;
  padding: 0;
  width: 15px;
}

.chart-account-toolbar {
  grid-template-columns: minmax(280px, 360px) minmax(300px, 420px) 230px auto;
}

.chart-account-master-filter select {
  min-width: 300px;
}

.chart-account-type-filter select {
  min-width: 190px;
}

.chart-account-grid-frame {
  max-height: calc(100vh - 210px);
}

.chart-account-grid th:nth-child(1),
.chart-account-grid td:nth-child(1),
.chart-account-grid th:nth-child(3),
.chart-account-grid td:nth-child(3),
.chart-account-grid th:nth-child(5),
.chart-account-grid td:nth-child(5),
.chart-account-grid th:nth-child(6),
.chart-account-grid td:nth-child(6),
.chart-account-grid th:nth-child(7),
.chart-account-grid td:nth-child(7),
.chart-account-grid th:nth-child(8),
.chart-account-grid td:nth-child(8) {
  text-align: center;
}

.chart-account-form-page .compact-frame {
  box-sizing: border-box;
  max-width: none;
  width: 100%;
}

.chart-account-fields {
  --label-width: 160px;
  align-items: center;
  display: grid;
  gap: 14px;
  grid-template-columns: 1fr;
  max-width: 700px;
  padding: 14px 12px 18px;
}

.chart-account-fields .field,
.chart-account-fields .field-check {
  align-items: center;
  min-height: 30px;
}

.chart-account-fields .field label,
.chart-account-fields .field input,
.chart-account-fields .field select {
  height: 30px;
}

.chart-account-fields .field label {
  align-items: center;
  display: flex;
  min-width: 0;
  padding-bottom: 0;
  padding-top: 0;
}

.chart-account-fields .field-validation-valid,
.chart-account-fields .field-validation-error {
  display: none;
}

.chart-account-code-field {
  grid-template-columns: var(--label-width) 90px;
}

.chart-account-code-field input {
  text-align: center;
  width: 90px;
}

.chart-account-description-field {
  grid-template-columns: var(--label-width) 500px;
}

.chart-account-description-field input {
  width: 500px;
}

.chart-account-master-field {
  grid-template-columns: var(--label-width) 500px;
}

.chart-account-master-field select {
  width: 500px;
}

.chart-account-type-field {
  grid-template-columns: var(--label-width) 220px;
}

.chart-account-type-field input {
  width: 220px;
}

.chart-account-company-field {
  grid-template-columns: var(--label-width) 220px;
}

.chart-account-company-field select {
  width: 220px;
}

.chart-account-stock-field,
.chart-account-locked-field {
  display: flex;
}

.chart-account-stock-field .check-button-field {
  grid-template-columns: var(--label-width) 68px;
  width: 228px;
}

.chart-account-locked-field .check-button-field {
  grid-template-columns: var(--label-width) 68px;
  width: 228px;
}

.chart-account-fields .field label,
.chart-account-form-page .chart-account-stock-field .check-text,
.chart-account-form-page .chart-account-locked-field .check-text {
  white-space: nowrap;
  width: var(--label-width);
}

.accounting-cause-toolbar {
  grid-template-columns: minmax(280px, 380px) 260px auto;
}

.accounting-cause-list-page .module-header {
  margin-bottom: 10px;
}

.accounting-cause-type-filter select {
  min-width: 230px;
}

.accounting-cause-grid-frame {
  max-height: calc(100vh - 210px);
}

.accounting-cause-grid {
  min-width: 1540px;
  user-select: none;
}

.accounting-cause-grid th:nth-child(1),
.accounting-cause-grid td:nth-child(1),
.accounting-cause-grid th:nth-child(3),
.accounting-cause-grid td:nth-child(3),
.accounting-cause-grid th:nth-child(4),
.accounting-cause-grid td:nth-child(4),
.accounting-cause-grid th:nth-child(5),
.accounting-cause-grid td:nth-child(5),
.accounting-cause-grid th:nth-child(6),
.accounting-cause-grid td:nth-child(6),
.accounting-cause-grid th:nth-child(7),
.accounting-cause-grid td:nth-child(7),
.accounting-cause-grid th:nth-child(9),
.accounting-cause-grid td:nth-child(9),
.accounting-cause-grid th:nth-child(n+11),
.accounting-cause-grid td:nth-child(n+11) {
  text-align: center;
}

.accounting-cause-form-page .compact-frame {
  box-sizing: border-box;
  max-width: none;
  width: 100%;
}

.accounting-cause-form-page.data-form-skin .form-frame {
  background: transparent;
  border: 0;
  padding: 0;
}

.accounting-cause-form-page.data-form-skin .form-frame legend {
  display: none;
}

.accounting-cause-edit-module .page-container {
  max-width: none;
  padding-left: 18px;
  padding-right: 18px;
  width: 100%;
}

.accounting-cause-edit-module .module-page {
  padding-top: 8px;
}

.accounting-cause-fields {
  --label-width: 136px;
  align-items: center;
  display: grid;
  gap: 10px 24px;
  grid-template-columns: 260px 640px 1fr;
  padding: 9px 12px;
}

.accounting-cause-fields .field,
.accounting-cause-fields .field-check {
  align-items: center;
  min-height: 30px;
}

.accounting-cause-fields .field label,
.accounting-cause-fields .field input,
.accounting-cause-fields .field select {
  height: 30px;
}

.accounting-cause-form-page .accounting-cause-fields .field input,
.accounting-cause-form-page .accounting-cause-fields .field select {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
}

.accounting-cause-form-page.data-form-skin .form-frame label,
.accounting-cause-form-page.data-form-skin .form-frame .check-text,
.accounting-cause-form-page.data-form-skin .form-frame input,
.accounting-cause-form-page.data-form-skin .form-frame select,
.accounting-cause-form-page.data-form-skin .accounting-cause-account-column h2,
.accounting-cause-form-page.data-form-skin .accounting-cause-account-subhead span,
.accounting-cause-form-page.data-form-skin .accounting-cause-row-button {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
}

.accounting-cause-fields .field label {
  align-items: center;
  display: flex;
  min-width: 0;
  white-space: nowrap;
  width: var(--label-width);
}

.accounting-cause-fields .field-validation-valid,
.accounting-cause-fields .field-validation-error {
  display: none;
}

.accounting-cause-code-field {
  grid-template-columns: var(--label-width) 90px;
}

.accounting-cause-code-field input {
  text-align: center;
  width: 90px;
}

.accounting-cause-description-field {
  grid-column: 2 / 4;
  grid-row: 1;
  grid-template-columns: var(--label-width) 610px;
  margin-left: 140px;
}

.accounting-cause-description-field input {
  width: 610px;
}

.accounting-cause-movement-field,
.accounting-cause-subject-field,
.accounting-cause-sign-field,
.accounting-cause-cashflow-field {
  grid-template-columns: var(--label-width) 260px;
}

.accounting-cause-movement-field {
  grid-column: 1;
  grid-row: 2;
}

.accounting-cause-subject-field {
  grid-column: 1;
  grid-row: 3;
  margin-left: 0;
}

.accounting-cause-sign-field {
  grid-column: 1;
  grid-row: 4;
}

.accounting-cause-cashflow-field {
  grid-column: 1;
  grid-row: 5;
  margin-left: 0;
}

.accounting-cause-movement-field select,
.accounting-cause-subject-field select,
.accounting-cause-sign-field select,
.accounting-cause-cashflow-field select {
  width: 260px;
}

.accounting-cause-checks {
  display: contents;
}

.accounting-cause-cash-check {
  grid-column: 2;
  grid-row: 3;
  margin-left: 140px;
}

.accounting-cause-invoice-check {
  grid-column: 2;
  grid-row: 4;
  margin-left: 140px;
}

.accounting-cause-due-date-check {
  grid-column: 2;
  grid-row: 5;
  margin-left: 140px;
}

.accounting-cause-title-check {
  grid-column: 3;
  grid-row: 3;
  margin-left: -240px;
}

.accounting-cause-salary-check {
  grid-column: 3;
  grid-row: 4;
  margin-left: -240px;
}

.accounting-cause-locked-check {
  grid-column: 3;
  grid-row: 4;
  margin-left: 20px;
}

.accounting-cause-print-check {
  grid-column: 3;
  grid-row: 3;
  margin-left: 20px;
}

.accounting-cause-checks .field-check:nth-child(1) {
  grid-column: 2;
  grid-row: 4;
}

.accounting-cause-checks .field-check:nth-child(2) {
  grid-column: 2;
  grid-row: 5;
}

.accounting-cause-checks .field-check:nth-child(3) {
  grid-column: 3;
  grid-row: 3;
}

.accounting-cause-checks .field-check:nth-child(4) {
  grid-column: 3;
  grid-row: 4;
  margin-left: -240px;
}

.accounting-cause-checks .field-check:nth-child(5) {
  grid-column: 3;
  grid-row: 3;
  margin-left: 20px;
}

.accounting-cause-checks .field-check:nth-child(6) {
  grid-column: 3;
  grid-row: 4;
  margin-left: 20px;
}

.accounting-cause-checks .check-button-field {
  grid-template-columns: 112px 68px;
  width: 180px;
}

.accounting-cause-checks .check-text {
  white-space: nowrap;
  width: 112px;
}

.accounting-cause-accounts-frame {
  margin-top: 7px;
}

.accounting-cause-accounts {
  display: grid;
  gap: 22px;
  grid-template-columns: minmax(620px, 1fr) minmax(620px, 1fr);
  padding: 9px 12px;
}

.accounting-cause-account-column {
  display: grid;
  gap: 5px;
}

.accounting-cause-account-validation {
  display: none;
}

.accounting-cause-account-column h2 {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  display: flex;
  height: 24px;
  justify-content: center;
  color: #2f3b4c;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  margin: 0;
  text-transform: uppercase;
}

.accounting-cause-account-subhead {
  display: grid;
  gap: 2px;
  grid-template-columns: 26px 26px 50px minmax(165px, 1fr) 50px minmax(210px, 1.1fr);
}

.accounting-cause-account-subhead span {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  color: #172236;
  display: inline-flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  height: 22px;
  justify-content: center;
}

.accounting-cause-subhead-master {
  grid-column: 3 / span 2;
}

.accounting-cause-subhead-account {
  grid-column: 5 / span 2;
}

.accounting-cause-account-row {
  align-items: center;
  display: grid;
  gap: 2px;
  grid-template-columns: 26px 26px 50px minmax(165px, 1fr) 50px minmax(210px, 1.1fr);
  min-height: 24px;
}

.accounting-cause-row-button {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 0;
  color: #2f3b4c;
  cursor: pointer;
  display: inline-flex;
  font-size: 1.15rem;
  font-weight: 500;
  height: 30px;
  justify-content: center;
  line-height: 1;
  min-height: 30px;
  padding: 0;
  width: 26px;
}

.accounting-cause-row-button-clear {
  font-weight: 400;
}

.accounting-cause-row-button:hover,
.accounting-cause-row-button:focus-visible {
  background: var(--BlueNote);
  color: #fff;
  outline: none;
}

.accounting-cause-account-row input,
.accounting-cause-account-row select {
  border: 1px solid #8a8f98;
  border-radius: 0;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  height: 24px;
  min-height: 24px;
  padding: 2px 4px;
  width: 100%;
}

.accounting-cause-account-row input[readonly] {
  background: #eef2f8;
}

.accounting-cause-code-box {
  text-align: center;
}

.account-zoom-overlay {
  align-items: center;
  background: rgba(24, 32, 48, 0.25);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 18px;
  position: fixed;
  user-select: none;
  z-index: 1200;
}

.account-zoom-overlay[hidden] {
  display: none;
}

.account-zoom-dialog {
  background: #e0e2f3;
  border: 1px solid #6e7786;
  box-shadow: 0 14px 34px rgba(18, 31, 48, 0.28);
  display: grid;
  gap: 10px;
  max-width: 1158px;
  padding: 14px;
  position: relative;
  width: min(1158px, calc(100vw - 36px));
}

.account-zoom-title {
  align-items: center;
  background: #6795d6;
  color: #000;
  display: flex;
  font-size: 0.9rem;
  font-weight: 700;
  height: 24px;
  padding: 0 28px;
}

.account-zoom-body {
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(760px, 1fr) 140px;
  min-height: 388px;
}

.account-zoom-grid-frame {
  background: #fff;
  border: 1px solid #8a8f98;
  max-height: 388px;
  overflow: auto;
  position: relative;
}

.account-zoom-grid {
  border-collapse: collapse;
  font-size: 0.78rem;
  min-width: 910px;
  user-select: none;
  width: 100%;
}

.account-zoom-grid th,
.account-zoom-grid td {
  border: 1px solid #9ca3ad;
  height: 24px;
  padding: 2px 6px;
  white-space: nowrap;
}

.account-zoom-grid th {
  background: #b8cbe0;
  color: #000;
  font-weight: 400;
  position: sticky;
  top: 0;
  z-index: 1;
}

.account-zoom-grid th[data-account-zoom-sort] {
  cursor: pointer;
  user-select: none;
}

.account-zoom-grid th[data-account-zoom-sort].is-sorted::after {
  content: " ▲";
  font-size: 0.66rem;
}

.account-zoom-grid th[data-account-zoom-sort].is-sorted.is-descending::after {
  content: " ▼";
}

.account-zoom-grid td {
  background: #fff;
  color: #000;
  font-weight: 700;
}

.account-zoom-grid tr.selected-row td {
  background: #c9d1d9;
}

.account-zoom-selector,
.account-zoom-selector-cell {
  width: 24px;
}

.account-zoom-grid tr.selected-row .account-zoom-selector-cell::before {
  content: "▶";
  display: block;
  font-size: 0.72rem;
  text-align: center;
}

.account-zoom-grid .code-cell {
  text-align: center;
  width: 70px;
}

.account-zoom-empty {
  color: #40536a;
  font-size: 0.9rem;
  inset: 60px 0 auto;
  position: absolute;
  text-align: center;
}

.account-zoom-type-panel {
  display: grid;
  gap: 8px;
  grid-auto-rows: 39px;
  align-content: start;
  padding-top: 8px;
}

.account-zoom-type-panel button,
.account-zoom-command {
  background: #b8cbe0;
  border: 1px solid #8799ad;
  border-radius: 4px;
  color: #000;
  font-weight: 500;
  height: 39px;
}

.account-zoom-type-panel button.is-active {
  background: rgb(75, 100, 165);
  border-color: rgb(75, 100, 165);
  color: #fff;
}

.account-zoom-command.primary {
  background: rgb(75, 100, 165);
  border-color: rgb(75, 100, 165);
  color: #fff;
}

.account-zoom-footer {
  align-items: center;
  column-gap: 2px;
  display: grid;
  grid-template-columns: 76px 270px 70px 220px 156px;
}

.account-zoom-footer .account-zoom-command {
  background: rgb(75, 100, 165);
  border-color: rgb(75, 100, 165);
  color: #fff;
  position: absolute;
  right: 14px;
  width: 140px;
}

.account-zoom-footer .account-zoom-command.primary {
  bottom: 61px;
}

.account-zoom-footer .account-zoom-command:not(.primary) {
  bottom: 14px;
}

.account-zoom-footer label,
.account-zoom-records span {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #c8d1dc;
  display: inline-flex;
  height: 24px;
  padding: 0 8px;
}

.account-zoom-footer select,
.account-zoom-footer input,
.account-zoom-records strong {
  border: 1px solid #8a8f98;
  height: 24px;
  min-height: 24px;
}

.account-zoom-records {
  display: grid;
  grid-template-columns: 76px 80px;
}

.account-zoom-records strong {
  align-items: center;
  background: #e8e9f8;
  display: inline-flex;
  justify-content: center;
}

.store-list-page .store-grid {
  min-width: 1460px;
}

.store-list-page .store-grid th:first-child,
.store-list-page .store-grid td:first-child {
  width: 80px;
}

.store-form-page .store-name-row,
.store-form-page .store-location-row {
  display: grid;
  gap: 8px 14px;
  grid-column: 1 / -1;
}

.store-form-page .store-name-row {
  grid-template-columns: 260px minmax(0, 1fr) 220px;
}

.store-form-page .store-location-row {
  grid-template-columns: calc(50% - 7px) 195px 190px;
}

.store-form-page .field-code {
  grid-template-columns: var(--label-width) minmax(0, 1fr);
  max-width: none;
}

.store-form-page .field-store-active {
  display: block;
  grid-column: auto;
  grid-row: auto;
  justify-self: end;
  margin-left: 0;
  width: 194px;
}

.store-form-page .field-store-active .check-button-field {
  grid-template-columns: 120px 68px;
  width: 194px;
}

.store-form-page .store-description-field,
.store-form-page .store-address-field {
  grid-column: 1 / -1;
}

.accounting-movements-module .page-container {
  height: calc(100vh - 20px);
  max-width: none;
  overflow: hidden;
  padding: 0 18px;
}

.accounting-movements-module .page-container > main {
  height: 100%;
  min-height: 0;
}

body.accounting-movements-module {
  overflow: hidden;
}

body.accounting-movements-module .app-footer {
  display: none;
}

.accounting-movements-page {
  display: grid;
  gap: 0;
  grid-template-rows: auto auto minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  overflow: hidden;
  padding: 14px 0 6px;
}

.accounting-movements-page .module-header {
  margin-bottom: 0;
  padding-bottom: 6px;
  padding-top: 6px;
}

.accounting-movements-actions {
  flex-wrap: nowrap;
}

.accounting-movements-actions .accounting-movements-records {
  margin-left: 0;
  margin-right: 2px;
}

.supplier-form-page.data-form-skin .top-actions .accounting-article-button,
.supplier-form-page.data-form-skin .top-actions button.accounting-article-button {
  min-width: 166px;
  width: 166px;
}

.accounting-movements-filter-row {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 155px 155px 280px 230px minmax(360px, 1fr);
}

.accounting-movements-filters {
  margin: -4px 0 4px;
}

.accounting-movements-filter-row .field {
  column-gap: 3px;
  grid-template-columns: 72px minmax(0, 1fr);
  min-width: 0;
}

.accounting-movements-filter-row > .field:nth-child(1),
.accounting-movements-filter-row > .field:nth-child(2) {
  grid-template-columns: 30px minmax(0, 1fr);
}

.accounting-movements-filter-row > .field:nth-child(1) {
  grid-template-columns: 40px minmax(0, 1fr);
}

.accounting-movements-filter-row > .field:nth-child(1) > label {
  display: flex;
  justify-content: center;
  padding-left: 0;
  text-align: center;
}

.accounting-movements-filter-row input,
.accounting-movements-filter-row select {
  min-width: 0;
  width: 100%;
}

.accounting-cause-filter {
  min-width: 0;
}

.accounting-movements-filter-row .accounting-type-filter {
  grid-template-columns: 62px minmax(0, 1fr);
}

.accounting-movements-filter-row .accounting-supplier-filter {
  grid-template-columns: 70px 80px minmax(150px, 1fr) 28px;
  min-width: 0;
}

.accounting-supplier-filter input[readonly] {
  background: rgb(230, 230, 240);
}

.accounting-supplier-filter [data-accounting-supplier-code] {
  padding-left: 2px;
  padding-right: 2px;
  text-align: center;
}

.accounting-supplier-filter input[type="hidden"] {
  display: none;
}

.lookup-button {
  align-self: stretch;
  background: #ffffff;
  border: 1px solid #8793a4;
  border-radius: 4px;
  cursor: pointer;
  min-height: 28px;
  min-width: 30px;
  position: relative;
}

.lookup-button::before {
  border: 2px solid var(--BlueNote);
  border-radius: 50%;
  content: "";
  height: 40%;
  left: 23%;
  position: absolute;
  top: 20%;
  width: 40%;
}

.lookup-button::after {
  background: var(--BlueNote);
  content: "";
  height: 2px;
  left: 58%;
  position: absolute;
  top: 64%;
  transform: rotate(45deg);
  transform-origin: left center;
  width: 27%;
}

.lookup-button:hover,
.lookup-button:focus-visible {
  background: #eef4fb;
  border-color: var(--BlueNote);
  outline: none;
}

.lookup-overlay {
  align-items: center;
  background: rgba(15, 23, 42, 0.24);
  display: none;
  inset: 0;
  justify-content: center;
  position: fixed;
  user-select: none;
  z-index: 2600;
}

.lookup-overlay.is-open {
  display: flex;
}

.lookup-overlay.is-open.is-article-lookup {
  align-items:center;
  box-sizing:border-box;
  justify-content:center;
  overflow:auto;
  padding:8px;
}

.lookup-dialog {
  background: #e7edf5;
  border: 1px solid #7d8794;
  box-shadow: 0 18px 42px rgba(20, 30, 45, 0.24);
  display: grid;
  gap: 8px;
  grid-template-rows: 30px 34px minmax(0, 1fr) 38px;
  height: min(680px, calc(100vh - 80px));
  padding: 10px;
  width: min(900px, calc(100vw - 80px));
}

.lookup-dialog.is-customer-lookup {
  width: min(970px, calc(100vw - 80px));
}

.lookup-dialog.is-article-lookup {
  box-sizing:border-box;
  flex:0 0 1420px !important;
  width:1420px !important;
  min-width:1420px !important;
  max-width:1420px !important;
}

.lookup-dialog.is-article-lookup .lookup-table {
  width:auto;
  min-width:0;
}

.lookup-dialog.is-article-lookup .lookup-table th:nth-child(1),
.lookup-dialog.is-article-lookup .lookup-table td:nth-child(1) {
  box-sizing:border-box;
  width:120px;
  min-width:120px;
  max-width:120px;
}
.lookup-dialog.is-article-lookup .lookup-table th:nth-child(2),
.lookup-dialog.is-article-lookup .lookup-table td:nth-child(2) {
  box-sizing:border-box;
  width:300px;
  min-width:300px;
  max-width:300px;
}
.lookup-dialog.is-article-lookup .lookup-table th:nth-child(3),
.lookup-dialog.is-article-lookup .lookup-table td:nth-child(3) {
  box-sizing:border-box;
  width:70px;
  min-width:70px;
  max-width:70px;
  text-align:center;
}
.lookup-dialog.is-article-lookup .lookup-table .numeric-column { text-align:right; }
.lookup-dialog.is-article-lookup .lookup-table th.numeric-column button { justify-content:flex-end; }
.lookup-dialog.is-article-lookup .lookup-table th {
  background:linear-gradient(#c7d7e8, #b8cbe0 52%, #a9bed6);
  border:1px solid #9fb1c4;
  box-shadow:
    inset 0 1px rgba(255,255,255,.85),
    inset 0 -1px rgba(100,118,140,.35);
  color:#0e1824;
  font-size:13px;
  font-weight:500;
  height:32px;
  padding:0;
}
.lookup-dialog.is-article-lookup .lookup-table th button {
  box-sizing:border-box;
  font-size:13px;
  font-weight:500;
  padding:0 8px;
}

.lookup-titlebar {
  align-items: center;
  background: #a9c0d8;
  color: #0f2236;
  display: flex;
  justify-content: space-between;
  padding: 0 8px 0 10px;
}

.lookup-titlebar h2 {
  font-size: 14px;
  font-weight: 600;
  margin: 0;
}

.lookup-close {
  background: transparent;
  border: 0;
  cursor: pointer;
  height: 24px;
  position: relative;
  width: 24px;
}

.lookup-close::before,
.lookup-close::after {
  background: #17395c;
  content: "";
  height: 2px;
  left: 5px;
  position: absolute;
  top: 11px;
  width: 14px;
}

.lookup-close::before {
  transform: rotate(45deg);
}

.lookup-close::after {
  transform: rotate(-45deg);
}

.lookup-toolbar {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: 82px minmax(0, 1fr);
}

.lookup-toolbar label {
  align-items: center;
  background: #b8cbe0;
  color: #253447;
  display: flex;
  font-size: 12px;
  font-weight: 600;
  height: 28px;
  padding: 0 8px;
}

.lookup-search {
  border: 1px solid #aeb7c4;
  height: 28px;
  padding: 0 8px;
}

.lookup-table-wrap {
  background: #ffffff;
  border: 1px solid #9aa5b3;
  min-height: 0;
  overflow: auto;
}

.lookup-table {
  border-collapse: collapse;
  color: #000;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  min-width: 650px;
  table-layout: fixed;
  user-select: none;
  width: 100%;
}

.lookup-table th:nth-child(1),
.lookup-table td:nth-child(1) {
  text-align: center;
  width: 90px;
}

.lookup-table th:nth-child(2),
.lookup-table td:nth-child(2) {
  width: auto;
}

.lookup-table th:nth-child(3),
.lookup-table td:nth-child(3) {
  width: 220px;
}

.lookup-table th {
  background: #b8cbe0;
  border-bottom: 1px solid #8aa8c5;
  color: #17395c;
  font-size: 12px;
  font-weight: 400;
  height: 31px;
  position: sticky;
  top: 0;
  z-index: 1;
}

.lookup-table th button {
  align-items: center;
  background: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  gap: 5px;
  height: 100%;
  justify-content: flex-start;
  padding: 0 6px;
  text-align: left;
  width: 100%;
}

.lookup-table th button::after {
  color: var(--BlueNote);
  content: "";
  font-size: 10px;
  min-width: 10px;
}

.lookup-table th button.is-active[data-direction="asc"]::after {
  content: "^";
}

.lookup-table th button.is-active[data-direction="desc"]::after {
  content: "v";
}

.lookup-table th,
.lookup-table td {
  border-right: 1px solid #c8d1dc;
  padding: 5px 8px;
  text-align: left;
  white-space: nowrap;
}

.lookup-table td {
  border-bottom: 1px solid #dbe2ea;
  overflow: hidden;
  text-overflow: ellipsis;
}

.lookup-table tr {
  cursor: default;
}

.lookup-table tr.selected td {
  background: #b8d2ee;
  color: #102b49;
}

.lookup-actions {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}

.lookup-actions .button {
  min-width: 96px;
}

.accounting-movements-panel {
  border: 1px solid #8a8f98;
  display: grid;
  grid-template-rows: minmax(0, 1fr);
  min-height: 0;
  overflow: hidden;
}

.accounting-movements-panel h2 {
  align-items: center;
  background: #a9c0d8;
  color: #0f2236;
  display: flex;
  font-size: 14px;
  font-weight: 400;
  height: 23px;
  margin: 0;
  padding: 0 8px;
}

.accounting-movements-grid-frame {
  background: #ffffff;
  border: 0;
  border-radius: 0;
  min-height: 0;
  overflow: auto;
  scrollbar-gutter: stable;
}

.accounting-movements-grid {
  min-width: 1350px;
  table-layout: fixed;
  user-select: none;
}

.accounting-movements-grid th,
.accounting-movements-grid td {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  height: 27px;
  padding: 4px 6px;
}

.accounting-movements-grid td {
  box-sizing: border-box;
  font-weight: 520;
  line-height: 18px;
}

.accounting-movements-grid th {
  font-weight: 400;
}

.accounting-movements-grid tbody tr {
  height: 27px;
}

.accounting-movements-grid th:nth-child(1),
.accounting-movements-grid td:nth-child(1) {
  text-align: center;
  width: 60px;
}

.accounting-movements-grid th:nth-child(2),
.accounting-movements-grid td:nth-child(2) {
  text-align: center;
  width: 90px;
}

.accounting-movements-grid th:nth-child(3),
.accounting-movements-grid td:nth-child(3) {
  text-align: center;
  width: 110px;
}

.accounting-movements-grid th:nth-child(4),
.accounting-movements-grid td:nth-child(4) {
  text-align: center;
  width: 140px;
}

.accounting-movements-grid th:nth-child(5),
.accounting-movements-grid td:nth-child(5) {
  text-align: center;
  width: 70px;
}

.accounting-movements-grid td:nth-child(5),
.accounting-movements-grid td:nth-child(6) {
  background: rgb(255, 255, 220);
}

.accounting-movements-grid th:nth-child(6),
.accounting-movements-grid td:nth-child(6) {
  width: 230px;
}

.accounting-movements-grid th:nth-child(7),
.accounting-movements-grid td:nth-child(7) {
  text-align: right;
  width: 100px;
}

.accounting-movements-grid th:nth-child(8),
.accounting-movements-grid td:nth-child(8) {
  text-align: center;
  width: 70px;
}

.accounting-movements-grid th:nth-child(9),
.accounting-movements-grid td:nth-child(9) {
  text-align: center;
  width: 70px;
}

.accounting-movements-grid th:nth-child(10),
.accounting-movements-grid td:nth-child(10) {
  width: 240px;
}

.accounting-movements-grid th:nth-child(11),
.accounting-movements-grid td:nth-child(11) {
  width: 230px;
}

.accounting-movement-edit-module .page-container {
  max-width: none;
  padding: 0 18px;
}

.accounting-movement-edit-module .module-page {
  padding-top: 14px;
}

.accounting-movement-form-page .module-header {
  margin-bottom: 10px;
}

.accounting-movement-form-page .form-frame label,
.accounting-movement-form-page .form-frame input,
.accounting-movement-form-page .form-frame select,
.accounting-movement-form-page .form-frame textarea,
.accounting-movement-form-page .accounting-cause-account-column h2,
.accounting-movement-form-page .accounting-cause-account-subhead span,
.accounting-movement-form-page .accounting-cause-row-button,
.accounting-movement-form-page .accounting-movement-side-total,
.accounting-movement-code-separator {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
}

.accounting-movement-form-page.accounting-cause-form-page.data-form-skin .form-frame label,
.accounting-movement-form-page.accounting-cause-form-page.data-form-skin .form-frame input,
.accounting-movement-form-page.accounting-cause-form-page.data-form-skin .form-frame select,
.accounting-movement-form-page.accounting-cause-form-page.data-form-skin .form-frame textarea,
.accounting-movement-form-page.accounting-cause-form-page.data-form-skin .accounting-cause-account-column h2,
.accounting-movement-form-page.accounting-cause-form-page.data-form-skin .accounting-cause-account-subhead span,
.accounting-movement-form-page.accounting-cause-form-page.data-form-skin .accounting-cause-row-button {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
}

.accounting-movement-head-frame {
  border: 0;
  margin-bottom: 10px;
  padding: 0;
}

.accounting-movement-head-frame legend,
.accounting-movement-accounts-frame legend {
  display: none;
}

.accounting-movement-fields {
  display: grid;
  gap: 12px 44px;
  grid-template-columns: 330px 626px minmax(430px, 1fr);
  padding: 6px 12px 10px;
}

.accounting-movement-fields .field {
  align-items: center;
  display: grid;
  gap: 0;
  min-width: 0;
}

.accounting-movement-fields label {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  height: 24px;
}

.accounting-movement-fields input,
.accounting-movement-fields select {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 24px;
}

.accounting-movement-fields label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #b8cbe0;
  border-radius: 4px 0 0 4px;
  box-sizing: border-box;
  display: flex;
  padding: 0 8px;
}

.accounting-movement-fields input,
.accounting-movement-fields select {
  border: 1px solid #8a8f98;
  border-radius: 6px;
  padding: 0 8px;
}

.accounting-movement-fields .lookup-button {
  align-items: center !important;
  align-self: center !important;
  background: #ffffff;
  border: 1px solid #8a8f98;
  border-radius: 4px;
  box-sizing: border-box;
  display: inline-flex !important;
  height: 30px !important;
  justify-content: center !important;
  line-height: 1 !important;
  max-height: 30px !important;
  max-width: 30px !important;
  min-height: 30px !important;
  min-width: 30px !important;
  padding: 0 !important;
  width: 30px !important;
}

.accounting-movement-fields input[readonly] {
  background: rgb(230, 230, 240);
}

.accounting-movement-fields .accounting-movement-code-field {
  align-items: center;
  display: flex;
  justify-self: start;
  min-height: 24px;
  width: max-content;
}

.accounting-movement-code-field label {
  flex: 0 0 128px;
  height: 24px;
  min-width: 128px;
  margin-right: 6px;
  width: 128px !important;
}

.accounting-movement-code-field input {
  box-sizing: border-box;
  flex: 0 0 auto;
  min-width: 0;
  text-align: center;
  width: auto;
}

.accounting-movement-code-field .accounting-movement-code-number {
  flex: 0 0 95px;
  min-width: 95px;
  width: 95px !important;
}

.accounting-movement-code-field .accounting-movement-code-year {
  flex: 0 0 60px;
  min-width: 60px;
  width: 60px !important;
}

.accounting-movement-code-separator {
  align-items: center;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  height: 24px;
  justify-content: center;
  width: 20px;
}

.accounting-movement-fields .accounting-movement-cause-field {
  column-gap: 0;
  grid-template-columns: 120px 6px 80px 10px 370px 10px 30px;
  justify-self: start;
  width: max-content;
}

.accounting-movement-cause-field .accounting-movement-cause-code {
  grid-column: 3;
  min-width: 80px;
  text-align: center;
  width: 80px !important;
}

.accounting-movement-cause-field .accounting-movement-cause-description {
  grid-column: 5;
  min-width: 370px;
  width: 370px !important;
}

.accounting-movement-fields .accounting-movement-subject-field {
  column-gap: 0;
  grid-template-columns: 120px 6px 80px 10px 370px 10px 30px;
  justify-self: start;
  width: max-content;
}

.accounting-movement-subject-field .accounting-movement-subject-code {
  grid-column: 3;
  min-width: 80px;
  text-align: center;
  width: 80px !important;
}

.accounting-movement-subject-field .accounting-movement-subject-name {
  grid-column: 5;
  min-width: 370px;
  width: 370px !important;
}

.accounting-movement-cause-field .accounting-movement-lookup-button,
.accounting-movement-subject-field .accounting-movement-lookup-button {
  align-self: center;
  box-sizing: border-box;
  grid-column: 7;
  height: 30px;
  max-height: 30px;
  min-height: 30px;
  min-width: 30px;
  padding: 0;
  width: 30px;
}

.accounting-movement-cause-field .accounting-movement-lookup-button::before,
.accounting-movement-subject-field .accounting-movement-lookup-button::before,
.accounting-movement-accessory-field .accounting-movement-lookup-button::before {
  height: 40%;
  left: 23%;
  top: 20%;
  width: 40%;
}

.accounting-movement-cause-field .accounting-movement-lookup-button::after,
.accounting-movement-subject-field .accounting-movement-lookup-button::after,
.accounting-movement-accessory-field .accounting-movement-lookup-button::after {
  left: 58%;
  top: 64%;
  width: 27%;
}

.accounting-movement-cause-lookup {
  align-items: center;
  background: rgba(15, 23, 42, 0.24);
  display: none;
  inset: 0;
  justify-content: center;
  position: fixed;
  user-select: none;
  z-index: 2650;
}

.accounting-movement-cause-lookup.is-open {
  display: flex;
}

.accounting-movement-cause-lookup-dialog {
  background: #e7edf5;
  border: 1px solid #7d8794;
  box-shadow: 0 18px 42px rgba(20, 30, 45, 0.24);
  display: grid;
  gap: 8px;
  grid-template-rows: 30px minmax(0, 1fr) 38px;
  height: min(520px, calc(100vh - 100px));
  padding: 10px;
  width: min(720px, calc(100vw - 100px));
}

.accounting-movement-cause-lookup-titlebar {
  align-items: center;
  background: #a9c0d8;
  color: #0f2236;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  justify-content: space-between;
  padding: 0 10px;
}

.accounting-movement-cause-lookup-titlebar h2 {
  font-size: 14px;
  font-weight: 600;
  margin: 0;
}

.accounting-movement-cause-lookup-close {
  background: transparent;
  border: 0;
  cursor: pointer;
  height: 24px;
  position: relative;
  width: 24px;
}

.accounting-movement-cause-lookup-close::before,
.accounting-movement-cause-lookup-close::after {
  background: #17395c;
  content: "";
  height: 2px;
  left: 5px;
  position: absolute;
  top: 11px;
  width: 14px;
}

.accounting-movement-cause-lookup-close::before {
  transform: rotate(45deg);
}

.accounting-movement-cause-lookup-close::after {
  transform: rotate(-45deg);
}

.accounting-movement-cause-lookup-frame {
  background: #fff;
  border: 1px solid #9ca3ad;
  overflow: auto;
}

.accounting-movement-cause-lookup-table {
  border-collapse: collapse;
  color: #000;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 14px;
  min-width: 100%;
  user-select: none;
}

.accounting-movement-cause-lookup-table th,
.accounting-movement-cause-lookup-table td {
  border: 1px solid #9ca3ad;
  height: 31px;
  padding: 5px 8px;
}

.accounting-movement-cause-lookup-table th {
  background: #b8cbe0;
  font-size: 12px;
  font-weight: 400;
  position: sticky;
  top: 0;
}

.accounting-movement-cause-lookup-table th button {
  background: transparent;
  border: 0;
  cursor: pointer;
  font: inherit;
  height: 100%;
  padding: 0;
  text-align: inherit;
  width: 100%;
}

.accounting-movement-cause-lookup-table th button.is-active::after {
  content: " ▲";
  font-size: 10px;
}

.accounting-movement-cause-lookup-table th button.is-active[data-direction="desc"]::after {
  content: " ▼";
}

.accounting-movement-cause-lookup-table td {
  background: #fff;
  font-weight: 400;
}

.accounting-movement-cause-lookup-table tr.selected-row td {
  background: #c9d1d9;
}

.accounting-movement-cause-lookup-table tr:focus,
.accounting-movement-cause-lookup-table tr:focus-visible {
  outline: none;
}

.accounting-movement-cause-lookup-code {
  text-align: center;
  width: 80px;
}

.accounting-movement-cause-lookup-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}

.accounting-movement-cause-lookup-command {
  background: rgb(75, 100, 165);
  border: 1px solid rgb(75, 100, 165);
  border-radius: 4px;
  color: #fff;
  cursor: pointer;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  height: 30px;
  min-width: 110px;
}

.accounting-movement-cause-lookup-command:hover,
.accounting-movement-cause-lookup-command:focus-visible {
  background: var(--BlueNote-hover);
  border-color: var(--BlueNote-hover);
  outline: none;
}

.accounting-linked-document-lookup {
  align-items: center;
  background: rgba(15, 23, 42, 0.24);
  display: none;
  inset: 0;
  justify-content: center;
  position: fixed;
  user-select: none;
  z-index: 2660;
}

.accounting-linked-document-lookup.is-open {
  display: flex;
}

.accounting-linked-document-dialog {
  background: #e7edf5;
  border: 1px solid #7d8794;
  box-shadow: 0 18px 42px rgba(20, 30, 45, 0.24);
  display: grid;
  gap: 8px;
  grid-template-rows: 30px 30px minmax(0, 1fr) 38px;
  height: min(520px, calc(100vh - 100px));
  padding: 10px;
  width: min(780px, calc(100vw - 100px));
}

.accounting-linked-document-titlebar {
  align-items: center;
  background: #a9c0d8;
  color: #0f2236;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  justify-content: space-between;
  padding: 0 10px;
}

.accounting-linked-document-titlebar h2 {
  font-size: 14px;
  font-weight: 600;
  margin: 0;
}

.accounting-linked-document-close {
  background: transparent;
  border: 0;
  cursor: pointer;
  height: 24px;
  position: relative;
  width: 24px;
}

.accounting-linked-document-close::before,
.accounting-linked-document-close::after {
  background: #17395c;
  content: "";
  height: 2px;
  left: 5px;
  position: absolute;
  top: 11px;
  width: 14px;
}

.accounting-linked-document-close::before {
  transform: rotate(45deg);
}

.accounting-linked-document-close::after {
  transform: rotate(-45deg);
}

.accounting-linked-document-subject {
  align-items: center;
  display: grid;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  grid-template-columns: 92px 82px minmax(0, 1fr);
}

.accounting-linked-document-subject-label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #b8cbe0;
  border-radius: 4px 0 0 4px;
  display: flex;
  height: 24px;
  padding: 0 8px;
}

.accounting-linked-document-subject-code,
.accounting-linked-document-subject-name {
  align-items: center;
  background: rgb(230, 230, 240);
  border: 1px solid #8a8f98;
  display: flex;
  height: 24px;
  padding: 0 8px;
}

.accounting-linked-document-subject-code {
  justify-content: center;
}

.accounting-linked-document-subject-name {
  border-radius: 0 6px 6px 0;
}

.accounting-linked-document-frame {
  background: #fff;
  border: 1px solid #9ca3ad;
  overflow: auto;
  position: relative;
}

.accounting-linked-document-table {
  border-collapse: collapse;
  color: #000;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 14px;
  min-width: 100%;
  user-select: none;
}

.accounting-linked-document-table th,
.accounting-linked-document-table td {
  border: 1px solid #9ca3ad;
  height: 31px;
  padding: 5px 8px;
  white-space: nowrap;
}

.accounting-linked-document-table th {
  background: #b8cbe0;
  font-size: 12px;
  font-weight: 400;
  position: sticky;
  top: 0;
}

.accounting-linked-document-table td {
  background: #fff;
  font-weight: 400;
}

.accounting-linked-document-table tr.selected-row td {
  background: #c9d1d9;
}

.accounting-linked-document-table tr:focus,
.accounting-linked-document-table tr:focus-visible {
  outline: none;
}

.accounting-linked-document-code,
.accounting-linked-document-date {
  text-align: center;
}

.accounting-linked-document-amount {
  text-align: right;
}

.accounting-linked-document-empty {
  color: #485466;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 14px;
  padding: 18px;
}

.accounting-linked-document-actions {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
}

.accounting-linked-document-year-filter {
  align-items: center;
  display: grid;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  grid-template-columns: 70px 92px;
}

.accounting-linked-document-year-filter label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #b8cbe0;
  border-radius: 4px 0 0 4px;
  display: flex;
  height: 24px;
  padding: 0 8px;
}

.accounting-linked-document-year-filter select {
  border: 1px solid #8a8f98;
  border-radius: 0 6px 6px 0;
  font: inherit;
  height: 24px;
  padding: 0 6px;
}

.accounting-linked-document-action-buttons {
  display: flex;
  gap: 8px;
}

.accounting-linked-document-command {
  background: rgb(75, 100, 165);
  border: 1px solid rgb(75, 100, 165);
  border-radius: 4px;
  color: #fff;
  cursor: pointer;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  height: 30px;
  min-width: 110px;
}

.accounting-linked-document-command:hover,
.accounting-linked-document-command:focus-visible {
  background: var(--BlueNote-hover);
  border-color: var(--BlueNote-hover);
  outline: none;
}

.accounting-movement-fields .accounting-movement-document-field,
.accounting-movement-fields .accounting-movement-store-field,
.accounting-movement-fields .accounting-movement-amount-field {
  column-gap: 6px;
  grid-column: 3;
  grid-template-columns: 150px 260px;
  justify-self: end;
  width: max-content;
}

.accounting-movement-fields .accounting-movement-amount-field {
  grid-template-columns: 150px 224px 30px;
}

.accounting-movement-fields .accounting-movement-accessory-field {
  column-gap: 0;
  grid-column: 2;
  grid-template-columns: 120px 6px 80px 10px 370px 10px 30px;
  justify-self: start;
  width: max-content;
}

.accounting-movement-fields .accounting-movement-invoice-field,
.accounting-movement-fields .accounting-movement-due-date-field {
  grid-template-columns: 120px 6px 160px 10px 150px 10px 130px 10px 30px 6px 30px;
}

.accounting-movement-accessory-field .accounting-movement-accessory-code {
  grid-column: 3;
  text-align: center;
  width: 80px !important;
}

.accounting-movement-invoice-field .accounting-movement-linked-code,
.accounting-movement-due-date-field .accounting-movement-linked-code {
  grid-column: 3;
  width: 160px !important;
}

.accounting-movement-invoice-field .accounting-movement-linked-number,
.accounting-movement-due-date-field .accounting-movement-linked-number {
  grid-column: 5;
  text-align: center;
  width: 150px !important;
}

.accounting-movement-invoice-field .accounting-movement-linked-date,
.accounting-movement-due-date-field .accounting-movement-linked-date {
  grid-column: 7;
  text-align: center;
  width: 130px !important;
}

.accounting-movement-accessory-field .accounting-movement-accessory-description {
  grid-column: 5;
  width: 370px !important;
}

.accounting-movement-accessory-field .accounting-movement-lookup-button {
  align-self: center;
  box-sizing: border-box;
  grid-column: 7;
  height: 30px;
  max-height: 30px;
  min-height: 30px;
  min-width: 30px;
  padding: 0;
  width: 30px;
}

.accounting-movement-invoice-field .accounting-movement-lookup-button,
.accounting-movement-due-date-field .accounting-movement-lookup-button {
  grid-column: 9;
}

.accounting-movement-accessory-clear {
  align-items: center;
  background: #ffffff;
  border: 1px solid #8a8f98;
  border-radius: 4px;
  color: #2f3b4c;
  cursor: pointer;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  grid-column: 11;
  height: 30px;
  justify-content: center;
  line-height: 1;
  max-height: 30px;
  max-width: 30px;
  min-height: 30px;
  min-width: 30px;
  padding: 0;
  width: 30px;
}

.accounting-movement-accessory-clear:hover,
.accounting-movement-accessory-clear:focus-visible {
  background: #eef4fb;
  border-color: var(--BlueNote);
  outline: none;
}

.accounting-movement-accessory-clear:disabled {
  cursor: default;
  opacity: 0.55;
}

.accounting-movement-accessory-field.is-disabled {
  opacity: 0.58;
}

.accounting-movement-amount-button {
  align-items: center;
  align-self: stretch;
  background: #ffffff url("../images/pencil04.png") center / 18px 18px no-repeat;
  border: 1px solid #8793a4;
  border-radius: 4px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  min-height: 24px;
  min-width: 30px;
  padding: 0;
  position: relative;
}

.accounting-movement-amount-button:hover,
.accounting-movement-amount-button:focus-visible {
  background-color: #eef4fb;
  border-color: var(--BlueNote);
  outline: none;
}

.accounting-movement-fields .accounting-movement-date-field {
  column-gap: 6px;
  grid-template-columns: 128px 176px;
}

.accounting-movement-fields .accounting-movement-notes-field {
  column-gap: 6px;
  grid-column: 1 / 3;
  grid-template-columns: 128px 1fr;
}

.accounting-movement-amount-field input,
.accounting-movement-line-amount,
.accounting-movement-side-total {
  text-align: right;
}

.accounting-movement-accounts-frame {
  border: 0;
  margin-top: 0;
  padding: 0;
}

.accounting-movement-accounts {
  gap: 16px;
}

.accounting-movement-account-row,
.accounting-movement-account-subhead {
  grid-template-columns: 26px 26px 50px minmax(150px, 1fr) 50px minmax(220px, 1.55fr) 88px;
}

.accounting-movement-account-subhead .accounting-movement-subhead-amount {
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  color: #000;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  height: 22px;
  justify-content: center;
}

.accounting-movement-line-amount {
  background: #ffffff;
}

.accounting-movement-line-amount:focus,
.accounting-movement-line-amount:focus-visible {
  box-shadow: none;
  outline: none;
}

.accounting-movement-side-total {
  background: rgb(230, 230, 240);
  border: 1px solid #8a8f98;
  display: block;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 24px;
  margin-left: auto;
  margin-top: 4px;
  padding: 2px 4px;
  width: 88px;
}

.accounting-movement-form-page.accounting-cause-form-page.data-form-skin .accounting-cause-account-row input,
.accounting-movement-form-page.accounting-cause-form-page.data-form-skin .accounting-cause-account-row select,
.accounting-movement-form-page.accounting-cause-form-page.data-form-skin .accounting-movement-line-amount,
.accounting-movement-form-page.accounting-cause-form-page.data-form-skin .accounting-movement-side-total {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
}

.accounting-movement-form-page .validation-summary {
  display: none;
}

.accounting-movements-grid tbody tr.selected td,
.accounting-movements-grid tbody tr.selected-row td {
  background: #b8d2ee;
  color: #102b49;
}

.accounting-movements-grid tbody tr.selected td:first-child,
.accounting-movements-grid tbody tr.selected-row td:first-child {
  box-shadow: inset 4px 0 0 #2f6faa;
}

.stock-movements-module .page-container {
  height: calc(100vh - 20px);
  max-width: none;
  padding-left: 8px;
  padding-right: 8px;
}

.stock-movements-module .page-container > main {
  height: 100%;
  min-height: 0;
}

body.stock-movements-module {
  overflow: hidden;
}

body.stock-movements-module .app-footer {
  display: none;
}

.stock-movements-page {
  display: grid;
  gap: 2px;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  height: 100%;
  max-width: none;
  padding-bottom: 8px;
  padding-top: 8px;
}

.stock-movements-header {
  align-items: end;
  margin-bottom: 0;
  padding: 4px 10px 2px;
}

.stock-movements-header .module-title-logo {
  height: 46px;
  width: 46px;
}

.stock-movements-header h1 {
  font-size: 20px;
  line-height: 1.1;
}

.stock-movements-header p:last-child {
  font-size: 12px;
  margin-top: 2px;
}

.stock-movements-records {
  margin-left: 0;
  min-width: 150px;
}

.stock-movements-filters fieldset {
  padding: 4px 6px 4px;
}

.stock-movements-filters {
  margin-top: -8px;
}

.stock-toolbar-actions {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  gap: 6px;
  justify-content: flex-end;
  margin-left: auto;
  min-height: 30px;
  padding: 0;
}

.stock-toolbar-actions .stock-movements-records {
  margin-right: 10px;
}

.stock-toolbar-actions .button {
  box-sizing: border-box;
  font-size: 14px;
  height: 32px;
  line-height: 32px;
  min-height: 32px;
  min-width: 148px;
  padding: 0 14px;
  white-space: nowrap;
}

.supplier-form-page.data-form-skin .top-actions.stock-toolbar-actions .button,
.supplier-form-page.data-form-skin .top-actions.stock-toolbar-actions button {
  max-width: none;
  min-width: 148px;
  width: 148px;
}

.stock-toolbar-actions .button[data-stock-action="movement"] {
  min-width: 174px;
}

.supplier-form-page.data-form-skin .top-actions.stock-toolbar-actions .button[data-stock-action="movement"],
.supplier-form-page.data-form-skin .top-actions.stock-toolbar-actions button[data-stock-action="movement"] {
  min-width: 174px;
  width: 174px;
}

.stock-toolbar-actions .button[data-stock-action="article"] {
  min-width: 156px;
}

.supplier-form-page.data-form-skin .top-actions.stock-toolbar-actions .button[data-stock-action="article"],
.supplier-form-page.data-form-skin .top-actions.stock-toolbar-actions button[data-stock-action="article"] {
  min-width: 156px;
  width: 156px;
}

.stock-filter-grid {
  display: grid;
  gap: 34px;
  grid-template-columns: 330px 358px minmax(540px, 1fr);
}

.stock-filter-left,
.stock-filter-center,
.stock-filter-right {
  display: grid;
  gap: 6px;
}

.stock-movements-filters .field {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: 92px minmax(0, 1fr);
  margin: 0;
  min-height: 30px;
}

.stock-movements-filters .field > label,
.stock-total-title,
.stock-total-label {
  background: #b8cbe0;
  color: #000;
}

.stock-movements-filters .field > label {
  align-items: center;
  align-self: stretch;
  border: 1px solid #8a8f98;
  box-sizing: border-box;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  margin: 0;
  padding: 0 7px;
}

.stock-movements-filters input,
.stock-movements-filters select,
.stock-total-box input {
  border: 1px solid #8a8f98;
  box-sizing: border-box;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 30px;
}

.supplier-form-page.data-form-skin .stock-movements-filters .field > label,
.supplier-form-page.data-form-skin .stock-movements-filters input,
.supplier-form-page.data-form-skin .stock-movements-filters select {
  font-size: 13px;
  font-weight: 520;
}

.stock-movements-filters input[readonly],
.stock-total-box input {
  background: #eeeeff;
}

.stock-article-filter {
  grid-template-columns: 92px 150px minmax(0, 1fr) 30px !important;
}

.stock-subject-filter {
  grid-template-columns: 92px 82px minmax(0, 1fr) 30px !important;
}

.stock-subject-filter input[type="hidden"] {
  display: none;
}

.stock-subject-filter [data-stock-subject-code] {
  padding-left: 2px;
  padding-right: 2px;
  text-align: center;
}

.stock-movements-article-lookup-button {
  height: 30px;
  min-height: 30px;
  min-width: 30px;
  width: 30px;
}

.stock-movements-article-lookup-button::before {
  height: 40%;
  left: 23%;
  top: 20%;
  width: 40%;
}

.stock-movements-article-lookup-button::after {
  left: 58%;
  top: 64%;
  width: 27%;
}

.stock-movements-subject-lookup-button {
  height: 30px;
  min-height: 30px;
  min-width: 30px;
  width: 30px;
}

.stock-type-row {
  display: grid;
  gap: 6px;
  grid-template-columns: 166px 166px;
  justify-content: start;
}

.stock-toggle {
  display: block !important;
  margin: 0;
  min-height: 30px;
}

.stock-toggle > input[type="hidden"] {
  display: none !important;
}

.stock-movement-checkbox {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: 92px 68px;
  height: 30px;
  width: 166px;
}

.supplier-form-page.data-form-skin .stock-type-row .stock-movement-checkbox {
  gap: 6px;
  grid-template-columns: 92px 68px;
  width: 166px;
}

.stock-movement-checkbox .check-text {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  box-sizing: border-box;
  color: #0e1824;
  display: flex;
  font-size: 13px;
  font-weight: 520;
  height: 30px;
  line-height: 1.15;
  min-height: 30px;
  padding: 5px 8px;
  white-space: nowrap;
  width: 92px;
}

.supplier-form-page.data-form-skin .stock-type-row .stock-movement-checkbox .check-text {
  width: 92px;
}

.stock-movement-checkbox .check-button-wrap {
  align-items: center;
  background: #ffffff;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  box-sizing: border-box;
  cursor: pointer;
  display: inline-flex;
  height: 30px;
  justify-content: center;
  position: relative;
  width: 68px;
}

.stock-movement-checkbox input {
  border: 0;
  height: 1px;
  margin: 0;
  min-height: 0;
  opacity: 0;
  padding: 0;
  position: absolute;
  width: 1px;
}

.stock-movement-checkbox .check-button-wrap::before {
  background: rgb(210, 210, 210);
  border: 1px solid #c2ccda;
  border-radius: 999px;
  box-sizing: border-box;
  content: "";
  display: block;
  height: 22px;
  transition: background 0.15s ease, border-color 0.15s ease;
  width: 42px;
}

.stock-movement-checkbox .check-button-wrap::after {
  background: #ffffff;
  border-radius: 50%;
  box-shadow: 0 1px 3px rgba(23, 32, 51, 0.28);
  content: "";
  height: 16px;
  left: 16px;
  position: absolute;
  top: 7px;
  transition: transform 0.15s ease;
  width: 16px;
}

.stock-movement-checkbox input:checked ~ .check-button-wrap::before {
  background: var(--BlueNote);
  border-color: var(--BlueNote);
}

.stock-movement-checkbox input:checked ~ .check-button-wrap::after {
  transform: translateX(20px);
}

.stock-movement-checkbox input:focus-visible ~ .check-button-wrap {
  box-shadow: 0 0 0 3px rgba(75, 100, 165, 0.18);
}

.stock-movements-panel {
  border: 1px solid #8a8f98;
  display: grid;
  min-height: 0;
}

.stock-movements-grid-frame {
  background: #ffffff;
  border: 0;
  border-radius: 0;
  height: 100%;
  min-height: 0;
  overflow: auto;
}

.stock-movements-grid {
  min-width: 1540px;
  table-layout: fixed;
}

.stock-movements-grid th,
.stock-movements-grid td {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  line-height: 18px;
  padding: 3px 6px;
}

.stock-movements-grid td {
  box-sizing: border-box;
  font-weight: 520;
}

.stock-movements-grid th {
  font-weight: 400;
  height: 26px;
  line-height: 16px;
  padding-bottom: 0;
  padding-top: 0;
}

.stock-movements-grid tbody tr {
  height: 27px;
}

.stock-movements-grid th:nth-child(1),
.stock-movements-grid td:nth-child(1) {
  text-align: center;
  width: 60px;
}

.stock-movements-grid th:nth-child(2),
.stock-movements-grid td:nth-child(2) {
  text-align: center;
  width: 90px;
}

.stock-movements-grid th:nth-child(3),
.stock-movements-grid td:nth-child(3) {
  text-align: center;
  width: 70px;
}

.stock-movements-grid th:nth-child(4),
.stock-movements-grid td:nth-child(4) {
  width: 150px;
}

.stock-movements-grid th:nth-child(5),
.stock-movements-grid td:nth-child(5) {
  text-align: center;
  width: 100px;
}

.stock-movements-grid th:nth-child(6),
.stock-movements-grid td:nth-child(6) {
  text-align: center;
  width: 105px;
}

.stock-movements-grid th:nth-child(7),
.stock-movements-grid td:nth-child(7) {
  width: 125px;
}

.stock-movements-grid th:nth-child(8),
.stock-movements-grid td:nth-child(8) {
  width: 260px;
}

.stock-movements-grid th:nth-child(9),
.stock-movements-grid td:nth-child(9),
.stock-movements-grid th:nth-child(10),
.stock-movements-grid td:nth-child(10),
.stock-movements-grid th:nth-child(15),
.stock-movements-grid td:nth-child(15) {
  text-align: center;
  width: 70px;
}

.stock-movements-grid th:nth-child(11),
.stock-movements-grid td:nth-child(11),
.stock-movements-grid th:nth-child(12),
.stock-movements-grid td:nth-child(12),
.stock-movements-grid th:nth-child(13),
.stock-movements-grid td:nth-child(13) {
  text-align: right;
  width: 90px;
}

.stock-movements-grid th:nth-child(14),
.stock-movements-grid td:nth-child(14) {
  text-align: center;
  width: 80px;
}

.stock-movements-grid tbody tr.selected td,
.stock-movements-grid tbody tr.selected-row td {
  background: #b8d2ee;
  color: #102b49;
}

.stock-movements-grid tbody tr.selected td:first-child,
.stock-movements-grid tbody tr.selected-row td:first-child {
  box-shadow: inset 4px 0 0 #2f6faa;
}

.stock-movements-footer {
  align-items: end;
  display: flex;
  gap: 8px;
}

.stock-totals {
  display: flex;
  gap: 8px;
  min-width: 0;
}

.stock-total-box {
  border: 1px solid #8a8f98;
  display: grid;
  gap: 3px;
  grid-template-columns: 90px 110px 110px;
  grid-template-rows: 24px 24px;
  padding: 6px;
}

.stock-total-title,
.stock-total-label {
  align-items: center;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  padding: 0 7px;
}

.stock-total-title {
  grid-row: 1 / 3;
}

.stock-total-label {
  justify-content: flex-start;
}

.stock-total-box input {
  height: 24px;
  font-weight: 600;
  line-height: 22px;
  max-height: 24px;
  min-height: 24px;
  padding: 0 6px;
  text-align: right;
}

.supplier-form-page.data-form-skin .stock-total-box input {
  height: 24px;
  line-height: 22px;
  max-height: 24px;
  min-height: 24px;
  padding-bottom: 0;
  padding-top: 0;
}

body.article-account-module {
  overflow: hidden;
}

.article-account-module .page-container {
  height: calc(100vh - 20px);
  max-width: none;
  padding-left: 8px;
  padding-right: 8px;
}

.article-account-module .page-container > main {
  height: 100%;
  min-height: 0;
}

body.article-account-module .app-footer {
  display: none;
}

.article-account-page {
  grid-template-rows: auto auto minmax(0, 1fr) auto;
}

.article-account-actions .button {
  min-width: 130px;
}

.article-account-filters fieldset {
  padding: 4px 6px;
}

.article-account-filter-row {
  align-items: center;
  display: grid;
  gap: 24px;
  grid-template-columns: 182px 232px minmax(0, 1fr);
}

.article-account-year-field,
.article-account-month-field {
  grid-template-columns: 64px 1fr;
}

.article-account-year-field select {
  text-align: center;
}

.article-account-month-field select {
  width: 140px;
}

.article-account-article-field {
  grid-template-columns: 80px 165px minmax(235px, 1fr) 175px !important;
  min-width: 0;
}

.article-account-article-field [data-article-account-code] {
  width: 165px;
}

.article-account-article-field [data-article-account-description] {
  min-width: 0;
  width: 100%;
}

.article-account-change-button {
  height: 32px;
  min-height: 32px;
  width: 175px;
}

.article-account-panel {
  min-height: 0;
}

.article-account-grid-frame {
  min-height: 0;
}

.article-account-grid {
  min-width: 1504px;
  table-layout: fixed;
}

.article-account-grid th {
  height: 28px;
}

.article-account-grid th:nth-child(1),
.article-account-grid td:nth-child(1) {
  text-align: center;
  width: 78px;
}

.article-account-grid th:nth-child(2),
.article-account-grid td:nth-child(2) {
  text-align: center;
  width: 100px;
}

.article-account-grid th:nth-child(3),
.article-account-grid td:nth-child(3) {
  text-align: center;
  width: 100px;
}

.article-account-grid th:nth-child(4),
.article-account-grid td:nth-child(4) {
  text-align: center;
  width: 140px;
}

.article-account-grid th:nth-child(5),
.article-account-grid td:nth-child(5),
.article-account-grid th:nth-child(12),
.article-account-grid td:nth-child(12) {
  text-align: center;
  width: 70px;
}

.article-account-grid th:nth-child(6),
.article-account-grid td:nth-child(6),
.article-account-grid th:nth-child(7),
.article-account-grid td:nth-child(7),
.article-account-grid th:nth-child(8),
.article-account-grid td:nth-child(8),
.article-account-grid th:nth-child(9),
.article-account-grid td:nth-child(9),
.article-account-grid th:nth-child(10),
.article-account-grid td:nth-child(10),
.article-account-grid th:nth-child(11),
.article-account-grid td:nth-child(11) {
  text-align: right;
  width: 102px;
}

.article-account-grid th:nth-child(13),
.article-account-grid td:nth-child(13) {
  text-align: center;
  width: 80px;
}

.article-account-grid th:nth-child(14),
.article-account-grid td:nth-child(14) {
  width: 260px;
}

.article-account-footer {
  padding-top: 0;
}

.article-account-totals {
  border: 1px solid #8a8f98;
  display: grid;
  gap: 5px 8px;
  grid-template-columns: 226px 340px 340px 226px;
  max-width: 1168px;
  padding: 5px 8px 7px;
}

.article-account-totals-title {
  background: #b8cbe0;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  grid-column: 1 / -1;
  height: 20px;
  line-height: 20px;
  text-align: center;
}

.article-account-total-box {
  border: 0;
  gap: 3px;
  grid-template-columns: 114px 106px;
  padding: 0;
}

.article-account-total-box-wide {
  grid-template-columns: 108px 108px 108px;
}

.article-account-total-box .stock-total-title {
  grid-column: 1 / -1;
  grid-row: auto;
  justify-content: center;
  text-transform: uppercase;
}

.article-account-total-box .stock-total-label {
  justify-content: center;
}

.article-account-total-box input {
  width: 100%;
}

.article-account-choice-dialog {
  background: #ffffff;
  border: 1px solid #6f7784;
  box-shadow: 0 14px 32px rgba(20, 34, 54, 0.32);
  display: grid;
  gap: 10px;
  min-width: 890px;
  padding: 12px 16px 16px;
}

.article-account-choice-frame {
  background: #eeeeff;
  border: 1px solid #8a8f98;
  display: grid;
  align-items: start;
  gap: 8px 18px;
  grid-template-columns: minmax(0, 635px) 236px;
  padding: 24px 14px 26px;
}

.article-account-choice .field {
  align-items: center;
  display: grid;
  gap: 5px;
  margin: 0;
}

.article-account-choice .field > label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  height: 30px;
  line-height: 28px;
  padding: 0 7px;
}

.article-account-choice input {
  border: 1px solid #8a8f98;
  border-radius: 4px;
  box-sizing: border-box;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 30px;
  line-height: 28px;
  min-height: 30px;
  padding: 1px 7px;
}

.article-account-choice input[readonly] {
  background: #eeeeff;
}

.article-account-choice-code {
  display: flex !important;
  grid-column: 1 / -1;
  align-items: center;
  gap: 5px;
  min-width: 0;
  width: 100%;
}

.article-account-choice-code > label {
  box-sizing: border-box;
  flex: 0 0 100px;
  height: 30px;
  line-height: 28px;
}

.article-account-choice-code input:first-of-type {
  background: #fff8a8;
  flex: 0 0 170px;
  max-width: 170px;
  min-width: 170px;
  width: 170px;
}

.article-account-choice-code input:nth-of-type(2) {
  background: #eeeeff;
  flex: 1 1 auto;
  max-width: 100%;
  min-width: 0;
  width: 100%;
}

.article-account-choice-code .lookup-button {
  align-self: center;
  box-sizing: border-box;
  flex: 0 0 28px;
  margin: 0;
  max-width: 28px;
  min-width: 28px;
  padding: 0;
  width: 28px;
}

.article-account-choice-code input:nth-of-type(2),
.article-account-choice-code .lookup-button {
  transform: translateZ(0);
}

.article-account-choice-code-row {
  align-items: center !important;
  display: flex !important;
  gap: 5px !important;
  grid-column: 1 / -1 !important;
  min-width: 0 !important;
  width: 100% !important;
}

.article-account-choice-code-row > label {
  align-items: center !important;
  background: #b8cbe0 !important;
  border: 1px solid #8a8f98 !important;
  border-radius: 5px !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex: 0 0 120px !important;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  height: 30px !important;
  line-height: 28px !important;
  margin: 0 !important;
  padding: 0 7px !important;
  width: 120px !important;
}

.article-account-choice-code-row input:first-of-type {
  background: #ffffff !important;
  border: 1px solid #8a8f98 !important;
  border-radius: 4px !important;
  box-sizing: border-box !important;
  flex: 0 0 170px !important;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 520 !important;
  height: 30px !important;
  line-height: 28px !important;
  max-width: 170px !important;
  min-height: 30px !important;
  min-width: 170px !important;
  padding: 1px 7px !important;
  width: 170px !important;
}

.article-account-choice-code-row input:nth-of-type(2) {
  background: #eeeeff !important;
  border: 1px solid #8a8f98 !important;
  border-radius: 4px !important;
  box-sizing: border-box !important;
  flex: 1 1 auto !important;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 520 !important;
  height: 30px !important;
  line-height: 28px !important;
  max-width: none !important;
  min-height: 30px !important;
  min-width: 0 !important;
  padding: 1px 7px !important;
  width: auto !important;
}

.article-account-choice-code-row .lookup-button {
  align-self: center !important;
  box-sizing: border-box !important;
  flex: 0 0 30px !important;
  height: 30px !important;
  margin: 0 !important;
  max-height: 30px !important;
  max-width: 30px !important;
  min-height: 30px !important;
  min-width: 30px !important;
  padding: 0 !important;
  width: 30px !important;
}

.article-account-choice-code-row input:first-of-type:focus,
.article-account-choice-code-row input:first-of-type:focus-visible {
  background: #ffffff !important;
  border: 1px solid #8a8f98 !important;
  box-shadow: none !important;
  height: 30px !important;
  min-height: 30px !important;
  outline: none !important;
}

.article-account-choice input:focus,
.article-account-choice input:focus-visible {
  box-shadow: none;
  outline: none;
}

.article-account-choice-frame input,
.article-account-choice-code-row input {
  font-size: 13px !important;
  font-weight: 520 !important;
}

.article-account-choice-text {
  grid-column: 1 / 2;
  grid-template-columns: 100px 240px;
}

.article-account-choice-side {
  grid-column: 2 / 3;
  grid-template-columns: 124px 124px;
}

.article-account-choice-unit {
  grid-row: 3;
}

.article-account-choice-cost {
  grid-row: 4;
}

.article-account-choice-side input {
  text-align: right;
}

.article-account-choice .stock-movements-article-lookup-button {
  height: 30px;
  min-height: 30px;
  min-width: 28px;
  width: 28px;
}

.article-account-choice-actions {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: flex-end;
}

.article-account-choice-actions .button {
  min-width: 88px;
}


.purchase-invoices-module .page-container {
  height: auto;
  max-width: none;
  overflow: visible;
  padding-left: 18px;
  padding-right: 18px;
  width: 100%;
}

.purchase-invoices-module .page-container > main {
  height: 100%;
  min-height: 0;
}

body.purchase-invoices-module {
  overflow: auto;
}

body.purchase-invoices-module .app-footer {
  display: none;
}

.purchase-invoices-page {
  display: grid;
  gap: 0;
  grid-template-rows: auto auto auto;
  height: auto;
  max-width: none;
  min-height: 0;
  width: 100%;
}

.purchase-invoices-filters {
  margin: 2px 0 10px;
}

.purchase-invoices-page.module-page {
  padding-top: 8px;
  padding-bottom: 8px;
}

.purchase-invoices-page .module-header {
  margin-bottom: 0;
  padding: 7px 10px;
}

.purchase-invoices-page .module-title-identity {
  gap: 10px;
}

.purchase-invoices-page .module-title-logo {
  flex-basis: 38px;
  height: 36px;
}

.purchase-invoices-page .module-title-identity img {
  height: 36px;
  width: 38px;
}

.purchase-invoices-page .module-header h1 {
  font-size: 20px;
  line-height: 1.1;
}

.purchase-invoices-page .module-header p:last-child {
  font-size: 12px;
  margin-top: 2px;
}

.purchase-invoices-actions {
  flex-wrap: nowrap;
}

.purchase-invoices-page.supplier-form-page.data-form-skin .top-actions.purchase-invoices-actions .purchase-invoices-print-button {
  min-width: 120px;
  width: 120px;
}

.purchase-invoices-actions .purchase-invoices-records {
  margin-left: 0;
  margin-right: 2px;
}

.purchase-invoices-filters .form-frame {
  background: #f7f9fc;
  margin-top: 0;
  padding: 8px 14px 10px;
}

.purchase-invoices-filter-row {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 110px 125px 165px minmax(300px, 330px) 190px 190px;
}

.purchase-invoices-filter-row .field {
  align-items: center;
  display: grid;
  column-gap: 4px;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 0;
}

.purchase-invoices-filter-row input,
.purchase-invoices-filter-row select {
  height: 24px;
}

.purchase-invoices-filter-row .purchase-invoices-supplier-filter {
  grid-template-columns: 64px 55px 160px 28px;
  justify-content: end;
    padding: 10px 0;
  column-gap: 4px;
}

.purchase-invoices-year-filter {
  grid-template-columns: 40px 60px;
}

.purchase-invoices-month-filter {
  grid-template-columns: 42px 72px;
}

.purchase-invoices-type-filter {
  grid-template-columns: 40px 115px;
}

.purchase-invoices-type-filter select {
  min-width: 115px;
  width: 115px;
}

.purchase-invoices-store-filter {
  grid-template-columns: 78px 100px;
}

.purchase-invoices-contra-filter {
  grid-template-columns: 74px 105px;
}

.purchase-invoices-grid-frame {
  background: #ffffff;
  border: 0;
  border-radius: 0;
  height: auto;
  max-height: calc(100vh - 205px);
  margin-top: 0;
  min-height: 0;
  overflow: auto;
}

.purchase-invoices-grid {
  min-width: 0;
  table-layout: fixed;
  user-select: none;
  width: 100%;
}

.purchase-invoices-grid th,
.purchase-invoices-grid td {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  height: 27px;
  padding: 4px 6px;
}

.purchase-invoices-grid th {
  font-weight: 400;
  text-align: center;
}

.purchase-invoices-grid td {
  background: #ffffff;
  box-sizing: border-box;
  font-weight: 520;
  line-height: 18px;
  text-align: right;
}

.purchase-invoices-grid td:nth-child(1),
.purchase-invoices-grid td:nth-child(3),
.purchase-invoices-grid td:nth-child(5) {
  text-align: center;
}

.purchase-invoices-grid td:nth-child(2),
.purchase-invoices-grid td:nth-child(4),
.purchase-invoices-grid td:nth-child(6),
.purchase-invoices-grid td:nth-child(7),
.purchase-invoices-grid td:nth-child(11) {
  text-align: left;
}

.purchase-invoices-grid td:nth-child(8),
.purchase-invoices-grid td:nth-child(9),
.purchase-invoices-grid td:nth-child(10) {
  background: rgb(255, 255, 220);
}

.purchase-invoices-grid tbody tr.selected td,
.purchase-invoices-grid tbody tr.selected-row td {
  background: #b8d2ee;
  color: #102b49;
}

.purchase-invoices-grid tbody tr.selected td:first-child,
.purchase-invoices-grid tbody tr.selected-row td:first-child {
  box-shadow: inset 4px 0 0 #2f6faa;
}

.purchase-invoices-grid tbody tr:focus-visible td {
  outline: none;
}

.purchase-invoices-grid tbody tr {
  cursor: pointer;
  height: 27px;
  outline: none;
}

.purchase-invoices-grid th:nth-child(1),
.purchase-invoices-grid td:nth-child(1) {
  width: 75px;
}

.purchase-invoices-grid th:nth-child(2),
.purchase-invoices-grid td:nth-child(2) {
  width: 70px;
}

.purchase-invoices-grid th:nth-child(3),
.purchase-invoices-grid td:nth-child(3) {
  width: 90px;
}

.purchase-invoices-grid th:nth-child(4),
.purchase-invoices-grid td:nth-child(4) {
  width: 160px;
}

.purchase-invoices-grid th:nth-child(5),
.purchase-invoices-grid td:nth-child(5) {
  width: 80px;
}

.purchase-invoices-grid th:nth-child(6),
.purchase-invoices-grid td:nth-child(6) {
  width: 220px;
}

.purchase-invoices-grid th:nth-child(7),
.purchase-invoices-grid td:nth-child(7) {
  width: 175px;
}

.purchase-invoices-grid th:nth-child(8),
.purchase-invoices-grid td:nth-child(8) {
  width: 90px;
}

.purchase-invoices-grid th:nth-child(9),
.purchase-invoices-grid td:nth-child(9) {
  width: 90px;
}

.purchase-invoices-grid th:nth-child(10),
.purchase-invoices-grid td:nth-child(10) {
  width: 90px;
}

.purchase-invoices-grid th:nth-child(11),
.purchase-invoices-grid td:nth-child(11) {
  width: 140px;
}

.stock-loads-module .page-container {
  height: 100vh;
  max-width: none;
  overflow: hidden;
  padding-left: 18px;
  padding-right: 18px;
  width: 100%;
}

.stock-loads-module .page-container > main {
  height: 100%;
  min-height: 0;
}

body.stock-loads-module {
  overflow: hidden;
}

body.stock-loads-module .app-footer {
  display: none;
}

.stock-loads-page {
  display: grid;
  gap: 0;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto auto minmax(0, 1fr);
  height: 100%;
  max-width: none;
  min-height: 0;
  min-width: 0;
  width: 100%;
}

.stock-loads-filters {
  margin: 0 0 10px;
  min-width: 0;
  width: 100%;
}

.stock-loads-page.module-page {
  padding-top: 10px;
  padding-bottom: 10px;
}

.stock-loads-page .module-header {
  margin-bottom: 0;
  min-width: 0;
  padding: 5px 10px;
  width: 100%;
}

.stock-loads-page .module-title-identity {
  gap: 10px;
}

.stock-loads-page .module-title-logo {
  flex-basis: 38px;
  height: 36px;
}

.stock-loads-page .module-title-identity img {
  height: 36px;
  width: 38px;
}

.stock-loads-page .module-header h1 {
  font-size: 20px;
  line-height: 1.1;
}

.stock-loads-page .module-header p:last-child {
  font-size: 12px;
  margin-top: 2px;
}

.stock-loads-actions {
  flex-wrap: nowrap;
}

.stock-loads-actions .stock-loads-records {
  margin-left: 0;
  margin-right: 2px;
}

.stock-loads-actions .button,
.stock-loads-actions button {
  max-width: none;
  min-width: 120px;
  width: 120px;
}

.stock-loads-page.supplier-form-page.data-form-skin .top-actions.stock-loads-actions .button,
.stock-loads-page.supplier-form-page.data-form-skin .top-actions.stock-loads-actions button {
  max-width: none;
  min-width: 120px;
  width: 120px;
}

.stock-loads-actions .stock-loads-electronic-button {
  max-width: none;
  min-width: 140px;
  width: 140px;
}

.stock-loads-page.supplier-form-page.data-form-skin .top-actions.stock-loads-actions .stock-loads-electronic-button {
  max-width: none;
  min-width: 140px;
  width: 140px;
}

.stock-loads-filters .form-frame {
  background: #f7f9fc;
  margin-top: 0;
  padding: 8px 14px 10px;
}

.stock-loads-filter-row {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 130px 160px 290px 200px minmax(360px, 1fr);
  min-width: 0;
  width: 100%;
}

.stock-loads-filter-row .field {
  align-items: center;
  column-gap: 4px;
  display: grid;
  min-width: 0;
}

.stock-loads-filter-row label {
  justify-content: flex-start;
}

.stock-loads-filter-row input,
.stock-loads-filter-row select {
  height: 24px;
  min-width: 0;
  width: 100%;
}

#stockLoadFilterArticleDescription {
  background: #e1e5ea;
  color: #303840;
  cursor: default;
  pointer-events: none;
}

.stock-loads-filter-row .stock-loads-year-filter {
  grid-template-columns: 46px minmax(0, 1fr);
}

.stock-loads-filter-row .stock-loads-month-filter {
  grid-template-columns: 46px minmax(0, 1fr);
}

.stock-loads-filter-row .stock-loads-year-filter label,
.stock-loads-filter-row .stock-loads-month-filter label {
  min-width: 0;
  width: 46px;
}

.stock-loads-filter-row .stock-loads-supplier-filter label,
.stock-loads-filter-row .stock-loads-store-filter label,
.stock-loads-filter-row .stock-loads-article-filter label {
  min-width: 0;
  width: 70px;
}

.stock-loads-filter-row .stock-loads-supplier-filter {
  grid-template-columns: 70px minmax(0, 1fr);
}

.stock-loads-filter-row .stock-loads-store-filter {
  grid-template-columns: 70px minmax(0, 1fr);
}

.stock-loads-filter-row .stock-loads-article-filter {
  grid-template-columns: 70px 125px minmax(140px, 1fr) 30px;
}

.stock-loads-article-lookup-button {
  height: 30px;
  min-height: 30px;
  min-width: 30px;
  width: 30px;
}

.stock-loads-article-lookup-button::before {
  height: 40%;
  left: 23%;
  top: 20%;
  width: 40%;
}

.stock-loads-article-lookup-button::after {
  left: 58%;
  top: 64%;
  width: 27%;
}

.stock-loads-layout {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) 160px;
  height: 100%;
  max-width: 100%;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  width: 100%;
}

.stock-loads-layout-no-totals {
  grid-template-columns: minmax(0, 1fr);
}

.stock-loads-main {
  display: grid;
  gap: 10px;
  grid-template-rows: minmax(0, 1fr) 176px;
  height: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  width: 100%;
}

.stock-loads-panel,
.stock-loads-detail-panel {
  min-width: 0;
}

.stock-loads-panel h2,
.stock-loads-detail-panel h2 {
  background: #b8cbe0;
  border: 1px solid #9aa8ba;
  border-bottom: 0;
  border-radius: 0;
  color: #111827;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 22px;
  margin: 0;
  padding: 0 8px;
  user-select: none;
}

.stock-loads-grid-frame,
.stock-loads-detail-frame {
  background: #ffffff;
  border: 1px solid #9aa8ba;
  border-radius: 0;
  max-width: 100%;
  min-height: 0;
  min-width: 0;
  overflow: auto;
  width: 100%;
}

.stock-loads-grid-frame {
  height: 100%;
}

.stock-loads-detail-frame {
  height: 100%;
}

.stock-loads-grid,
.stock-loads-detail-grid {
  max-width: 100%;
  min-width: 0;
  table-layout: fixed;
  user-select: none;
  width: 100%;
}

.stock-loads-grid {
  min-width: 0;
  width: 100%;
}

.stock-loads-detail-grid {
  min-width: 0;
  width: 100%;
}

.stock-loads-grid th,
.stock-loads-grid td,
.stock-loads-detail-grid th,
.stock-loads-detail-grid td {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  height: 25px;
  padding: 4px 6px;
}

.stock-loads-grid th,
.stock-loads-detail-grid th {
  font-weight: 400;
  text-align: center;
}

.stock-loads-grid td,
.stock-loads-detail-grid td {
  background: #ffffff;
  box-sizing: border-box;
  color: #000000;
  font-weight: 520;
  line-height: 18px;
  text-align: right;
}

.stock-loads-grid tbody tr {
  cursor: pointer;
  height: 25px;
  outline: none;
}

.stock-loads-grid tbody tr.selected td,
.stock-loads-grid tbody tr.selected-row td {
  background: #b8d2ee;
  color: #102b49;
}

.stock-loads-grid tbody tr.selected td:first-child,
.stock-loads-grid tbody tr.selected-row td:first-child {
  box-shadow: inset 4px 0 0 #2f6faa;
}

.stock-loads-grid tbody tr:focus-visible td {
  outline: none;
}

.stock-loads-grid td:nth-child(1),
.stock-loads-grid td:nth-child(2),
.stock-loads-grid td:nth-child(3),
.stock-loads-grid td:nth-child(4),
.stock-loads-grid td:nth-child(5),
.stock-loads-detail-grid td:nth-child(3),
.stock-loads-detail-grid td:nth-child(4),
.stock-loads-detail-grid td:nth-child(8) {
  text-align: center;
}

.stock-loads-grid td:nth-child(6),
.stock-loads-grid td:nth-child(10),
.stock-loads-detail-grid td:nth-child(1),
.stock-loads-detail-grid td:nth-child(2) {
  text-align: left;
}

.stock-loads-grid td:nth-child(5),
.stock-loads-grid td:nth-child(6),
.stock-loads-detail-grid td:nth-child(1),
.stock-loads-detail-grid td:nth-child(2) {
  background: rgb(255, 255, 220);
}

.stock-loads-grid th:nth-child(1),
.stock-loads-grid td:nth-child(1) {
  width: 70px;
}

.stock-loads-grid th:nth-child(2),
.stock-loads-grid td:nth-child(2) {
  width: 75px;
}

.stock-loads-grid th:nth-child(3),
.stock-loads-grid td:nth-child(3) {
  width: 120px;
}

.stock-loads-grid th:nth-child(4),
.stock-loads-grid td:nth-child(4) {
  width: 90px;
}

.stock-loads-grid th:nth-child(5),
.stock-loads-grid td:nth-child(5) {
  width: 70px;
}

.stock-loads-grid th:nth-child(6),
.stock-loads-grid td:nth-child(6) {
  width: 315px;
}

.stock-loads-grid th:nth-child(7),
.stock-loads-grid td:nth-child(7) {
  width: 95px;
}

.stock-loads-grid th:nth-child(8),
.stock-loads-grid td:nth-child(8) {
  width: 90px;
}

.stock-loads-grid th:nth-child(9),
.stock-loads-grid td:nth-child(9) {
  width: 95px;
}

.stock-loads-grid th:nth-child(10),
.stock-loads-grid td:nth-child(10) {
  width: 220px;
}

.stock-loads-detail-grid th:nth-child(1),
.stock-loads-detail-grid td:nth-child(1) {
  width: 120px;
}

.stock-loads-detail-grid th:nth-child(2),
.stock-loads-detail-grid td:nth-child(2) {
  width: 430px;
}

.stock-loads-detail-grid th:nth-child(3),
.stock-loads-detail-grid td:nth-child(3) {
  width: 100px;
}

.stock-loads-detail-grid th:nth-child(4),
.stock-loads-detail-grid td:nth-child(4),
.stock-loads-detail-grid th:nth-child(5),
.stock-loads-detail-grid td:nth-child(5),
.stock-loads-detail-grid th:nth-child(6),
.stock-loads-detail-grid td:nth-child(6),
.stock-loads-detail-grid th:nth-child(7),
.stock-loads-detail-grid td:nth-child(7) {
  width: 105px;
}

.stock-loads-detail-grid th:nth-child(8),
.stock-loads-detail-grid td:nth-child(8) {
  width: 105px;
}

.stock-loads-totals {
  align-self: end;
  border: 1px solid #9aa8ba;
  display: grid;
  gap: 9px;
  padding: 8px;
  user-select: none;
}

.stock-loads-totals div {
  display: grid;
  gap: 4px;
}

.stock-loads-totals span,
.stock-loads-totals strong {
  align-items: center;
  border: 1px solid #9aa8ba;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  height: 25px;
  padding: 0 8px;
}

.stock-loads-totals span {
  background: #b8cbe0;
  font-weight: 500;
  justify-content: center;
}

.stock-loads-totals strong {
  background: rgb(230, 230, 240);
  color: #000000;
  font-weight: 520;
  justify-content: flex-end;
}

.stock-loads-page input[readonly],
.stock-loads-page textarea[readonly] {
  color: #000000;
  user-select: none;
}

.purchase-invoice-edit-module .app-footer {
  display: none;
}

body.purchase-invoice-edit-module {
  overflow: hidden;
}

.purchase-invoice-form-page.module-page {
  max-width: none;
  padding-top: 8px;
  padding-bottom: 8px;
}

.purchase-invoice-form-page .module-header {
  margin-bottom: 6px;
}

.purchase-invoice-form-page .entity-form {
  display: grid;
  gap: 10px;
}

.purchase-invoice-form-page .form-frame {
  margin: 0;
}

.supplier-form-page.data-form-skin.purchase-invoice-form-page .form-frame legend {
  font-size: 14px;
  font-weight: 500;
}

.purchase-invoice-electronic-row {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 64px 150px 1fr 140px 140px;
  margin-bottom: 12px;
}

.purchase-invoice-electronic-icon {
  align-items: center;
  background: transparent;
  border: 0;
  display: inline-flex;
  height: 44px;
  justify-content: center;
  width: 54px;
}

.purchase-invoice-electronic-icon img {
  display: block;
  height: 42px;
  object-fit: contain;
  width: 54px;
}

.purchase-invoice-electronic-button {
  box-sizing: border-box;
  font-weight: 500;
  height: 36px;
  min-height: 36px;
  padding: 0 12px;
  width: 140px;
}

.supplier-form-page.data-form-skin.purchase-invoice-form-page .top-actions .button,
.supplier-form-page.data-form-skin.purchase-invoice-form-page .top-actions button {
  box-sizing: border-box;
  height: 46px;
  min-height: 46px;
  min-width: 140px;
  padding: 0 15px;
  width: 140px;
}

.purchase-invoice-electronic-row label,
.purchase-invoice-general-grid label,
.purchase-invoice-vat-frame label,
.purchase-invoice-payment-frame label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  color: #22384e;
  display: inline-flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  height: 30px;
  padding: 0 8px;
  user-select: none;
}

.supplier-form-page.data-form-skin.purchase-invoice-form-page input,
.supplier-form-page.data-form-skin.purchase-invoice-form-page select {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  height: 30px;
}

.purchase-invoice-form-page input[readonly] {
  background: rgb(230, 230, 240);
  color: #111111;
}

.purchase-invoice-general-grid {
  display: grid;
  gap: 8px 24px;
  grid-template-columns: 430px minmax(0, 1fr);
}

.purchase-invoice-general-grid .field {
  align-items: center;
  display: grid;
  min-width: 0;
}

.purchase-invoice-code-field {
  column-gap: 6px;
  grid-column: 1;
  grid-template-columns: 150px 130px 12px 86px !important;
  width: max-content;
}

.purchase-invoice-code-field > label,
.purchase-invoice-number-field > label,
.purchase-invoice-date-field > label,
.purchase-invoice-type-field > label {
  box-sizing: border-box;
  width: 150px;
}

.purchase-invoice-code-field input:first-of-type {
  text-align: center;
  width: 130px;
}

.purchase-invoice-code-field input:last-of-type {
  text-align: center;
  width: 86px;
}

.purchase-invoice-code-field span {
  color: #22384e;
  display: inline-flex;
  font-weight: 700;
  justify-content: center;
  text-align: center;
  width: 18px;
}

.purchase-invoice-number-field,
.purchase-invoice-date-field {
  column-gap: 6px;
  grid-column: 1;
  grid-template-columns: 150px 240px !important;
}

.purchase-invoice-number-field input,
.purchase-invoice-date-field input {
  width: 240px;
}

.purchase-invoice-type-field {
  column-gap: 6px;
  grid-column: 1;
  grid-template-columns: 150px 240px !important;
}

.purchase-invoice-type-field select {
  width: 240px;
}

.purchase-invoice-left-spacer {
  grid-column: 1;
  height: 30px;
}

.purchase-invoice-supplier-field {
  grid-column: 2;
  grid-row: 1;
  column-gap: 6px;
  grid-template-columns: 120px 80px minmax(0, 1fr) 30px 30px !important;
}

.purchase-invoice-supplier-code {
  text-align: center;
  width: 80px;
}

.purchase-invoice-contra-field,
.purchase-invoice-store-field,
.purchase-invoice-notes-field {
  grid-column: 2;
  grid-template-columns: 120px minmax(0, 1fr);
}

.purchase-invoice-contra-field {
  grid-row: 2;
}

.purchase-invoice-store-field {
  grid-row: 3;
}

.purchase-invoice-notes-field {
  column-gap: 6px;
  grid-row: 4;
  grid-template-columns: 120px minmax(0, 1fr) !important;
}

.purchase-invoice-lookup-button,
.purchase-invoice-add-button {
  align-items: center;
  background: #ffffff;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  color: var(--BlueNote);
  display: inline-flex;
  font-size: 19px;
  font-weight: 400;
  height: 30px;
  justify-content: center;
  line-height: 1;
  min-height: 30px;
  padding: 0;
  width: 30px;
}

.purchase-invoice-detail-grid {
  align-items: stretch;
  display: grid;
  gap: 10px;
  grid-auto-flow: column;
  grid-template-columns: 460px 740px;
  justify-content: space-between;
  width: 100%;
}

.purchase-invoice-vat-frame,
.purchase-invoice-payment-frame {
  min-height: 246px;
  min-width: 0;
}

.purchase-invoice-vat-frame {
  grid-column: 1 !important;
  grid-row: 1;
  width: 460px !important;
}

.purchase-invoice-payment-frame {
  grid-column: 2 !important;
  grid-row: 1;
  margin-top: 0 !important;
  width: 740px !important;
}

.purchase-invoice-total-field,
.purchase-invoice-inserted-field,
.purchase-invoice-difference-field {
  align-items: center;
  column-gap: 6px;
  display: grid;
  justify-content: start;
  margin-bottom: 8px;
}

.purchase-invoice-total-field {
  grid-template-columns: 150px 160px !important;
}

.purchase-invoice-inserted-field,
.purchase-invoice-difference-field {
  grid-template-columns: 150px 160px !important;
}

.purchase-invoice-total-field input {
  text-align: right;
  width: 160px;
}

.purchase-invoice-inserted-field input,
.purchase-invoice-difference-field input {
  text-align: right;
  width: 160px;
}

.purchase-invoice-inserted-field,
.purchase-invoice-difference-field {
  justify-content: start;
  margin: 6px 0 0 0;
}

.purchase-invoice-vat-table,
.purchase-invoice-due-table {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
}

.purchase-invoice-vat-table {
  width: 390px;
}

.purchase-invoice-due-grid-wrap {
  border: 1px solid #9da8b5;
  width: 520px;
  max-height: 216px;
  overflow-y: auto;
  overflow-x: hidden;
}

.purchase-invoice-due-table {
  width: 520px;
}

.purchase-invoice-due-table th:nth-child(1),
.purchase-invoice-due-table td:nth-child(1) {
  text-align: center;
  width: 100px;
}

.purchase-invoice-due-table td:nth-child(1) input {
  text-align: center;
}

.purchase-invoice-due-table th:nth-child(2),
.purchase-invoice-due-table td:nth-child(2) {
  width: 160px;
}

.purchase-invoice-due-table th:nth-child(3),
.purchase-invoice-due-table td:nth-child(3) {
  text-align: center;
  width: 160px;
}

.purchase-invoice-due-table td:nth-child(3) input {
  text-align: center;
}

.purchase-invoice-due-table th:nth-child(4),
.purchase-invoice-due-table td:nth-child(4) {
  width: 100px;
}

.purchase-invoice-vat-table th:nth-child(1),
.purchase-invoice-vat-table td:nth-child(1) {
  text-align: center;
  width: 120px;
}

.purchase-invoice-vat-table th:nth-child(2),
.purchase-invoice-vat-table td:nth-child(2) {
  width: 150px;
}

.purchase-invoice-vat-table th:nth-child(3),
.purchase-invoice-vat-table td:nth-child(3) {
  width: 120px;
}

.purchase-invoice-vat-table th,
.purchase-invoice-vat-table td,
.purchase-invoice-due-table th,
.purchase-invoice-due-table td {
  height: 24px;
  padding: 0;
}

.purchase-invoice-vat-table th,
.purchase-invoice-vat-table td {
  border: 1px solid #c8ced8 !important;
}

.purchase-invoice-due-table th,
.purchase-invoice-due-table td {
  border: 1px solid #c8ced8 !important;
  height: 20px;
  line-height: 20px;
}

.purchase-invoice-vat-table th,
.purchase-invoice-due-table th {
  background: #b8cbe0;
  color: #0f2236;
  font-size: 12px;
  font-weight: 400;
  text-align: center;
}

.purchase-invoice-due-table th {
  height: 24px;
  line-height: 24px;
}

.purchase-invoice-vat-table input,
.purchase-invoice-due-table input {
  border: 0;
  border-radius: 0;
  height: 24px;
  padding: 0 6px;
  width: 100%;
}

.supplier-form-page.data-form-skin.purchase-invoice-form-page .purchase-invoice-vat-table input {
  background: #ffffff;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box;
  height: 24px !important;
  line-height: 24px;
  min-height: 0 !important;
  outline: none;
  padding: 0 6px !important;
  width: 100%;
}

.purchase-invoice-vat-table td:nth-child(1) input {
  text-align: center;
}

.purchase-invoice-vat-table tfoot input {
  text-align: right;
}

.supplier-form-page.data-form-skin.purchase-invoice-form-page .purchase-invoice-vat-table input[readonly],
.supplier-form-page.data-form-skin.purchase-invoice-form-page .purchase-invoice-vat-table input:disabled {
  background: rgb(230, 230, 240);
  color: #000000;
  opacity: 1;
  -webkit-text-fill-color: #000000;
}

.purchase-invoice-due-table input {
  border: 0 !important;
  height: 20px;
  line-height: 20px;
}

.purchase-invoice-form-page input[type="date"].is-empty::-webkit-datetime-edit,
.purchase-invoice-form-page input[type="date"].is-empty::-webkit-datetime-edit-text,
.purchase-invoice-form-page input[type="date"].is-empty::-webkit-datetime-edit-day-field,
.purchase-invoice-form-page input[type="date"].is-empty::-webkit-datetime-edit-month-field,
.purchase-invoice-form-page input[type="date"].is-empty::-webkit-datetime-edit-year-field {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}

.purchase-invoice-form-page input[type="date"]::-webkit-calendar-picker-indicator {
  cursor: pointer;
  opacity: 1;
}

.micronote-date-control {
  display: block;
  position: relative;
  width: 100%;
}

.micronote-date-input {
  width: 100%;
  padding-right: 30px !important;
  text-align: center;
}

.micronote-date-button {
  align-items: center;
  background-color: transparent;
  background-image: url("../images/calendario_icon_1.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 72% 72%;
  border: 0;
  border-left: 1px solid rgba(93, 112, 143, 0.24);
  border-radius: 0 5px 5px 0;
  bottom: 1px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  padding: 0;
  position: absolute;
  right: 1px;
  top: 1px;
  width: 28px;
}

.micronote-date-button::before,
.micronote-date-button::after {
  display: none;
}

.micronote-date-button:hover {
  background-color: rgba(178, 199, 220, 0.55);
}

.micronote-date-control-grid .micronote-date-button {
  width: 24px;
}

.micronote-date-control-grid .micronote-date-input {
  padding-right: 26px !important;
}

.micronote-date-picker {
  background: #ffffff;
  border: 1px solid #8f9bac;
  border-radius: 6px;
  box-shadow: 0 8px 22px rgba(35, 45, 65, 0.22);
  color: #172236;
  font-family: "Microsoft Sans Serif", Arial, sans-serif;
  font-size: 12px;
  padding: 8px;
  position: absolute;
  width: 224px;
  z-index: 5000;
}

.micronote-date-picker[hidden] {
  display: none;
}

.micronote-date-picker-head {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: 28px 1fr 28px;
  margin-bottom: 6px;
}

.micronote-date-picker-head strong {
  font-size: 12px;
  font-weight: 600;
  text-align: center;
  text-transform: capitalize;
}

.micronote-date-picker button {
  background: #e6edf7;
  border: 1px solid #9eabbc;
  border-radius: 4px;
  color: #172236;
  cursor: pointer;
  font: inherit;
  height: 24px;
  padding: 0;
}

.micronote-date-picker button:hover,
.micronote-date-picker button.is-selected {
  background: rgb(75, 100, 165);
  border-color: rgb(75, 100, 165);
  color: #ffffff;
}

.micronote-date-picker-weekdays,
.micronote-date-picker-days {
  display: grid;
  gap: 3px;
  grid-template-columns: repeat(7, 1fr);
}

.micronote-date-picker-weekdays {
  color: #40516d;
  font-size: 11px;
  font-weight: 600;
  margin-bottom: 4px;
  text-align: center;
}

.micronote-date-picker-empty {
  height: 24px;
}

.purchase-invoice-vat-table tfoot th {
  text-align: center;
}

.purchase-invoice-payment-layout {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) 158px;
}

.purchase-invoice-payment-field,
.purchase-invoice-bank-field {
  align-items: center;
  display: grid;
  grid-template-columns: 90px 395px;
  margin-bottom: 8px;
}

.purchase-invoice-payment-field select,
.purchase-invoice-bank-field select {
  width: 395px;
}

.purchase-invoice-payment-actions {
  display: grid;
  gap: 8px;
  align-content: start;
}

.purchase-invoice-payment-actions .button {
  font-size: 11px;
  font-weight: 500;
  height: 30px;
  min-height: 30px;
  min-width: 0;
  padding-left: 8px;
  padding-right: 8px;
}

.purchase-invoice-paid-check {
  align-items: center;
  background: transparent !important;
  border: 0 !important;
  display: inline-flex;
  height: 24px !important;
  justify-content: center;
  padding: 0 !important;
  width: 100%;
}

.purchase-invoice-paid-check input[type="checkbox"] {
  height: 22px !important;
  min-height: 22px !important;
  width: 22px !important;
}

.purchase-invoice-paid-check .check-button-wrap {
  height: 10px;
  width: 10px;
}

.purchase-invoice-paid-check .check-button-wrap::before {
  border-radius: 2px;
  height: 10px !important;
  width: 10px !important;
}

.purchase-invoice-paid-check .check-button-wrap::after {
  display: none !important;
}

.purchase-invoice-fe-overlay {
  align-items: center;
  background: rgba(20, 32, 48, 0.18);
  display: flex;
  inset: 0;
  justify-content: center;
  position: fixed;
  z-index: 2600;
}

.purchase-invoice-fe-overlay[hidden] {
  display: none;
}

.purchase-invoice-payment-modal-overlay {
  align-items: center;
  background: rgba(20, 32, 48, 0.18);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 18px;
  position: fixed;
  z-index: 1500;
}

.purchase-invoice-payment-modal-overlay[hidden] {
  display: none;
}

.purchase-invoice-payment-modal {
  background: #eef4fb;
  border: 1px solid #8a98aa;
  box-shadow: 0 18px 38px rgba(15, 27, 40, 0.28);
  height: min(650px, calc(100vh - 56px));
  width: min(1120px, calc(100vw - 64px));
}

.purchase-invoice-payment-modal iframe {
  border: 0;
  display: block;
  height: 100%;
  width: 100%;
}

.stock-load-article-card-modal {
  height: min(780px, calc(100vh - 32px));
  overflow: auto;
  width: min(1400px, calc(100vw - 16px));
}

.stock-load-article-card-modal iframe {
  min-width: 1360px;
}

.stock-movement-document-modal {
  height: min(820px, calc(100vh - 24px));
  overflow: auto;
  width: min(1480px, calc(100vw - 16px));
}

.stock-movement-document-modal iframe {
  min-width: 1360px;
}

.purchase-invoice-stock-load-modal {
  height: min(820px, calc(100vh - 24px));
  overflow: auto;
  width: min(1500px, calc(100vw - 16px));
}

.purchase-invoice-stock-load-modal iframe {
  min-width: 1450px;
}

.purchase-invoice-fe-dialog {
  background: #e6e6f6;
  border: 1px solid #9da8b5;
  border-radius: 8px;
  box-shadow: 0 18px 42px rgba(15, 28, 48, 0.28);
  display: grid;
  gap: 10px;
  grid-template-rows: 24px 34px 30px minmax(0, 1fr) 36px;
  height: min(522px, calc(100vh - 70px));
  padding: 0 24px 16px;
  position: relative;
  width: 724px;
}

.purchase-invoice-fe-titlebar {
  align-items: center;
  background: transparent;
  color: #111111;
  display: flex;
  font-size: 13px;
  justify-content: space-between;
  margin: 0 -14px;
}

.purchase-invoice-fe-titlebar span {
  visibility: hidden;
}

.purchase-invoice-fe-titlebar button {
  align-items: center;
  background: transparent;
  border: 0;
  color: #111111;
  display: inline-flex;
  font-size: 20px;
  height: 24px;
  justify-content: center;
  line-height: 1;
  padding: 0;
  width: 28px;
}

.purchase-invoice-fe-heading {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: 36px 1fr;
}

.purchase-invoice-fe-heading img {
  height: 34px;
  width: 34px;
}

.purchase-invoice-fe-heading h2 {
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  color: #0f2236;
  font-size: 18px;
  font-weight: 500;
  height: 32px;
  line-height: 30px;
  margin: 0;
  padding: 0 10px;
}

.purchase-invoice-fe-path-row {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: 88px minmax(0, 1fr) 30px 86px;
}

.purchase-invoice-fe-path-row label,
.purchase-invoice-fe-actions label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 3px;
  color: #0f2236;
  display: inline-flex;
  font-size: 14px;
  height: 28px;
  padding: 0 8px;
}

.purchase-invoice-fe-path-row button,
.purchase-invoice-fe-clear {
  background: #d8e4f1;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  color: #111111;
  font-size: 16px;
  font-weight: 700;
  height: 28px;
}

.purchase-invoice-fe-path-row input,
.purchase-invoice-fe-actions input {
  height: 28px;
}

.purchase-invoice-fe-path-row input {
  border-radius: 5px;
}

.purchase-invoice-fe-path-row input[data-electronic-invoice-path] {
  font-size: 13px;
  font-weight: 350;
  line-height: 28px;
}

.purchase-invoice-fe-actions input {
  border-radius: 5px;
}

.purchase-invoice-fe-grid-frame {
  background: #ffffff;
  border: 1px solid #8a8f98;
  min-height: 0;
  overflow: auto;
  user-select: none;
}

.purchase-invoice-fe-grid-frame:focus {
  outline: none;
}

.purchase-invoice-fe-grid {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.purchase-invoice-fe-grid th,
.purchase-invoice-fe-grid td {
  border: 1px solid #b5bdc9;
  height: 24px;
  padding: 0 6px;
  white-space: nowrap;
}

.purchase-invoice-fe-grid th {
  background: linear-gradient(#c7d7e8, #b8cbe0 52%, #a9bed6);
  border-bottom: 1px solid #758aa1;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.72),
    inset 0 -1px 0 rgba(72, 91, 112, 0.26);
  color: #0e1824;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 12px;
  font-weight: 400;
  position: sticky;
  text-transform: none;
  top: 0;
  z-index: 1;
}

.purchase-invoice-fe-grid tbody tr {
  cursor: default;
}

.purchase-invoice-fe-grid tbody tr:hover td {
  background: #eef4fa;
}

.purchase-invoice-fe-grid tbody tr.is-selected td {
  background: #b8cbe0;
  color: #0f2236;
}

.purchase-invoice-fe-grid tbody tr:focus,
.purchase-invoice-fe-grid tbody tr:focus-visible {
  outline: none;
}

.purchase-invoice-fe-grid tbody td {
  overflow: hidden;
  text-overflow: ellipsis;
}

.purchase-invoice-fe-grid th:nth-child(1) {
  width: 300px;
}

.purchase-invoice-fe-grid th:nth-child(2) {
  width: 90px;
}

.purchase-invoice-fe-grid td:nth-child(2) {
  text-align: center;
}

.purchase-invoice-fe-grid th:nth-child(3) {
  width: 140px;
}

.purchase-invoice-fe-grid th:nth-child(4) {
  width: 110px;
}

.purchase-invoice-fe-grid td:nth-child(4) {
  text-align: right;
}

.purchase-invoice-fe-preview {
  background: #e6e6f6;
  border: 1px solid #777f8c;
  box-shadow: 0 8px 18px rgba(15, 28, 48, 0.18);
  color: #111111;
  font-family: "Microsoft Sans Serif", Arial, sans-serif;
  font-size: 13px;
  line-height: 1.18;
  min-height: 78px;
  padding: 8px 12px;
  pointer-events: none;
  position: absolute;
  width: 360px;
  z-index: 2;
}

.purchase-invoice-fe-preview[hidden] {
  display: none;
}

.purchase-invoice-fe-preview div {
  display: grid;
  grid-template-columns: 77px 13px 1fr;
  min-height: 16px;
}

.purchase-invoice-fe-preview span {
  white-space: nowrap;
}

.purchase-invoice-fe-preview strong {
  font-size: 12px;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.purchase-invoice-fe-actions {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: 106px 106px 86px 86px;
  justify-content: end;
}

.purchase-invoice-fe-actions .button {
  font-size: 12px;
  font-weight: 500;
  height: 32px;
  min-height: 32px;
  min-width: 0;
  padding: 0 10px;
}

.purchase-invoice-fe-count {
  text-align: center;
}

.purchase-invoice-xml-overlay {
  align-items: center;
  background: rgba(8, 18, 32, 0.32);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 18px;
  position: fixed;
  z-index: 2700;
}

.purchase-invoice-xml-overlay[hidden] {
  display: none;
}

.purchase-invoice-xml-dialog {
  background: #e8e8f6;
  border: 1px solid #707784;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22);
  display: grid;
  grid-template-rows: 22px 40px minmax(0, 1fr) 42px;
  height: min(860px, calc(100vh - 36px));
  padding: 6px 10px 10px;
  width: min(1160px, calc(100vw - 36px));
}

.purchase-invoice-xml-dialog .purchase-invoice-fe-heading {
  transform: translateY(-6px);
}

.stock-loads-xml-heading h2 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.purchase-invoice-xml-frame {
  background: #ffffff;
  border: 1px solid #8a8f98;
  height: 100%;
  min-height: 0;
  width: 100%;
}

.purchase-invoice-xml-actions {
  align-items: end;
  display: flex;
  justify-content: flex-end;
  padding-top: 8px;
}

.purchase-invoice-xml-actions .button {
  height: 32px;
  min-height: 32px;
  min-width: 96px;
}


@media (max-width: 900px) {
  .app-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .food-logo {
    align-self: center;
  }

  .session-panel {
    width: 100%;
  }

  .quick-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .section-content {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .filter-panel {
    grid-template-columns: 1fr 1fr;
  }

  .form-grid-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  .page-container {
    padding: 0 14px;
  }

  .app-identity {
    align-items: flex-start;
  }

  .session-summary {
    grid-template-columns: 1fr;
  }

  .session-summary div + div {
    border-left: 0;
    border-top: 1px solid var(--line);
  }

  .quick-links,
  .menu-items,
  .main-menu,
  .section-content {
    grid-template-columns: 1fr;
  }

  .menu-intro {
    align-items: start;
    flex-direction: column;
    gap: 7px;
  }

  .menu-shell {
    padding: 14px;
  }

  .module-header {
    align-items: stretch;
    flex-direction: column;
  }

  .module-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .filter-panel,
  .form-grid-4 {
    grid-template-columns: 1fr;
  }

  .field-span-2 {
    grid-column: auto;
  }
}

.article-list-toolbar {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(290px, 1.3fr) repeat(4, minmax(210px, 1fr)) minmax(280px, 1.2fr);
}

.list-title-actions .article-records-box {
  margin-right: 20px;
  margin-left: 0;
  min-height: 36px;
}

.article-search-field,
.article-filter-field,
.article-supplier-filter-field {
  min-width: 0;
}

.article-grid {
  min-width: 1900px;
}

.article-grid th:nth-child(1),
.article-grid td:nth-child(1) {
  text-align: left;
  width: 140px;
}

.article-grid th:nth-child(2),
.article-grid td:nth-child(2) {
  width: 370px;
}

.article-grid th:nth-child(3),
.article-grid td:nth-child(3) {
  text-align: center;
  width: 90px;
}

.article-grid th:nth-child(4),
.article-grid td:nth-child(4) {
  text-align: center;
  width: 90px;
}

.article-grid th:nth-child(5),
.article-grid td:nth-child(5),
.article-grid th:nth-child(6),
.article-grid td:nth-child(6),
.article-grid th:nth-child(7),
.article-grid td:nth-child(7),
.article-grid th:nth-child(8),
.article-grid td:nth-child(8) {
  width: 140px;
}

.article-grid th:nth-child(9),
.article-grid td:nth-child(9),
.article-grid th:nth-child(10),
.article-grid td:nth-child(10),
.article-grid th:nth-child(11),
.article-grid td:nth-child(11),
.article-grid th:nth-child(12),
.article-grid td:nth-child(12) {
  text-align: right;
  width: 100px;
}

.article-grid th:nth-child(13),
.article-grid td:nth-child(13) {
  width: 220px;
}

.article-form-page {
  --article-label-width: 150px;
  max-width: 1280px;
}

.article-form-page .module-header {
  margin-bottom: 10px;
}

.supplier-form-page.article-form-page .article-form-frame {
  padding: 43px 44px 37px 24px;
}

.article-fields-grid {
  display: grid;
  gap: 10px 34px;
  grid-template-columns: 536px 300px 300px;
}

.article-fields-grid .field {
  align-items: center;
  display: grid;
  grid-template-columns: var(--article-label-width) minmax(0, 1fr);
  min-height: 30px;
}

.article-fields-grid label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  color: #0e1824;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  height: 30px;
  padding: 0 8px;
  user-select: none;
}

.article-form-page input,
.article-form-page select {
  color: #000000;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
}

.supplier-form-page.data-form-skin.article-form-page input,
.supplier-form-page.data-form-skin.article-form-page select,
.supplier-form-page.data-form-skin.article-form-page textarea {
  color: #000000;
  font-size: 13px;
  font-weight: 520;
}

.article-form-page input[readonly],
.article-form-page input:disabled,
.article-form-page select:disabled {
  color: #000000;
  opacity: 1;
  -webkit-text-fill-color: #000000;
}

.supplier-form-page.data-form-skin.article-form-page input[readonly],
.supplier-form-page.data-form-skin.article-form-page input:disabled,
.supplier-form-page.data-form-skin.article-form-page select:disabled,
.supplier-form-page.data-form-skin.article-form-page textarea:disabled {
  color: #000000;
  opacity: 1;
  -webkit-text-fill-color: #000000;
}

.supplier-form-page.data-form-skin.article-form-page.is-readonly .article-form-frame input:not([type="hidden"]),
.supplier-form-page.data-form-skin.article-form-page.is-readonly .article-form-frame select,
.supplier-form-page.data-form-skin.article-form-page.is-readonly .article-form-frame textarea {
  background: rgb(230, 230, 240);
  color: #000000;
  opacity: 1;
  -webkit-text-fill-color: #000000;
}

.supplier-form-page.data-form-skin.article-form-page .article-supplier-name-display {
  background: rgb(230, 230, 240);
}

.article-code-field {
  grid-column: 1;
  grid-row: 1;
}

.article-code-field input {
  text-align: left;
}

.article-description-field {
  grid-column: 1 / -1;
  grid-row: 2;
}

.article-supplier-field {
  column-gap: 6px;
  grid-column: 1 / 3;
  grid-row: 8;
  grid-template-columns: var(--article-label-width) 80px minmax(0, 1fr) 30px 30px !important;
  margin-top: 20px;
}

.article-supplier-code-display {
  text-align: center;
}

.article-supplier-name-display {
  background: rgb(230, 230, 240);
  user-select: none;
}

.article-supplier-lookup-button,
.article-supplier-clear-button {
  align-items: center;
  background: #ffffff;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  color: var(--BlueNote);
  display: inline-flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 19px;
  font-weight: 400;
  height: 30px;
  justify-content: center;
  line-height: 1;
  min-height: 30px;
  padding: 0;
  width: 30px;
}

.article-supplier-clear-button {
  cursor: pointer;
  font-size: 18px;
}

.article-supplier-lookup-button:hover,
.article-supplier-lookup-button:focus-visible,
.article-supplier-clear-button:hover,
.article-supplier-clear-button:focus-visible {
  background: #eef4fb;
  border-color: var(--BlueNote);
  outline: none;
}

.article-supplier-code-field {
  grid-column: 3;
  grid-row: 8;
  margin-top: 20px;
}

.article-last-cost-field {
  grid-column: 3;
  grid-row: 5;
}

.article-category-field {
  grid-column: 1;
  grid-row: 3;
  margin-top: 20px;
}

.article-group-field {
  grid-column: 1;
  grid-row: 4;
}

.article-subgroup-field {
  grid-column: 1;
  grid-row: 5;
}

.article-unit-field {
  grid-column: 1;
  grid-row: 6;
}

.article-standard-cost-field {
  grid-column: 2;
  grid-row: 5;
}

.article-initial-stock-field {
  grid-column: 3;
  grid-row: 3;
  margin-top: 20px;
}

.article-net-weight-field {
  grid-column: 2;
  grid-row: 3;
  margin-top: 20px;
}

.article-pieces-field {
  grid-column: 2;
  grid-row: 4;
}

.article-standard-price-field {
  grid-column: 2;
  grid-row: 6;
}

.article-vat-rate-field {
  grid-column: 2;
  grid-row: 7;
}

.article-net-weight-field input,
.article-pieces-field input,
.article-standard-cost-field input,
.article-standard-price-field input,
.article-vat-rate-field input,
.article-initial-stock-field input,
.article-daily-consumption-field input {
  text-align: right;
}

.article-daily-consumption-field {
  grid-column: 3;
  grid-row: 6;
}

.article-average-cost-field {
  grid-column: 3;
  grid-row: 4;
}

/* Disposizione Fish della scheda Articoli. */
.article-form-page .article-category-field {
  grid-column: 1;
  grid-row: 3;
}

.article-form-page .article-group-field {
  grid-column: 1;
  grid-row: 4;
}

.article-form-page .article-subgroup-field {
  grid-column: 1;
  grid-row: 5;
}

.article-form-page .article-daily-consumption-field {
  grid-column: 1;
  grid-row: 6;
}

.article-form-page .article-sales-unit-field {
  grid-column: 2;
  grid-row: 3;
  margin-top: 20px;
}

.article-form-page .article-purchase-unit-field {
  grid-column: 2;
  grid-row: 4;
}

.article-form-page .article-net-weight-field {
  grid-column: 2;
  grid-row: 5;
  margin-top: 0;
}

.article-form-page .article-pieces-field {
  grid-column: 2;
  grid-row: 6;
}

.article-form-page .article-initial-stock-field {
  grid-column: 2;
  grid-row: 7;
  margin-top: 0;
}

.article-form-page .article-standard-cost-field {
  grid-column: 3;
  grid-row: 3;
  margin-top: 20px;
}

.article-form-page .article-standard-price-field {
  grid-column: 3;
  grid-row: 4;
}

.article-form-page .article-average-cost-field {
  grid-column: 3;
  grid-row: 5;
}

.article-form-page .article-vat-rate-field {
  grid-column: 3;
  grid-row: 6;
}

.article-form-page .currency-display {
  text-align: right;
}

.stock-load-form-page {
  --stock-label-width: 150px;
  max-width: 1320px;
  padding-top: 8px;
}

.stock-load-form-page .module-header {
  margin-bottom: 8px;
}

.stock-load-form-page .entity-form {
  padding: 10px 27px 12px;
}

.stock-load-form-page input,
.stock-load-form-page select,
.stock-load-form-page textarea {
  color: #000000;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
}

.supplier-form-page.data-form-skin.stock-load-form-page input,
.supplier-form-page.data-form-skin.stock-load-form-page select,
.supplier-form-page.data-form-skin.stock-load-form-page textarea {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
}

.stock-load-form-page input[readonly],
.stock-load-form-page input:disabled,
.stock-load-form-page select:disabled {
  background: rgb(230, 230, 240);
  color: #000000;
  opacity: 1;
  -webkit-text-fill-color: #000000;
  user-select: none;
}

.stock-load-form-page.data-form-skin .field label,
.stock-load-form-page.data-form-skin .stock-load-electronic-row label,
.stock-load-form-page.data-form-skin .stock-load-total-frame label {
  font-size: 13px;
  font-weight: 500;
}

.stock-load-form-page.data-form-skin .form-frame legend {
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
}

.stock-load-frame {
  padding: 16px 14px 14px;
}

.stock-load-electronic-row {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 54px 150px minmax(320px, 1fr) 140px 140px;
  margin-bottom: 12px;
}

.stock-load-electronic-icon {
  align-items: center;
  display: flex;
  justify-content: center;
}

.stock-load-electronic-icon img {
  height: 42px;
  width: 42px;
}

.stock-load-electronic-row label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  display: flex;
  height: 30px;
  padding: 0 10px;
}

.stock-load-electronic-button {
  font-size: 12px;
  font-weight: 500;
  height: 36px;
  min-height: 36px;
  width: 140px;
}

.supplier-form-page.data-form-skin.stock-load-form-page .top-actions .button,
.supplier-form-page.data-form-skin.stock-load-form-page .top-actions button {
  max-width: 140px !important;
  min-width: 140px !important;
  width: 140px !important;
}

.stock-load-general-grid {
  display: grid;
  gap: 6px 18px;
  grid-template-columns: 430px minmax(0, 1fr);
  min-width: 0;
}

.stock-load-general-grid .field {
  display: grid;
  grid-template-columns: var(--stock-label-width) minmax(0, 1fr);
  min-height: 30px;
}

.stock-load-code-field {
  grid-column: 1;
  grid-template-columns: var(--stock-label-width) 130px 12px 76px !important;
}

.stock-load-code-field span {
  align-self: center;
  font-size: 18px;
  line-height: 1;
  text-align: center;
}

.stock-load-code-field input {
  text-align: center;
}

.stock-load-number-field,
.stock-load-date-field {
  grid-column: 1;
  grid-template-columns: var(--stock-label-width) 230px !important;
}

.stock-load-cause-field {
  grid-column: 2;
  grid-row: 1;
  grid-template-columns: 120px minmax(0, 330px) !important;
}

.stock-load-supplier-field {
  align-self: start;
  column-gap: 6px;
  grid-column: 2;
  grid-row: 2;
  grid-template-columns: 120px 82px minmax(260px, 1fr) 30px 30px !important;
}

.stock-load-store-field {
  grid-column: 2;
  grid-row: 3;
  grid-template-columns: 120px minmax(0, 330px) !important;
}

.stock-load-supplier-code {
  text-align: center;
}

.stock-load-supplier-name {
  background: rgb(230, 230, 240);
}

.stock-load-square-button {
  align-items: center;
  background: #ffffff;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  color: #244267;
  display: inline-flex;
  font-size: 18px;
  font-weight: 400;
  height: 30px;
  justify-content: center;
  line-height: 1;
  padding: 0;
  width: 30px;
}

.stock-load-square-button:hover,
.stock-load-square-button:focus-visible {
  background: #eef4fb;
  border-color: var(--BlueNote);
  outline: none;
}

.stock-load-lines-section {
  display: grid;
  gap: 0;
  grid-template-columns: 54px minmax(0, 1fr);
  height: 295px;
  margin-top: 6px;
  min-height: 0;
}

.stock-load-side-actions {
  display: grid;
  grid-template-rows: repeat(3, 1fr);
  height: 295px;
  min-height: 0;
}

.stock-load-side-actions button {
  align-items: center;
  background: linear-gradient(#d7e4f2, #bfd2e6 52%, #aebfd5);
  border: 1px solid #8a8f98;
  border-right: 0;
  box-shadow:
    inset 0 1px rgba(255, 255, 255, 0.85),
    inset 0 -1px rgba(98, 112, 132, 0.35);
  color: #0e1824;
  display: flex;
  font-size: 12px;
  font-weight: 500;
  justify-content: center;
  min-width: 0;
  padding: 0;
  text-orientation: mixed;
  transform: rotate(180deg);
  writing-mode: vertical-rl;
}

.stock-load-side-actions span {
  color: #234a82;
  font-weight: 600;
}

.stock-load-lines-wrap {
  background: #eaf2fa;
  border: 1px solid #8a8f98;
  height: 295px;
  max-height: 295px;
  min-height: 0;
  outline: none;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

.stock-load-lines-grid {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  width: calc(100% - 18px);
}

.stock-load-vat-grid {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  width: 100%;
}

.stock-load-lines-grid th,
.stock-load-lines-grid td,
.stock-load-vat-grid td {
  height: 23px;
  line-height: 23px;
  padding: 0;
}

.stock-load-lines-grid th {
  border: 1px solid #c8ced8 !important;
  position: sticky;
  top: 0;
  z-index: 1;
}

.stock-load-lines-grid td,
.stock-load-vat-grid td {
  border: 1px solid #c8ced8 !important;
}

.stock-load-lines-grid th {
  background: linear-gradient(#c7d7e8, #b8cbe0 52%, #a9bed6);
  box-shadow:
    inset 0 1px rgba(255, 255, 255, 0.85),
    inset 0 -1px rgba(100, 118, 140, 0.35);
  color: #0e1824;
  font-size: 13px;
  font-weight: 500;
  height: 28px;
  padding: 4px 6px;
  text-align: center;
}

.supplier-form-page.data-form-skin.stock-load-form-page .stock-load-lines-grid input,
.supplier-form-page.data-form-skin.stock-load-form-page .stock-load-vat-grid input {
  background: #ffffff;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box;
  height: 23px !important;
  line-height: 23px;
  min-height: 0 !important;
  outline: none;
  padding: 0 6px !important;
  width: 100%;
}

.supplier-form-page.data-form-skin.stock-load-form-page .stock-load-lines-grid input[readonly] {
  color: #000000;
  cursor: default;
  opacity: 1;
  -webkit-text-fill-color: #000000;
  user-select: none;
}

.stock-load-lines-grid tbody tr {
  cursor: default;
}

.stock-load-lines-grid tbody tr:has(td:first-child input[value=""]) {
  cursor: default;
}

.stock-load-lines-grid tbody tr.selected td,
.stock-load-lines-grid tbody tr.selected input {
  background: rgb(190, 203, 214) !important;
}

.stock-load-lines-grid input.stock-load-missing-article,
.stock-load-lines-grid tbody tr.selected input.stock-load-missing-article {
  background: #f5b4b4 !important;
}

.stock-load-lines-grid input.stock-load-assigned-article,
.stock-load-lines-grid tbody tr.selected input.stock-load-assigned-article {
  background: #fff2a6 !important;
}

.stock-load-lines-grid th:nth-child(1) {
  width: 160px;
}

.stock-load-lines-grid th:nth-child(3) {
  width: 80px;
}

.stock-load-lines-grid th:nth-child(n+4) {
  width: 96px;
}

.stock-load-lines-grid th:nth-child(8) {
  width: 118px;
}

.stock-load-lines-grid td:nth-child(3),
.stock-load-lines-grid td:nth-child(8) {
  text-align: center;
}

.stock-load-lines-grid td:nth-child(n+4) input {
  text-align: right;
}

.stock-load-lines-grid td:nth-child(8) input {
  padding-right: 24px;
}

.supplier-form-page.data-form-skin.stock-load-form-page .stock-load-invoice-total-field {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: 150px 140px !important;
  justify-content: end;
  margin: 0 0 0 auto;
  width: max-content;
}

.supplier-form-page.data-form-skin.stock-load-form-page .stock-load-invoice-total-field label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  display: flex;
  font-size: 13px;
  font-weight: 500;
  height: 30px;
  padding: 0 10px;
}

.supplier-form-page.data-form-skin.stock-load-form-page .stock-load-invoice-total-field input {
  text-align: right;
  width: 140px !important;
}

.stock-load-footer-actions {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-top: 6px;
}

.stock-load-footer-actions > div {
  display: flex;
  gap: 10px;
}

.stock-load-footer-actions .button,
.stock-load-footer-actions button {
  font-size: 12px;
  font-weight: 500;
  height: 36px;
  min-height: 36px;
  min-width: 132px;
}

.stock-load-line-overlay {
  align-items: center;
  background: rgba(238, 245, 251, 0.54);
  display: flex;
  inset: 0;
  justify-content: center;
  position: fixed;
  z-index: 1200;
}

.stock-load-line-overlay[hidden] {
  display: none;
}

.stock-load-line-dialog {
  background: #ffffff;
  border: 1px solid #6f7784;
  box-shadow: 0 12px 28px rgba(20, 34, 54, 0.28);
  color: #0f1724;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  padding: 14px;
  width: 930px;
}

.stock-load-line-title {
  align-items: center;
  background: #6aa4dc;
  color: #0b1420;
  display: flex;
  font-size: 14px;
  font-weight: 600;
  height: 36px;
  margin-bottom: 14px;
  padding: 0 16px;
}

.stock-load-line-body {
  background: #e7e7f7;
  border: 1px solid #7e8491;
  display: grid;
  grid-template-columns: 332px 250px 230px;
  gap: 16px 30px;
  min-height: 196px;
  padding: 20px 16px 14px;
}

.stock-load-line-body label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 5px;
  color: #0e1824;
  display: flex;
  font-size: 13px;
  font-weight: 500;
  height: 26px;
  padding: 0 8px;
}

.stock-load-line-body input {
  border: 1px solid #8a8f98;
  border-radius: 5px;
  color: #000000;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 26px;
  padding: 0 8px;
}

.supplier-form-page.data-form-skin.stock-load-form-page .stock-load-line-body input {
  font-size: 13px;
  font-weight: 520;
}

.stock-load-line-body input[readonly] {
  background: rgb(230, 230, 240);
  user-select: none;
}

.stock-load-line-article {
  align-items: center;
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: 110px 170px 30px minmax(0, 1fr);
  gap: 4px;
}

.stock-load-line-article label {
  box-sizing: border-box;
  height: 28px;
}

.stock-load-line-article input {
  box-sizing: border-box;
  height: 28px;
}

.stock-load-line-code {
  text-align: center;
}

.stock-load-line-description {
  background: rgb(230, 230, 240);
}

.stock-load-line-lookup-button {
  align-self: center;
  box-sizing: border-box;
  height: 28px;
  min-height: 28px;
  min-width: 30px;
  width: 30px;
}

.stock-load-line-lookup-button::before {
  height: 40%;
  left: 23%;
  top: 20%;
  width: 40%;
}

.stock-load-line-lookup-button::after {
  left: 58%;
  top: 64%;
  width: 27%;
}

.stock-load-line-middle,
.stock-load-line-measures,
.stock-load-line-right {
  display: grid;
  gap: 6px;
  align-content: start;
  margin-top: 4px;
}

.stock-load-line-middle {
  grid-column: 1;
}

.stock-load-line-measures {
  grid-column: 2;
}

.stock-load-line-right {
  grid-column: 3;
}

.stock-load-line-middle .field,
.stock-load-line-measures .field,
.stock-load-line-right .field {
  display: grid;
  grid-template-columns: 126px 120px;
  gap: 4px;
}

.stock-load-line-right .field {
  grid-template-columns: 110px 116px;
}

.stock-load-line-body .numeric-display,
.stock-load-line-body .currency-display {
  text-align: right;
}

.stock-load-line-unit input {
  text-align: center;
}

.stock-load-line-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  margin-top: 8px;
}

.stock-load-line-actions .button,
.stock-load-line-actions button {
  font-size: 12px;
  font-weight: 500;
  height: 36px;
  min-height: 36px;
  width: 110px;
}

.stock-load-line-dialog.is-dimmed {
  filter: saturate(0.92);
}

.stock-load-article-lookup {
  align-items: center;
  background: rgba(238, 245, 251, 0.44);
  display: flex;
  inset: 0;
  justify-content: center;
  position: fixed;
  z-index: 1220;
}

.stock-load-article-lookup[hidden] {
  display: none;
}

.stock-load-article-lookup-dialog {
  background: #ffffff;
  border: 1px solid #6f7784;
  box-shadow: 0 14px 32px rgba(20, 34, 54, 0.32);
  color: #0f1724;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  padding: 12px;
  width: 1270px;
}

.stock-load-article-lookup-title {
  align-items: center;
  background: #6aa4dc;
  color: #0b1420;
  display: flex;
  font-size: 14px;
  font-weight: 600;
  height: 24px;
  margin-bottom: 10px;
  padding: 0 28px;
}

.stock-load-article-lookup-frame {
  border: 1px solid #8a8f98;
  height: 390px;
  overflow: auto;
  outline: none;
}

.stock-load-article-lookup-table {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  user-select: none;
  width: 100%;
}

.stock-load-article-lookup-table th {
  background: linear-gradient(#c7d7e8, #b8cbe0 52%, #a9bed6);
  border: 1px solid #c8ced8;
  box-shadow:
    inset 0 1px rgba(255, 255, 255, 0.85),
    inset 0 -1px rgba(100, 118, 140, 0.35);
  color: #17395c;
  font-size: 12px;
  font-weight: 400;
  height: 27px;
  padding: 0;
  position: sticky;
  top: 0;
  z-index: 1;
}

.stock-load-article-lookup-table th button {
  align-items: center;
  background: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  gap: 5px;
  height: 100%;
  justify-content: flex-start;
  padding: 4px 6px;
  text-align: left;
  width: 100%;
}

.stock-load-article-lookup-table th button::after {
  color: var(--BlueNote);
  content: "";
  font-size: 10px;
  min-width: 10px;
}

.stock-load-article-lookup-table th button.is-active[data-direction="asc"]::after {
  content: "^";
}

.stock-load-article-lookup-table th button.is-active[data-direction="desc"]::after {
  content: "v";
}

.stock-load-article-lookup-table td {
  border: 1px solid #c8ced8;
  color: #000000;
  cursor: default;
  font-size: 13px;
  font-weight: 520;
  height: 27px;
  line-height: 27px;
  overflow: hidden;
  padding: 0 6px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.stock-load-article-lookup-table tr {
  cursor: default;
}

.stock-load-article-lookup-table tr.selected td {
  background: rgb(190, 203, 214);
}

.stock-load-article-lookup-table th:nth-child(1),
.stock-load-article-lookup-table td:nth-child(1) {
  width: 150px;
}

.stock-load-article-lookup-table th:nth-child(2),
.stock-load-article-lookup-table td:nth-child(2) {
  width: 400px;
}

.stock-load-article-lookup-table th:nth-child(3),
.stock-load-article-lookup-table td:nth-child(3),
.stock-load-article-lookup-table th:nth-child(4),
.stock-load-article-lookup-table td:nth-child(4),
.stock-load-article-lookup-table th:nth-child(5),
.stock-load-article-lookup-table td:nth-child(5) {
  width: 150px;
}

.stock-load-article-lookup-table th:nth-child(6),
.stock-load-article-lookup-table td:nth-child(6),
.stock-load-article-lookup-table th:nth-child(7),
.stock-load-article-lookup-table td:nth-child(7) {
  text-align: right;
  width: 98px;
}

.stock-load-article-lookup-table th:nth-child(7),
.stock-load-article-lookup-table td:nth-child(7) {
  text-align: center;
}

.stock-load-article-lookup-tools {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: 62px 174px 72px 160px 72px 254px 64px 80px 106px 106px;
  margin-top: 10px;
}

.stock-load-article-lookup-tools label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 0;
  color: #0e1824;
  display: flex;
  font-size: 13px;
  font-weight: 500;
  height: 26px;
  padding: 0 8px;
}

.stock-load-article-lookup-tools input,
.stock-load-article-lookup-tools select {
  border: 1px solid #8a8f98;
  border-radius: 0;
  color: #000000;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 26px;
  min-height: 26px;
  padding: 0 8px;
}

.stock-load-article-lookup-tools input:focus,
.stock-load-article-lookup-tools input:focus-visible,
.stock-load-article-lookup-tools select:focus,
.stock-load-article-lookup-tools select:focus-visible {
  border-color: var(--BlueNote);
  box-shadow: none;
  outline: none;
}

.stock-load-article-lookup-tools [data-article-count] {
  background: rgb(230, 230, 240);
  text-align: center;
}

.stock-load-article-lookup-tools .button,
.stock-load-article-lookup-tools button {
  font-size: 12px;
  font-weight: 500;
  height: 34px;
  min-height: 34px;
}

.initial-article-stock-page {
  min-height: calc(100vh - 68px);
}

.initial-article-stock-actions {
  flex-wrap: nowrap;
}

.list-title-actions .initial-article-stock-records {
  margin-left: 0;
  margin-right: 12px;
  min-height: 36px;
}

.initial-article-stock-frame {
  margin-top: 4px;
  padding: 4px;
}

.initial-article-stock-grid-frame {
  background: #ffffff;
  border: 1px solid #8a8f98;
  height: calc(100vh - 163px);
  min-height: 390px;
  overflow-x: auto;
  overflow-y: scroll;
  padding-right: 17px;
  scrollbar-gutter: auto;
}

.initial-article-stock-grid {
  min-width: 990px;
  table-layout: fixed;
  user-select: none;
}

.initial-article-stock-grid th,
.initial-article-stock-grid td {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
}

.initial-article-stock-grid th {
  font-weight: 500;
}

.initial-article-stock-grid td {
  background: rgb(235, 235, 250);
  border-color: #a5a5a5;
  height: 27px;
  padding: 0 6px;
  white-space: nowrap;
}

.initial-article-stock-grid tbody tr.selected-row,
.initial-article-stock-grid tbody tr.selected-row:hover {
  background: transparent;
  box-shadow: none;
  color: #000000;
}

.initial-article-stock-grid tbody tr.selected-row td:first-child {
  box-shadow: inset 4px 0 0 #2f6faa;
}

.initial-article-stock-grid th:nth-child(1),
.initial-article-stock-grid td:nth-child(1) {
  width: 130px;
}

.initial-article-stock-grid th:nth-child(2),
.initial-article-stock-grid td:nth-child(2) {
  width: 360px;
}

.initial-article-stock-grid th:nth-child(3),
.initial-article-stock-grid td:nth-child(3) {
  text-align: center;
  width: 70px;
}

.initial-article-stock-grid th:nth-child(4),
.initial-article-stock-grid td:nth-child(4),
.initial-article-stock-grid th:nth-child(5),
.initial-article-stock-grid td:nth-child(5) {
  width: 140px;
}

.initial-article-stock-grid th:nth-child(6),
.initial-article-stock-grid td:nth-child(6) {
  text-align: right;
  width: 120px;
}

.initial-article-stock-grid td:nth-child(6) {
  background: #ffffff;
  padding: 0;
}

.initial-article-stock-grid tbody tr.selected-row td:nth-child(6) {
  background: #fff6a8;
  box-shadow: inset 0 0 0 1px #6a5a00;
}

.initial-article-stock-grid input[data-initial-stock-quantity] {
  background: transparent;
  border: 0;
  color: #000;
  font: inherit;
  height: 26px;
  min-height: 26px;
  padding: 0 7px;
  text-align: right;
  width: 100%;
}

.initial-article-stock-grid input[data-initial-stock-quantity]:focus {
  background: #fff6a8;
  box-shadow: inset 0 0 0 1px #6a5a00;
  outline: none;
}

.initial-cf-balance-page {
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.initial-customer-supplier-balance-module .page-container {
  height: calc(100vh - 20px);
  max-width: none;
  overflow: hidden;
}

.initial-customer-supplier-balance-module .page-container > main {
  height: 100%;
  min-height: 0;
}

body.initial-customer-supplier-balance-module {
  overflow: hidden;
}

body.initial-customer-supplier-balance-module .app-footer {
  display: none;
}

.initial-cf-balance-page .list-titlebar {
  margin-bottom: 6px;
  min-height: 58px;
  padding-bottom: 4px;
  padding-top: 4px;
}

.initial-cf-balance-page .list-title-identity img {
  height: 44px;
  width: 44px;
}

.initial-cf-balance-actions {
  flex-wrap: nowrap;
}

.list-title-actions .initial-cf-balance-records {
  margin-left: 0;
  margin-right: 12px;
  min-height: 36px;
}

.initial-cf-filter-frame {
  margin-top: 4px;
  padding: 4px 6px;
}

.initial-cf-filter-grid {
  align-items: center;
  display: grid;
  gap: 5px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.initial-cf-filter-left {
  align-items: center;
  display: flex;
  gap: 12px;
  min-width: 0;
  flex-wrap: nowrap;
}

.initial-cf-year-field,
.initial-cf-clear-button {
  flex: 0 0 auto;
}

.initial-cf-filter-grid .field {
  align-items: center;
  column-gap: 6px;
  display: grid;
  grid-template-columns: 150px 120px;
  margin: 0;
  min-height: 30px;
}

.initial-cf-filter-grid .field label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  box-sizing: border-box;
  color: #000;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 30px;
  line-height: 1;
  padding: 0 7px;
}

.initial-cf-filter-grid select {
  background: #ffffff;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  box-sizing: border-box;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 30px;
  min-height: 30px;
  padding: 3px 6px;
}

.initial-cf-clear-button {
  height: 36px;
  min-height: 36px;
  width: 130px;
}

.initial-cf-note {
  align-items: center;
  background: #ffff73;
  border: 1px solid #d0c54a;
  color: #000;
  display: grid;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  gap: 12px;
  grid-column: 2;
  grid-row: 1;
  grid-template-columns: 48px minmax(0, 1fr);
  justify-self: end;
  min-height: 58px;
  padding: 5px 10px;
  width: 100%;
}

.initial-cf-note strong {
  font-weight: 520;
}

.initial-cf-grid-layout {
  display: grid;
  gap: 5px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  margin-top: 6px;
}

.initial-cf-panel {
  border: 1px solid #8a8f98;
  min-width: 0;
}

.initial-cf-panel h2 {
  align-items: center;
  background: #b8cbe0;
  border-bottom: 1px solid #8a8f98;
  color: #000;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 22px;
  line-height: 1;
  margin: 0;
  padding: 0 6px;
}

.initial-cf-grid-frame {
  background: #ffffff;
  height: calc(100vh - 262px);
  min-height: 390px;
  overflow: auto;
  scrollbar-gutter: stable;
}

.initial-cf-grid {
  min-width: 730px;
  table-layout: fixed;
  user-select: none;
}

.initial-cf-grid th,
.initial-cf-grid td {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
}

.initial-cf-grid th {
  font-weight: 500;
}

.initial-cf-grid td {
  background: rgb(235, 235, 250);
  border-color: #a5a5a5;
  height: 27px;
  padding: 0 6px;
}

.initial-cf-grid tbody tr.selected-row,
.initial-cf-grid tbody tr.selected-row:hover {
  background: transparent;
  box-shadow: none;
  color: #000000;
}

.initial-cf-grid tbody tr.selected-row td:first-child {
  box-shadow: inset 4px 0 0 #2f6faa;
}

.initial-cf-grid th:nth-child(1),
.initial-cf-grid td:nth-child(1) {
  text-align: center;
  width: 70px;
}

.initial-cf-grid th:nth-child(2),
.initial-cf-grid td:nth-child(2) {
  width: 270px;
}

.initial-cf-grid th:nth-child(3),
.initial-cf-grid td:nth-child(3) {
  width: 160px;
}

.initial-cf-grid th:nth-child(4),
.initial-cf-grid td:nth-child(4) {
  width: 120px;
}

.initial-cf-grid th:nth-child(5),
.initial-cf-grid td:nth-child(5) {
  text-align: right;
  width: 110px;
}

.initial-cf-grid td:nth-child(5) {
  background: #ffffff;
  padding: 0;
}

.initial-cf-grid tbody tr.selected-row td:nth-child(5) {
  background: #fff6a8;
  box-shadow: inset 0 0 0 1px #6a5a00;
}

.initial-cf-grid input[data-initial-cf-balance-input] {
  background: transparent;
  border: 0;
  color: #000;
  font: inherit;
  height: 100%;
  outline: none;
  padding: 0 7px;
  text-align: right;
  width: 100%;
}

.initial-cf-grid input[data-initial-cf-balance-input]:focus {
  background: #fff6a8;
  box-shadow: inset 0 0 0 1px #6a5a00;
  outline: none;
}

.initial-cf-total-box {
  box-sizing: border-box;
  grid-template-columns: 180px 110px;
  grid-template-rows: 24px;
  margin-left: auto;
  margin-right: 0;
  margin-top: 6px;
  width: 306px;
}

.initial-cf-total-box .stock-total-title {
  grid-row: 1;
}

.initial-cf-total-box input {
  grid-column: 2;
}

body.opening-balance-module {
  overflow: hidden;
}

body.opening-balance-module .app-footer {
  display: none;
}

.opening-balance-page {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  height: calc(100vh - 16px);
  margin-left: auto;
  margin-right: auto;
  max-width: 1240px;
  min-height: 0;
  width: calc(100vw - 40px);
}

.opening-balance-page .list-titlebar {
  flex: 0 0 auto;
}

.opening-balance-page form {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
}

.opening-balance-box {
  border: 1px solid #8a8f98;
  box-sizing: border-box;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  margin-top: 8px;
  min-height: 0;
  padding: 12px;
}

.opening-balance-filter-frame {
  flex: 0 0 auto;
  margin: 0 0 12px;
  padding: 8px 10px;
}

.opening-balance-filter-grid {
  align-items: center;
  display: grid;
  gap: 24px;
  grid-template-columns: 288px 300px 280px;
  justify-content: start;
}

.opening-balance-filter-grid .field {
  align-items: center;
  column-gap: 6px;
  display: grid;
  grid-template-columns: 150px 132px;
  margin: 0;
  min-height: 30px;
}

.opening-balance-filter-grid .field label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  box-sizing: border-box;
  color: #000;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 30px;
  line-height: 1;
  padding: 0 8px;
}

.opening-balance-filter-grid select,
.opening-balance-filter-grid .micronote-date-input {
  background: #ffffff;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  box-sizing: border-box;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 30px;
  min-height: 30px;
  padding: 3px 6px;
}

.opening-balance-year-field select {
  text-align: center;
  text-align-last: center;
}

.opening-balance-filter-grid .micronote-date-input[readonly] {
  background: #e8e8f6;
  padding-right: 6px !important;
  text-align: center;
}

.opening-balance-filter-actions {
  align-items: center;
  display: flex;
  gap: 8px;
}

.opening-balance-calculate-button,
.opening-balance-clear-button {
  height: 36px;
  min-height: 36px;
  width: 130px;
}

.opening-balance-panel {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
}

.opening-balance-grid-frame {
  background: #e8e8f6;
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}

.opening-balance-grid {
  min-width: 980px;
  width: 100%;
}

.opening-balance-grid th,
.opening-balance-grid td {
  height: 27px;
  line-height: 1.15;
}

.opening-balance-grid th:nth-child(1),
.opening-balance-grid td:nth-child(1),
.opening-balance-grid th:nth-child(3),
.opening-balance-grid td:nth-child(3) {
  text-align: center;
  width: 74px;
}

.opening-balance-grid th:nth-child(2),
.opening-balance-grid td:nth-child(2),
.opening-balance-grid th:nth-child(4),
.opening-balance-grid td:nth-child(4) {
  width: 280px;
}

.opening-balance-grid th:nth-child(5),
.opening-balance-grid td:nth-child(5),
.opening-balance-grid th:nth-child(6),
.opening-balance-grid td:nth-child(6) {
  text-align: right;
  width: 126px;
}

.opening-balance-grid input {
  background: #fffbe6;
  border: 0;
  box-sizing: border-box;
  font: inherit;
  font-weight: 520;
  height: 100%;
  padding: 0 6px;
  text-align: right;
  width: 100%;
}

.opening-balance-grid input:focus {
  background: #fff59d;
  outline: 1px dotted #333;
  outline-offset: -3px;
}

.opening-balance-totals {
  align-items: center;
  background: #e8e8f6;
  border-top: 1px solid #8a8f98;
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
  justify-content: flex-end;
  padding: 8px;
}

.opening-balance-total-box {
  box-sizing: border-box;
  grid-template-columns: 110px 116px;
  grid-template-rows: 24px;
  width: 234px;
}

.opening-balance-total-box input {
  grid-column: 2;
  height: 22px;
  min-height: 22px;
}

.main-menu > .menu-section[open] {
  grid-column: auto;
}

.stock-purchase-stats-page.stock-movements-page {
  display: grid;
  gap: 6px;
  grid-template-rows: auto auto minmax(0, 1fr) 124px;
  height: calc(100vh - 24px);
  max-width: none;
  overflow: hidden;
  padding-bottom: 8px;
  padding-top: 4px;
}

.stock-purchase-stats-page .purchase-stats-main-panel.stock-movements-panel,
.stock-purchase-stats-page .purchase-stats-detail-panel.stock-movements-panel {
  display: grid;
  grid-template-rows: 22px minmax(0, 1fr);
  min-height: 0;
}

.stock-purchase-stats-page .purchase-stats-main-panel.stock-movements-panel {
  height: auto;
}

.stock-purchase-stats-page .purchase-stats-detail-panel.stock-movements-panel {
  height: 124px;
}

.stock-purchase-stats-page .purchase-stats-grid-frame.stock-movements-grid-frame {
  height: auto;
  min-height: 0;
  padding-right: 18px;
  scrollbar-gutter: stable;
}

.stock-purchase-stats-page .module-header {
  margin-bottom: 6px;
  padding: 7px 10px;
}

.stock-purchase-stats-page .module-title-identity {
  gap: 10px;
  min-width: 0;
}

.stock-purchase-stats-page .module-title-logo {
  flex-basis: 38px;
  height: 36px;
}

.stock-purchase-stats-page .module-title-identity img {
  height: 36px;
  width: 38px;
}

.stock-purchase-stats-page .module-header h1 {
  font-size: 20px;
  line-height: 1.1;
}

.stock-purchase-stats-page .module-header p:last-child {
  font-size: 12px;
  margin-top: 2px;
}

.purchase-stats-actions {
  flex-wrap: nowrap;
}

.purchase-stats-actions .purchase-stats-records {
  margin-left: 0;
  margin-right: 2px;
}

.purchase-stats-actions .button,
.purchase-stats-actions button {
  max-width: none;
  min-width: 140px;
  width: 140px;
}

.stock-purchase-stats-page.supplier-form-page.data-form-skin .top-actions.purchase-stats-actions .button,
.stock-purchase-stats-page.supplier-form-page.data-form-skin .top-actions.purchase-stats-actions button {
  max-width: none;
  min-width: 140px;
  width: 140px;
}

.stock-purchase-stats-page .purchase-stats-records {
  margin-left: 0;
  margin-right: 2px;
}

.stock-purchase-stats-page .stock-purchase-stats-filters .form-frame,
.stock-purchase-stats-page .purchase-stats-main-panel.stock-movements-panel,
.stock-purchase-stats-page .purchase-stats-detail-panel.stock-movements-panel {
  border-radius: 8px;
  overflow: hidden;
}

.stock-purchase-stats-page .stock-purchase-stats-filters .form-frame {
  border: 1px solid #8799ad;
}

.stock-purchase-stats-page .purchase-stats-grid-frame.stock-movements-grid-frame,
.stock-purchase-stats-page .purchase-stats-detail-frame {
  border-radius: 0 0 8px 8px;
}

.stock-purchase-stats-page .purchase-stats-col-article {
  width: 150px;
}

.stock-purchase-stats-page .purchase-stats-col-description {
  width: 290px;
}

.stock-purchase-stats-page .purchase-stats-col-unit {
  width: 70px;
}

.stock-purchase-stats-page .purchase-stats-col-metric {
  width: 98px;
}


.stock-purchase-stats-page .purchase-stats-col-date {
  width: 100px;
}

.stock-purchase-stats-page .purchase-stats-col-share {
  width: 90px;
}

.stock-purchase-stats-page .purchase-stats-grid th:nth-child(2),
.stock-purchase-stats-page .purchase-stats-grid td:nth-child(2) {
  text-align: left;
  width: 290px;
}

.stock-purchase-stats-page .purchase-stats-grid th:nth-child(1),
.stock-purchase-stats-page .purchase-stats-grid td:nth-child(1) {
  text-align: left;
}

.stock-purchase-stats-page .purchase-stats-detail-col-code {
  width: 100px;
}

.stock-purchase-stats-page .purchase-stats-detail-col-name {
  width: 320px;
}

.stock-purchase-stats-page .purchase-stats-detail-col-number {
  width: 100px;
}

.stock-purchase-stats-page .purchase-stats-detail-col-date {
  width: 120px;
}

.stock-purchase-stats-page .purchase-stats-detail-grid th:nth-child(1),
.stock-purchase-stats-page .purchase-stats-detail-grid td:nth-child(1) {
  width: 100px !important;
}

.stock-purchase-stats-page .purchase-stats-detail-grid th:nth-child(2),
.stock-purchase-stats-page .purchase-stats-detail-grid td:nth-child(2) {
  width: 320px !important;
}

.stock-purchase-stats-page .purchase-stats-detail-grid th:nth-child(n+3):nth-child(-n+6),
.stock-purchase-stats-page .purchase-stats-detail-grid td:nth-child(n+3):nth-child(-n+6) {
  width: 100px !important;
}

.stock-purchase-stats-page .purchase-stats-detail-grid th:nth-child(7),
.stock-purchase-stats-page .purchase-stats-detail-grid td:nth-child(7) {
  width: 120px !important;
}

.group-purchase-stats-module .page-container {
  max-width: none;
  overflow: hidden;
  padding: 0 12px 10px;
}

body.group-purchase-stats-module {
  overflow: hidden;
}

body.group-purchase-stats-module .app-footer {
  display: none;
}

.group-purchase-stats-page.stock-movements-page {
  display: grid;
  gap: 8px;
  grid-template-rows: auto auto minmax(0, 1fr) 242px;
  height: calc(100vh - 14px);
  max-width: none;
  min-height: 0;
  overflow: hidden;
  padding-top: 10px;
}

.group-purchase-stats-page.module-page > .module-header {
  margin-bottom: 2px;
  padding: 5px 10px;
}

.group-purchase-stats-page .module-title-identity {
  gap: 10px;
  min-width: 0;
}

.group-purchase-stats-page .module-title-logo,
.group-purchase-stats-page .module-title-identity img {
  height: 36px;
  width: 38px;
}

.group-purchase-stats-page .module-title-logo {
  flex-basis: 38px;
}

.group-purchase-stats-page .module-header h1 {
  font-size: 20px;
  line-height: 1.1;
}

.group-purchase-stats-page .module-header p:last-child {
  font-size: 12px;
  margin-top: 2px;
}

.group-purchase-actions {
  flex-wrap: nowrap;
}

.group-purchase-stats-page.supplier-form-page.data-form-skin .top-actions.group-purchase-actions button {
  max-width: none;
  min-width: 140px;
  width: 140px;
}

.group-purchase-records {
  margin-left: 0;
  margin-right: 4px;
}

.group-purchase-filters {
  margin: 0;
}

.group-purchase-filters .form-frame {
  background: #f7f9fc;
  border: 1px solid #8799ad;
  border-radius: 8px;
  margin: 0;
  padding: 8px 14px 10px;
}

.group-purchase-filter-row {
  align-items: center;
  display: grid;
  gap: 18px;
  grid-template-columns: 245px 245px 310px;
}

.group-purchase-filter-row .field {
  align-items: center;
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
}

.group-purchase-grouping-field {
  grid-template-columns: 132px minmax(0, 1fr) !important;
}

.group-purchase-filter-row select {
  height: 26px;
}

.group-purchase-main-panel,
.group-purchase-detail-panel {
  border: 1px solid #8799ad;
  border-radius: 8px;
  display: grid;
  grid-template-rows: 22px minmax(0, 1fr);
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

.group-purchase-main-panel h2,
.group-purchase-detail-panel h2 {
  background: #b8cbe0;
  color: #061d45;
  font-size: 13px;
  font-weight: 520;
  line-height: 22px;
  margin: 0;
  padding: 0 8px;
}

.group-purchase-main-frame,
.group-purchase-detail-frame {
  border: 0;
  border-radius: 0 0 8px 8px;
  height: auto;
  min-height: 0;
  overflow: auto;
  scrollbar-gutter: stable;
}

.group-purchase-main-grid {
  min-width: max-content;
  table-layout: fixed;
  width: max-content;
}

.group-purchase-main-grid th,
.group-purchase-main-grid td,
.group-purchase-article-grid th,
.group-purchase-article-grid td,
.group-purchase-supplier-grid th,
.group-purchase-supplier-grid td {
  font-size: 13px;
  height: 25px;
  padding: 3px 6px;
}

.group-purchase-col-code {
  width: 80px;
}

.group-purchase-col-description {
  width: 220px;
}

.group-purchase-col-amount,
.group-purchase-col-store-amount {
  width: 110px;
}

.group-purchase-col-share {
  width: 82px;
}

.group-purchase-main-grid th:nth-child(n+3),
.group-purchase-main-grid td:nth-child(n+3),
.group-purchase-article-grid th:last-child,
.group-purchase-article-grid td:last-child,
.group-purchase-supplier-grid th:last-child,
.group-purchase-supplier-grid td:last-child {
  text-align: right;
}

.group-purchase-main-grid tbody tr[data-group-purchase-row] {
  cursor: pointer;
  outline: none;
}

.group-purchase-main-grid tbody tr[data-group-purchase-row] td:nth-child(-n+2),
.group-purchase-article-grid tbody td:nth-child(-n+2),
.group-purchase-supplier-grid tbody td:nth-child(-n+2) {
  background: #ffffb3;
}

.group-purchase-main-grid .group-purchase-revenue-row td {
  background: #ffffb3;
  font-weight: 650;
}

.group-purchase-main-grid .group-purchase-separator td {
  background: #ffffff;
  border: 0;
  height: 4px;
  padding: 0;
}

.group-purchase-main-grid tbody tr.selected-row td {
  background: #b8d2ee;
}

.group-purchase-main-grid tbody tr.selected-row td:first-child {
  box-shadow: inset 4px 0 0 #2f6faa;
}

.group-purchase-detail-layout {
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr 1fr;
  min-height: 0;
}

.group-purchase-article-grid,
.group-purchase-supplier-grid {
  table-layout: fixed;
}

.group-purchase-article-grid {
  max-width: 710px;
  min-width: 710px;
  width: 710px;
}

.group-purchase-supplier-grid {
  max-width: 620px;
  min-width: 620px;
  width: 620px;
}

.group-purchase-article-grid th:first-child,
.group-purchase-article-grid td:first-child {
  width: 180px;
}

.group-purchase-article-grid th:nth-child(2),
.group-purchase-article-grid td:nth-child(2) {
  width: 420px;
}

.group-purchase-supplier-grid th:nth-child(2),
.group-purchase-supplier-grid td:nth-child(2) {
  width: 420px;
}

.group-purchase-article-grid th:last-child,
.group-purchase-article-grid td:last-child,
.group-purchase-supplier-grid th:last-child,
.group-purchase-supplier-grid td:last-child {
  width: 110px;
}

.group-purchase-supplier-grid th:first-child,
.group-purchase-supplier-grid td:first-child {
  text-align: center;
  width: 90px;
}

.store-movement-summary-module .page-container {
  max-width: none;
  overflow: hidden;
  padding: 0 12px 12px;
}

body.store-movement-summary-module {
  overflow: hidden;
}

body.store-movement-summary-module .app-footer {
  display: none;
}

.store-movement-summary-page.stock-movements-page {
  display: flex;
  flex-direction: column;
  gap: 4px;
  height: calc(100vh - 12px);
  max-width: none;
  min-height: 0;
}

.store-movement-summary-page .module-header {
  margin-bottom: 11px;
  padding: 5px 10px;
}

.store-movement-summary-page .module-title-identity {
  gap: 10px;
  min-width: 0;
}

.store-movement-summary-page .module-title-logo {
  flex-basis: 36px;
  height: 36px;
}

.store-movement-summary-page .module-title-identity img {
  height: 36px;
  width: 36px;
}

.store-movement-summary-page .module-header h1 {
  font-size: 20px;
  line-height: 1.1;
}

.store-movement-summary-page .module-header p:last-child {
  font-size: 12px;
  margin-top: 2px;
}

.store-summary-actions {
  flex-wrap: nowrap;
}

.store-movement-summary-page.supplier-form-page.data-form-skin .top-actions.store-summary-actions .button,
.store-movement-summary-page.supplier-form-page.data-form-skin .top-actions.store-summary-actions button {
  flex: 0 0 auto;
  max-width: none;
  min-width: 160px;
  width: 130px;
}

.store-movement-summary-page.supplier-form-page.data-form-skin .top-actions.store-summary-actions .store-summary-print-button {
  min-width: 160px;
  width: 160px;
  white-space: nowrap;
}

.store-movement-summary-page.supplier-form-page.data-form-skin .top-actions.store-summary-actions [data-store-summary-action="account"] {
  min-width: 160px;
  width: 160px;
  white-space: nowrap;
}

.store-summary-actions .store-summary-records {
  margin-left: 0;
  margin-right: 4px;
}

.store-summary-filters {
  border-radius: 8px;
  margin-bottom: 0;
  overflow: hidden;
}

.store-summary-filters .form-frame,
.store-summary-panel.stock-movements-panel {
  border: 1px solid #8799ad;
  border-radius: 8px;
  overflow: hidden;
}

.store-summary-filters fieldset.form-frame {
  appearance: none;
  border-radius: 8px !important;
}

.store-summary-filter-row {
  align-items: center;
  display: grid;
  grid-template-columns: 252px 1fr;
  min-height: 36px;
}

.store-summary-filter-row .field {
  align-items: center;
  display: grid;
  grid-template-columns: 110px 140px;
}

.store-summary-filter-row label,
.store-summary-filter-row select {
  font-size: 13px;
  font-weight: 520;
}

.store-summary-filter-row select {
  text-align: center;
}

.store-summary-panel.stock-movements-panel {
  display: grid;
  grid-template-rows: 22px minmax(0, 1fr);
  min-height: 0;
  min-width: 0;
}

.store-summary-revenue-panel.stock-movements-panel {
  flex: 0 0 230px;
}

.store-summary-cost-panel.stock-movements-panel {
  flex: 1 1 auto;
}

.store-summary-panel h2 {
  background: #b8cbe0;
  color: #061d45;
  font-size: 13px;
  font-weight: 520;
  line-height: 22px;
  margin: 0;
  padding: 0 8px;
}

.store-summary-grid-frame.stock-movements-grid-frame {
  border: 0;
  border-radius: 0 0 8px 8px;
  height: auto;
  min-height: 0;
  overflow: auto;
  padding-right: 18px;
}

.store-summary-grid {
  table-layout: fixed;
}

.store-summary-grid th {
  height: 24px;
}

.store-summary-grid td {
  height: 22px;
}

.store-summary-col-account {
  width: 42px;
}

.store-summary-col-description {
  width: 200px;
}

.store-summary-col-money {
  width: 110px;
}

.store-summary-col-percent {
  width: 72px;
}

.store-summary-col-gap {
  width: 4px;
}

.store-summary-grid th:nth-child(1),
.store-summary-grid td:nth-child(1) {
  text-align: center;
}

.store-summary-grid th:nth-child(2),
.store-summary-grid td:nth-child(2) {
  text-align: left;
}

.store-summary-grid th:nth-child(n+3),
.store-summary-grid td:nth-child(n+3) {
  text-align: right;
}

.store-summary-grid td:nth-child(1),
.store-summary-grid td:nth-child(2) {
  background: #ffffb3;
}

.store-summary-grid .store-summary-total-row td {
  background: #ffffb3;
  font-weight: 650;
}

.store-summary-grid tbody tr.selected td,
.store-summary-grid tbody tr.selected-row td {
  background: #b8d2ee;
}

.store-summary-grid tbody tr.selected td:first-child,
.store-summary-grid tbody tr.selected-row td:first-child {
  box-shadow: inset 4px 0 0 #2f6faa;
}

.store-summary-grid tbody tr.store-summary-separator {
  height: 4px;
}

.store-summary-grid .store-summary-separator td {
  background: #ffffff;
  border-bottom: 0;
  border-top: 0;
  height: 4px;
  line-height: 4px;
  padding: 0;
}

.accounting-statement-module .page-container {
  max-width: none;
  overflow: hidden;
  padding: 8px 12px 12px;
}

body.accounting-statement-module {
  overflow: hidden;
}

body.accounting-statement-module .app-footer {
  display: none;
}

.accounting-statement-page.stock-movements-page {
  display: flex;
  flex-direction: column;
  gap: 4px;
  height: calc(100vh - 20px);
  max-width: none;
  min-height: 0;
  padding-top: 2px;
}

.accounting-statement-page .module-header {
  flex: 0 0 auto;
  margin-bottom: 2px;
  padding: 5px 10px;
}

.accounting-statement-page .module-title-logo {
  flex: 0 0 72px;
  height: 40px;
  width: 72px;
}

.accounting-statement-page .module-title-identity img {
  height: 40px;
  object-fit: contain;
  width: 72px;
}

.accounting-statement-page .module-header h1 {
  font-size: 20px;
  line-height: 1.1;
}

.accounting-statement-page .module-header p:last-child {
  font-size: 12px;
  margin-top: 2px;
  white-space: nowrap;
}

.accounting-statement-page .module-title-identity > div {
  min-width: 260px;
}

.accounting-statement-actions {
  flex-wrap: nowrap;
}

.accounting-statement-actions .button {
  min-width: 150px;
  width: 150px;
}

.accounting-statement-page.supplier-form-page.data-form-skin .top-actions.accounting-statement-actions .button,
.accounting-statement-page.supplier-form-page.data-form-skin .top-actions.accounting-statement-actions button {
  min-width: 150px;
  width: 150px;
}

.accounting-statement-actions .button[data-accounting-statement-action="article"] {
  min-width: 180px;
  width: 180px;
}

.accounting-statement-page.supplier-form-page.data-form-skin .top-actions.accounting-statement-actions .button[data-accounting-statement-action="article"],
.accounting-statement-page.supplier-form-page.data-form-skin .top-actions.accounting-statement-actions button[data-accounting-statement-action="article"] {
  min-width: 180px;
  width: 180px;
}

.accounting-statement-records {
  margin-right: 4px;
}

.accounting-statement-filters {
  border-radius: 8px;
  flex: 0 0 auto;
  margin-bottom: 0;
  margin-top: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
}

.accounting-statement-filters .form-frame,
.accounting-statement-panel.stock-movements-panel {
  border: 1px solid #8799ad;
  border-radius: 8px;
  overflow: hidden;
}

.accounting-statement-filters fieldset.form-frame {
  appearance: none;
  border-radius: 8px !important;
}

.accounting-statement-filter-row {
  align-items: center;
  display: grid;
  gap: 14px;
  grid-template-columns: 486px 230px 230px 100px;
  min-height: 42px;
}

.customer-supplier-filter-row {
  grid-template-columns: 570px 230px 230px 100px;
}

.accounting-statement-filter-row .field {
  align-items: center;
  display: grid;
  gap: 6px;
}

.accounting-statement-account-field {
  display: flex !important;
  flex-wrap: nowrap;
  gap: 6px;
  min-width: 0;
}

.accounting-statement-account-field label {
  flex: 0 0 90px;
}

.accounting-statement-account-field input[data-statement-account-code] {
  flex: 0 0 74px;
  text-align: center;
  width: 74px;
}

.accounting-statement-account-field input[data-statement-account-description] {
  flex: 0 0 310px;
  min-width: 0;
  width: 310px;
}

.customer-supplier-party-field label {
  flex-basis: 76px;
}

.customer-supplier-party-field input[data-statement-party-type-display] {
  flex: 0 0 42px;
  text-align: center;
  width: 42px;
}

.customer-supplier-party-field input[data-statement-account-code] {
  flex-basis: 74px;
  width: 74px;
}

.customer-supplier-party-field input[data-statement-account-description] {
  flex: 0 0 360px;
  width: 360px;
}

.accounting-statement-date-field {
  grid-template-columns: 92px 130px;
}

.accounting-statement-filter-row label,
.accounting-statement-filter-row input {
  font-size: 13px;
  font-weight: 520;
}

.accounting-statement-panel.stock-movements-panel {
  display: grid;
  flex: 1 1 auto;
  grid-template-rows: minmax(0, 1fr);
  margin-top: 2px;
  min-height: 0;
  position: relative;
  z-index: 1;
}

.accounting-statement-grid-frame.stock-movements-grid-frame {
  border: 0;
  border-radius: 8px 8px 0 0;
  height: auto;
  min-height: 0;
  overflow: auto;
  padding-right: 18px;
}

.accounting-statement-grid {
  table-layout: fixed;
  min-width: 1410px;
}

.accounting-statement-grid th {
  height: 24px;
}

.accounting-statement-grid td {
  height: 27px;
}

.accounting-statement-grid tbody::after {
  content: "";
  display: table-row;
  height: 36px;
}

.accounting-statement-grid th:nth-child(1),
.accounting-statement-grid td:nth-child(1) {
  width: 100px;
}

.accounting-statement-grid th:nth-child(2),
.accounting-statement-grid td:nth-child(2) {
  width: 110px;
}

.accounting-statement-grid th:nth-child(3),
.accounting-statement-grid td:nth-child(3) {
  width: 140px;
}

.accounting-statement-grid th:nth-child(4),
.accounting-statement-grid td:nth-child(4),
.accounting-statement-grid th:nth-child(6),
.accounting-statement-grid td:nth-child(6) {
  text-align: center;
  width: 80px;
}

.accounting-statement-grid th:nth-child(5),
.accounting-statement-grid td:nth-child(5) {
  text-align: left;
  width: 200px;
}

.accounting-statement-grid th:nth-child(7),
.accounting-statement-grid td:nth-child(7) {
  text-align: left;
  width: 300px;
}

.accounting-statement-grid th:nth-child(8),
.accounting-statement-grid td:nth-child(8),
.accounting-statement-grid th:nth-child(9),
.accounting-statement-grid td:nth-child(9),
.accounting-statement-grid th:nth-child(10),
.accounting-statement-grid td:nth-child(10) {
  text-align: right;
  width: 110px;
}

.accounting-statement-grid th:nth-child(11),
.accounting-statement-grid td:nth-child(11) {
  text-align: center;
  width: 70px;
}

.accounting-statement-total-row {
  background: #c7d7e8;
  position: sticky;
  bottom: 0;
  z-index: 3;
}

.accounting-statement-total-row td {
  border-bottom: 1px solid #7f92a8;
  border-top: 1px solid #8da3ba;
  height: 36px;
  padding: 4px 0;
}

.accounting-statement-total-row input {
  font-size: 16px;
  font-weight: 520;
  height: 30px;
}

.accounting-statement-total-row input {
  background: #eeeeff;
  border: 1px solid #8a8f98;
  box-sizing: border-box;
  text-align: right;
  transform: translateX(-6px);
  width: 100%;
}

.accounting-statement-total-row td:last-child input {
  text-align: center;
}

.accounting-statement-total-label {
  font-size: 16px;
  font-weight: 520;
  padding-right: 10px;
  text-align: right !important;
}

.accounting-statement-choice,
.accounting-statement-account-lookup {
  align-items: center;
  background: rgba(10, 18, 30, 0.18);
  bottom: 0;
  display: flex;
  justify-content: center;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1000;
}

.accounting-statement-choice[hidden],
.accounting-statement-account-lookup[hidden] {
  display: none;
}

.accounting-statement-choice-dialog,
.accounting-statement-account-lookup-dialog {
  background: #ffffff;
  border: 1px solid #6f7784;
  box-shadow: 0 16px 35px rgba(25, 35, 55, 0.25);
  padding: 16px;
}

.accounting-statement-choice-dialog {
  width: 680px;
}

.customer-supplier-choice-dialog {
  width: 770px;
}

.accounting-statement-choice-frame {
  background: #eeeeff;
  border: 1px solid #8a8f98;
  display: grid;
  gap: 12px;
  margin-top: 14px;
  padding: 24px 20px;
}

.customer-supplier-choice-frame {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 16px 12px;
  --party-choice-label-width: 120px;
}

.accounting-statement-choice-frame .field:not(.customer-supplier-choice-code):not(.customer-supplier-choice-wide):not(.customer-supplier-choice-city):not(.customer-supplier-choice-tax):not(.customer-supplier-choice-dates) {
  align-items: center;
  display: grid;
  gap: 6px;
}

.accounting-statement-choice-frame .statement-choice-account {
  align-items: center;
  display: grid;
  grid-template-columns: 90px 94px minmax(0, 1fr) 28px;
}

.accounting-statement-choice-frame .customer-supplier-choice-code {
  align-items: center;
  display: flex;
  gap: 6px;
  width: 100%;
}

.customer-supplier-choice-code [data-choice-party-type="C"] {
  margin-left: auto;
}

.customer-supplier-choice-code [data-choice-party-type="F"] {
  margin-left: 4px;
}

.customer-supplier-choice-code > label {
  flex: 0 0 var(--party-choice-label-width);
  justify-self: stretch;
  width: var(--party-choice-label-width);
}

.customer-supplier-choice-code input[data-choice-account-code] {
  flex: 0 0 100px;
  width: 100px;
}

.customer-supplier-choice-wide {
  align-items: center;
  display: flex;
  gap: 6px;
  width: 100%;
}

.customer-supplier-choice-wide > label {
  flex: 0 0 var(--party-choice-label-width);
  width: var(--party-choice-label-width);
}

.customer-supplier-choice-wide > input {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
}

.customer-supplier-choice-city {
  align-items: center;
  display: flex;
  gap: 6px;
  width: 100%;
}

.customer-supplier-choice-city > label {
  flex: 0 0 var(--party-choice-label-width);
  width: var(--party-choice-label-width);
}

.customer-supplier-choice-city input[data-choice-party-city] {
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
}

.customer-supplier-choice-city input[data-choice-party-province] {
  flex: 0 0 90px;
  margin-left: 14px;
  min-width: 0;
  width: 90px;
}

.customer-supplier-choice-tax {
  align-items: center;
  display: flex !important;
  gap: 6px;
  width: 100%;
}

.customer-supplier-choice-tax-code-label {
  flex: 0 0 var(--party-choice-label-width) !important;
  flex-shrink: 0;
  white-space: nowrap;
  width: var(--party-choice-label-width) !important;
}

.customer-supplier-choice-tax-code-input {
  flex: 0 0 250px;
  min-width: 0;
  width: 250px;
}

.customer-supplier-choice-vat-label {
  flex: 0 0 var(--party-choice-label-width);
  margin-left: 14px;
  width: var(--party-choice-label-width);
}

.customer-supplier-choice-vat-input {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
}

.accounting-statement-choice-frame .statement-choice-date {
  grid-template-columns: 90px 140px;
}

.customer-supplier-choice-dates {
  align-items: center;
  display: flex;
  gap: 0;
  width: 100%;
}

.customer-supplier-choice-dates .micronote-date-control {
  flex: 0 0 150px;
  width: 150px;
}

.customer-supplier-choice-dates .customer-supplier-choice-date-to-label {
  margin-left: auto;
}

.customer-supplier-choice-dates .customer-supplier-choice-date-to-control {
  margin-left: 6px;
}

.customer-supplier-choice-dates > label {
  flex: 0 0 var(--party-choice-label-width);
  justify-self: stretch;
  width: var(--party-choice-label-width);
}

.accounting-statement-choice-frame label,
.accounting-statement-account-lookup-footer label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  box-sizing: border-box;
  display: flex;
  font-size: 13px;
  font-weight: 520;
  height: 27px;
  min-height: 27px;
  padding: 0 8px;
}

.accounting-statement-choice-frame input,
.accounting-statement-account-lookup-footer input,
.accounting-statement-account-lookup-footer select {
  border: 1px solid #8a8f98;
  box-sizing: border-box;
  font-size: 13px;
  font-weight: 520;
  height: 27px;
}

.customer-supplier-choice-frame input[readonly] {
  background: rgb(230, 230, 240);
  color: #000000 !important;
  opacity: 1;
}

.customer-supplier-choice-code .button {
  height: 28px;
  min-height: 28px;
  width: 86px;
}

.customer-supplier-choice-code .button.is-selected {
  background: #ff8b58;
  border-color: #ce5c2d;
  color: #000000;
}

.statement-choice-account input[data-choice-account-code] {
  text-align: center;
}

.statement-choice-account .lookup-button {
  align-self: center;
  height: 30px;
  min-height: 30px;
  min-width: 28px;
  width: 28px;
}

.accounting-statement-choice-actions,
.accounting-statement-account-lookup-footer {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  margin-top: 8px;
}

.accounting-statement-account-lookup-dialog {
  width: 1110px;
}

.accounting-statement-account-lookup-body {
  display: grid;
  gap: 8px;
  grid-template-columns: 1fr 118px;
  margin-top: 12px;
}

.accounting-statement-account-grid-frame {
  height: 390px;
  overflow: auto;
}

.accounting-statement-account-grid {
  max-width: 914px;
  min-width: 914px;
  table-layout: fixed;
  width: 914px;
}

.accounting-statement-account-grid th,
.accounting-statement-account-grid td {
  height: 27px;
}

.accounting-statement-account-grid th:nth-child(1),
.accounting-statement-account-grid td:nth-child(1),
.accounting-statement-account-grid th:nth-child(3),
.accounting-statement-account-grid td:nth-child(3),
.accounting-statement-account-grid th:nth-child(5),
.accounting-statement-account-grid td:nth-child(5) {
  text-align: center;
  width: 90px;
}

.accounting-statement-account-grid th:nth-child(2),
.accounting-statement-account-grid td:nth-child(2),
.accounting-statement-account-grid th:nth-child(4),
.accounting-statement-account-grid td:nth-child(4) {
  width: 332px;
}

.accounting-statement-account-type-buttons {
  display: grid;
  gap: 7px;
  grid-auto-rows: 34px;
  align-content: start;
}

.accounting-statement-account-type-buttons button {
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 520;
  width: 118px;
}

.accounting-statement-account-type-buttons button.is-selected {
  background: #4f66a6;
  border-color: #34508f;
  color: #ffffff;
}

.accounting-statement-account-type-buttons button:focus-visible {
  outline: 2px solid #1f6fff;
  outline-offset: 1px;
}

.accounting-statement-account-lookup-footer {
  align-items: center;
  justify-content: flex-start;
}

.accounting-statement-account-lookup-footer select {
  width: 260px;
}

.accounting-statement-account-lookup-footer input {
  width: 220px;
}

.accounting-statement-account-lookup-footer button {
  width: 118px;
}

.accounting-statement-lookup-records {
  margin-left: auto;
}

/* Caricamento FE acquisti */
.electronic-invoice-upload-module .page-container {
  max-width: none;
}

.electronic-invoice-upload-module .app-footer {
  display: none;
}

.electronic-invoice-upload-page {
  display: flex;
  gap: 10px;
  padding-top: 10px;
}

.electronic-invoice-upload-page .list-titlebar {
  box-sizing: border-box;
  height: 66px;
  margin-bottom: 0;
  margin-top: 0;
  min-height: 66px;
  padding-bottom: 6px;
  padding-top: 6px;
}

.electronic-invoice-upload-page .list-title-identity img {
  border-radius: 0;
  height: 50px;
  object-fit: contain;
  width: auto;
}

.electronic-invoice-upload-actions .list-title-button {
  min-width: 150px;
}

.electronic-invoice-upload-form {
  flex: 1 1 auto;
  min-height: 0;
}

.electronic-invoice-upload-toolbar {
  align-items: center;
  box-sizing: border-box;
  display: grid !important;
  flex-wrap: nowrap;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) 160px 140px 110px;
  height: 66px;
  margin: 0;
  padding-bottom: 6px;
  padding-top: 6px;
}

.electronic-invoice-upload-toolbar .list-title-button {
  align-items: center;
  box-sizing: border-box;
  display: inline-flex;
  height: 34px;
  justify-content: center;
  min-width: 0;
  white-space: nowrap;
  width: 100%;
}

.electronic-invoice-upload-path-field {
  grid-template-columns: 190px minmax(0, 1fr);
  min-width: 0;
}

.electronic-invoice-upload-path-field label {
  border-radius: 6px;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 30px;
  min-height: 30px;
  white-space: nowrap;
}

.electronic-invoice-upload-path-field input {
  background: #e8e9f8;
  min-width: 0;
}

.electronic-invoice-upload-frame {
  display: grid;
  gap: 10px;
  grid-template-rows: auto 34px minmax(0, 1fr);
  min-height: 0;
  padding: 10px 12px;
}


.electronic-invoice-upload-progress {
  align-items: center;
  background: #d5e1ee;
  border: 1px solid #9aa8ba;
  border-radius: 6px;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) 230px;
  min-height: 34px;
  padding: 4px 8px;
}

.electronic-invoice-upload-progress[hidden] {
  display: none;
}

.electronic-invoice-upload-progress-bar {
  background: #e8e9f8;
  border: 1px solid #8a8f98;
  border-radius: 4px;
  height: 16px;
  overflow: hidden;
}

.electronic-invoice-upload-progress-bar span {
  background: #4f68ad;
  display: block;
  height: 100%;
  transition: width 120ms ease-out;
  width: 0%;
}

.electronic-invoice-upload-progress-text {
  color: #0f2236;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  overflow: hidden;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.electronic-invoice-upload-body {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) 320px;
  min-height: 0;
}

.electronic-invoice-upload-path-row {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: 130px minmax(360px, 1fr) 130px;
}

.electronic-invoice-upload-path-row label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #9aa8ba;
  border-radius: 6px;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 30px;
  padding: 0 10px;
}

.electronic-invoice-upload-path-row input {
  background: #e8e9f8;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 30px;
  padding: 0 10px;
}

.electronic-invoice-upload-summary {
  display: grid;
  gap: 8px;
  align-content: start;
  grid-template-columns: 1fr;
}

.electronic-invoice-upload-summary div {
  align-items: center;
  background: #d5e1ee;
  border: 1px solid #9aa8ba;
  border-radius: 6px;
  display: grid;
  grid-template-columns: 1fr 88px;
  min-height: 32px;
  padding: 0 8px;
}

.electronic-invoice-upload-summary span,
.electronic-invoice-upload-summary strong {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
}

.electronic-invoice-upload-summary strong {
  background: #e8e9f8;
  border: 1px solid #8a8f98;
  border-radius: 4px;
  padding: 3px 6px;
  text-align: right;
}

.electronic-invoice-upload-grid-frame {
  min-height: 0;
  overflow: auto;
}

.electronic-invoice-upload-grid {
  min-width: 1040px;
  table-layout: fixed;
}

.electronic-invoice-upload-grid th,
.electronic-invoice-upload-grid td {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  height: 27px;
}

.electronic-invoice-upload-grid th:nth-child(1) { width: 270px; }
.electronic-invoice-upload-grid th:nth-child(2) { width: 70px; }
.electronic-invoice-upload-grid th:nth-child(3) { width: 100px; }
.electronic-invoice-upload-grid th:nth-child(4) { width: 100px; }
.electronic-invoice-upload-grid th:nth-child(5) { width: 460px; }

.electronic-invoice-upload-grid td:nth-child(2),
.electronic-invoice-upload-grid td:nth-child(3),
.electronic-invoice-upload-grid td:nth-child(4) {
  text-align: center;
}

.electronic-invoice-upload-grid .empty-row td {
  color: #4c5a6b;
  text-align: center;
}

.electronic-invoice-upload-grid .fe-upload-uploaded td {
  background: #e8f5eb;
}

.electronic-invoice-upload-grid .fe-upload-existing td {
  background: #fff9d7;
}

.electronic-invoice-upload-grid .fe-upload-skipped td,
.electronic-invoice-upload-grid .fe-upload-error td {
  background: #fde7e5;
}



.bank-movements-module .page-container {
  height: calc(100vh - 20px);
  max-width: none;
  overflow: hidden;
  padding: 0 18px;
}

.bank-movements-module .page-container > main {
  height: 100%;
  min-height: 0;
}

body.bank-movements-module {
  overflow: hidden;
}

body.bank-movements-module .app-footer {
  display: none;
}

.bank-movements-page {
  display: grid;
  gap: 6px;
  grid-template-rows: auto auto minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  overflow: hidden;
  padding: 10px 0 6px;
}

.bank-movements-page .module-header {
  height: 66px;
  margin-bottom: 0;
  padding-bottom: 6px;
  padding-top: 6px;
}

.bank-movements-actions {
  flex-wrap: nowrap;
  gap: 8px;
}

.bank-movements-page.supplier-form-page.data-form-skin .top-actions.bank-movements-actions .button,
.bank-movements-page.supplier-form-page.data-form-skin .top-actions.bank-movements-actions button {
  flex: 0 0 auto;
  min-width: 138px;
  width: 138px;
}

.bank-movements-page.supplier-form-page.data-form-skin .top-actions.bank-movements-actions .bank-article-button,
.bank-movements-page.supplier-form-page.data-form-skin .top-actions.bank-movements-actions button.bank-article-button {
  min-width: 200px;
  width: 200px;
  white-space: nowrap;
}

.bank-movements-page [data-bank-delete-form] {
  display: none;
}

.bank-movements-actions .bank-movements-records {
  margin-left: 0;
  margin-right: 0;
}

body.accounting-movement-summary-module {
  overflow: hidden;
}

body.accounting-movement-summary-module .app-footer {
  display: none;
}

.accounting-movement-summary-module .page-container {
  max-width: none;
  overflow: hidden;
  padding: 2px 12px 8px;
}

.accounting-movement-summary-page {
  gap: 5px;
  height: calc(100vh - 12px);
}

.accounting-movement-summary-page .module-header {
  flex: 0 0 66px;
  height: 66px;
  margin-bottom: 3px;
  padding-bottom: 10px;
  padding-top: 2px;
}

.accounting-movement-summary-actions .button {
  min-width: 130px;
}

.accounting-movement-summary-layout {
  display: grid;
  flex: 1 1 auto;
  gap: 8px;
  grid-template-columns: minmax(420px, 1fr) minmax(420px, 1fr) 270px;
  grid-template-rows: minmax(190px, 0.72fr) minmax(260px, 1.28fr);
  min-height: 0;
}

.accounting-summary-panel.stock-movements-panel,
.accounting-summary-totals-panel {
  border: 1px solid #8799ad;
  border-radius: 8px;
  min-height: 0;
  overflow: hidden;
}

.accounting-summary-panel.stock-movements-panel {
  display: grid;
  grid-template-rows: 24px minmax(0, 1fr);
}

.accounting-summary-panel h2,
.accounting-summary-totals-panel h2 {
  background: #b8cbe0;
  color: #061d45;
  font-size: 13px;
  font-weight: 600;
  line-height: 24px;
  margin: 0;
  padding: 0 8px;
}

.accounting-summary-grid-frame {
  border: 0;
  border-radius: 0;
  overflow: auto;
}

.accounting-summary-grid {
  table-layout: fixed;
  width: 100%;
}

.accounting-summary-grid th,
.accounting-summary-grid td {
  font-size: 12px;
  height: 23px;
  padding: 3px 6px;
}

.accounting-summary-grid th:first-child,
.accounting-summary-grid td:first-child {
  text-align: center;
  width: 70px;
}

.accounting-summary-grid th:nth-child(2),
.accounting-summary-grid td:nth-child(2) {
  text-align: left;
}

.accounting-summary-grid th:nth-child(n+3),
.accounting-summary-grid td:nth-child(n+3) {
  text-align: right;
  width: 98px;
}

.accounting-summary-vat-grid th:last-child,
.accounting-summary-vat-grid td:last-child,
.accounting-summary-amount-grid th:last-child,
.accounting-summary-amount-grid td:last-child {
  width: 72px;
}

.accounting-summary-purchases .accounting-summary-grid {
  min-width: 635px;
  width: 635px;
}

.accounting-summary-purchases .accounting-summary-grid th:nth-child(1),
.accounting-summary-purchases .accounting-summary-grid td:nth-child(1) { width: 70px; }

.accounting-summary-purchases .accounting-summary-grid th:nth-child(2),
.accounting-summary-purchases .accounting-summary-grid td:nth-child(2) { width: 230px; }

.accounting-summary-purchases .accounting-summary-grid th:nth-child(3),
.accounting-summary-purchases .accounting-summary-grid td:nth-child(3),
.accounting-summary-purchases .accounting-summary-grid th:nth-child(4),
.accounting-summary-purchases .accounting-summary-grid td:nth-child(4),
.accounting-summary-purchases .accounting-summary-grid th:nth-child(5),
.accounting-summary-purchases .accounting-summary-grid td:nth-child(5) { width: 85px; }

.accounting-summary-purchases .accounting-summary-grid th:nth-child(6),
.accounting-summary-purchases .accounting-summary-grid td:nth-child(6) { width: 80px; }

.accounting-summary-revenues .accounting-summary-grid {
  min-width: 635px;
  width: 635px;
}

.accounting-summary-revenues .accounting-summary-grid th:nth-child(1),
.accounting-summary-revenues .accounting-summary-grid td:nth-child(1) { width: 70px; }

.accounting-summary-revenues .accounting-summary-grid th:nth-child(2),
.accounting-summary-revenues .accounting-summary-grid td:nth-child(2) { width: 230px; }

.accounting-summary-revenues .accounting-summary-grid th:nth-child(3),
.accounting-summary-revenues .accounting-summary-grid td:nth-child(3),
.accounting-summary-revenues .accounting-summary-grid th:nth-child(4),
.accounting-summary-revenues .accounting-summary-grid td:nth-child(4),
.accounting-summary-revenues .accounting-summary-grid th:nth-child(5),
.accounting-summary-revenues .accounting-summary-grid td:nth-child(5) { width: 85px; }

.accounting-summary-revenues .accounting-summary-grid th:nth-child(6),
.accounting-summary-revenues .accounting-summary-grid td:nth-child(6) { width: 80px; }

.accounting-summary-costs .accounting-summary-grid {
  min-width: 610px;
  width: 610px;
}

.accounting-summary-costs .accounting-summary-grid th:nth-child(1),
.accounting-summary-costs .accounting-summary-grid td:nth-child(1) { width: 70px; }

.accounting-summary-costs .accounting-summary-grid th:nth-child(2),
.accounting-summary-costs .accounting-summary-grid td:nth-child(2) { width: 340px; }

.accounting-summary-costs .accounting-summary-grid th:nth-child(3),
.accounting-summary-costs .accounting-summary-grid td:nth-child(3),
.accounting-summary-costs .accounting-summary-grid th:nth-child(4),
.accounting-summary-costs .accounting-summary-grid td:nth-child(4) { width: 100px; }

.accounting-summary-collections .accounting-summary-grid {
  min-width: 610px;
  width: 610px;
}

.accounting-summary-collections .accounting-summary-grid th:nth-child(1),
.accounting-summary-collections .accounting-summary-grid td:nth-child(1) { width: 70px; }

.accounting-summary-collections .accounting-summary-grid th:nth-child(2),
.accounting-summary-collections .accounting-summary-grid td:nth-child(2) { width: 340px; }

.accounting-summary-collections .accounting-summary-grid th:nth-child(3),
.accounting-summary-collections .accounting-summary-grid td:nth-child(3),
.accounting-summary-collections .accounting-summary-grid th:nth-child(4),
.accounting-summary-collections .accounting-summary-grid td:nth-child(4) { width: 100px; }

.accounting-summary-total-row td {
  background: #ffffb3;
  font-weight: 700;
}

.accounting-summary-totals-panel {
  align-self: stretch;
  background: #f7f9fc;
  grid-column: 3;
  grid-row: 1;
}

.accounting-summary-totals-panel div {
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) 112px;
  margin: 7px 10px;
}

.accounting-summary-totals-panel span,
.accounting-summary-totals-panel strong {
  border: 1px solid #8799ad;
  min-height: 28px;
  padding: 5px 7px;
}

.accounting-summary-totals-panel span {
  background: #d5e1ee;
}

.accounting-summary-totals-panel strong {
  background: #ffffff;
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.accounting-summary-costs { grid-column: 1; grid-row: 2; }
.accounting-summary-collections { grid-column: 2; grid-row: 2; }

@media (max-width: 1250px) {
  body.accounting-movement-summary-module { overflow: auto; }
  .accounting-movement-summary-module .page-container { overflow: visible; }
  .accounting-movement-summary-page { height: auto; min-height: calc(100vh - 74px); }
  .accounting-movement-summary-layout {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 250px 220px 360px;
  }
  .accounting-summary-totals-panel { grid-column: 1 / -1; grid-row: 2; }
  .accounting-summary-costs { grid-column: 1; grid-row: 3; }
  .accounting-summary-collections { grid-column: 2; grid-row: 3; }
}

body.customer-supplier-balances-module {
  overflow: hidden;
}

body.customer-supplier-balances-module .app-footer {
  display: none;
}

.customer-supplier-balances-module .page-container {
  max-width: none;
  overflow: hidden;
  padding: 2px 12px 8px;
}

.customer-supplier-balances-page {
  gap: 5px;
  height: calc(100vh - 12px);
  max-width: none;
}

.customer-supplier-balances-page .module-header {
  flex: 0 0 66px;
  height: 66px;
  margin-bottom: 3px;
  padding: 5px 10px;
}

.customer-supplier-balances-actions {
  flex-wrap: nowrap;
}

.customer-supplier-balances-actions .list-records-box {
  justify-content: space-between;
  margin: 0;
  min-width: 145px;
}

.customer-supplier-balances-page.supplier-form-page.data-form-skin .top-actions.customer-supplier-balances-actions .button,
.customer-supplier-balances-page.supplier-form-page.data-form-skin .top-actions.customer-supplier-balances-actions button {
  min-width: 155px;
  width: 155px;
}

.customer-supplier-balances-filters {
  margin: 0;
}

.customer-supplier-balances-filter-row {
  align-items: center;
  display: grid;
  gap: 28px;
  grid-template-columns: 300px 238px minmax(300px, 420px);
  min-height: 38px;
}

.customer-supplier-balances-filter-row .field {
  display: grid;
  grid-template-columns: 155px minmax(0, 1fr);
}

.customer-supplier-zero-filter {
  align-items: center;
  display: grid;
  grid-template-columns: 160px 68px;
  gap: 10px;
  margin: 0;
  min-height: 30px;
  white-space: nowrap;
}

.customer-supplier-zero-filter > label:first-child {
  margin: 0;
  overflow: visible;
  white-space: nowrap;
}

.customer-supplier-balances-layout {
  display: grid;
  flex: 1 1 auto;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  min-height: 0;
}

.customer-supplier-balances-panel {
  border: 1px solid #8799ad;
  border-radius: 8px;
  display: grid;
  grid-template-rows: 24px minmax(0, 1fr);
  min-height: 0;
  overflow: hidden;
}

.customer-supplier-balances-panel h2 {
  background: #b8cbe0;
  color: #061d45;
  font-size: 13px;
  font-weight: 600;
  line-height: 24px;
  margin: 0;
  padding: 0 8px;
}

.customer-supplier-balances-grid-frame {
  border: 0;
  border-radius: 0;
  overflow: auto;
}

.customer-supplier-balances-grid {
  min-width: 770px;
  table-layout: fixed;
  user-select: none;
  width: 770px;
}

.customer-supplier-balances-grid th,
.customer-supplier-balances-grid td {
  font-size: 12px;
  height: 23px;
  padding: 3px 6px;
}

.customer-supplier-balances-grid th:nth-child(1),
.customer-supplier-balances-grid td:nth-child(1) {
  text-align: center;
  width: 70px;
}

.customer-supplier-balances-grid th:nth-child(2),
.customer-supplier-balances-grid td:nth-child(2) {
  text-align: left;
  width: 330px;
}

.customer-supplier-balances-grid th:nth-child(n+3),
.customer-supplier-balances-grid td:nth-child(n+3) {
  text-align: right;
  width: 90px;
}

.customer-supplier-balances-grid tbody tr.selected td,
.customer-supplier-balances-grid tbody tr.selected-row td {
  background: #b8d2ee;
}

.customer-supplier-balances-grid tbody tr.selected td:first-child,
.customer-supplier-balances-grid tbody tr.selected-row td:first-child {
  box-shadow: inset 4px 0 0 #2f6faa;
}

.customer-supplier-balances-grid tfoot {
  bottom: 0;
  position: sticky;
  z-index: 2;
}

.customer-supplier-balances-grid tfoot td {
  background: #91bce8;
  border-top: 2px solid #ffffff;
  font-weight: 700;
}

@media (max-width: 1100px) {
  body.customer-supplier-balances-module { overflow: auto; }
  .customer-supplier-balances-page { height: auto; min-height: calc(100vh - 12px); }
  .customer-supplier-balances-layout { grid-template-columns: 1fr; grid-template-rows: 420px 420px; }
}

.bank-movements-filter-row .bank-movements-total {
  justify-self: end;
  gap: 10px;
  margin-left: 0;
  margin-right: 0;
  min-width: 150px;
}

.bank-movements-total strong {
  font-variant-numeric: tabular-nums;
}

.bank-movements-filter-row {
  align-items: center;
  display: grid;
  gap: 18px;
  grid-template-columns: 168px 210px minmax(260px, 380px) minmax(260px, 380px) minmax(150px, 1fr);
}

.bank-movements-filter-row .field {
  grid-template-columns: 66px minmax(0, 1fr);
}

.bank-account-filter,
.bank-cause-filter {
  min-width: 0;
}

.bank-movements-grid-frame {
  background: #ffffff;
  border: 0;
  border-radius: 0;
  min-height: 0;
  overflow: auto;
  scrollbar-gutter: stable;
}

.bank-movements-grid {
  min-width: 1340px;
  table-layout: fixed;
  user-select: none;
}

.bank-movements-grid th,
.bank-movements-grid td {
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  height: 27px;
  padding: 4px 6px;
}

.bank-movements-grid td {
  box-sizing: border-box;
  font-weight: 520;
  line-height: 18px;
}

.bank-movements-grid th {
  font-weight: 400;
}

.bank-movements-grid tbody tr {
  height: 27px;
}

.bank-movements-grid th:nth-child(1),
.bank-movements-grid td:nth-child(1) {
  text-align: center;
  width: 80px;
}

.bank-movements-grid th:nth-child(2),
.bank-movements-grid td:nth-child(2) {
  text-align: center;
  width: 100px;
}

.bank-movements-grid th:nth-child(3),
.bank-movements-grid td:nth-child(3) {
  text-align: center;
  width: 110px;
}

.bank-movements-grid th:nth-child(4),
.bank-movements-grid td:nth-child(4) {
  text-align: center;
  width: 80px;
}

.bank-movements-grid th:nth-child(5),
.bank-movements-grid td:nth-child(5) {
  text-align: left;
  width: 280px;
}

.bank-movements-grid th:nth-child(6),
.bank-movements-grid td:nth-child(6) {
  text-align: center;
  width: 80px;
}

.bank-movements-grid th:nth-child(7),
.bank-movements-grid td:nth-child(7) {
  text-align: left;
  width: 300px;
}

.bank-movements-grid th:nth-child(8),
.bank-movements-grid td:nth-child(8) {
  text-align: right;
  width: 110px;
}

.bank-movements-grid th:nth-child(9),
.bank-movements-grid td:nth-child(9) {
  text-align: left;
  width: 200px;
}

.bank-movements-grid tbody tr.selected td,
.bank-movements-grid tbody tr.selected-row td {
  background: #bdd2e4;
}

.bank-movements-grid tbody tr.selected td:first-child,
.bank-movements-grid tbody tr.selected-row td:first-child {
  background: #9dbadd;
}










.accounting-article-modal {
  height: min(570px, calc(100vh - 34px));
  overflow: auto;
  width: min(1180px, calc(100vw - 24px));
}

.accounting-article-modal iframe {
  min-width: 1140px;
}

.accounting-article-detail-body {
  background: transparent;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  margin: 0;
  overflow: hidden;
}

.accounting-article-detail-page {
  background: #ffffff;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  border: 1px solid #666d78;
  box-sizing: border-box;
  display: grid;
  grid-template-rows: 24px minmax(0, 1fr) 48px;
  gap: 14px;
  height: 100vh;
  min-height: 0;
  padding: 14px 16px 10px;
}

.accounting-article-detail-title {
  align-items: center;
  background: #5b9bdd;
  color: #071f3f;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  padding: 0 22px;
}

.accounting-article-detail-panel {
  background: #e7e7f7;
  border: 1px solid #7f8794;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  min-height: 0;
  padding: 24px 20px 38px;
}

.accounting-article-detail-fields {
  align-items: center;
  display: grid;
  grid-template-columns: 128px 100px 70px 136px 72px 380px 82px 112px;
  gap: 12px 4px;
  margin-bottom: 22px;
}

.accounting-article-detail-fields label {
  align-items: center;
  background: #b2c8dc;
  border-radius: 0;
  box-sizing: border-box;
  color: #071f3f;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 22px;
  padding: 0 7px;
}

.accounting-article-detail-fields input {
  background: #eeeefb;
  border: 1px solid #7f8794;
  box-sizing: border-box;
  color: #000000;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  height: 22px;
  padding: 2px 6px;
}

.accounting-article-detail-fields .code,
.accounting-article-detail-fields .year {
  text-align: center;
}

.accounting-article-detail-fields .amount {
  text-align: right;
}


.accounting-article-detail-fields .document {
  width: 128px;
}
.accounting-article-detail-fields .description {
  grid-column: span 2;
}

.accounting-article-detail-fields .date {
  grid-column: 2 / 4;
  text-align: center;
}

.accounting-article-detail-fields label:nth-of-type(3) {
  grid-column: 4;
}

.accounting-article-detail-fields label:nth-of-type(4) {
  grid-column: 1;
}

.accounting-article-detail-fields label:nth-of-type(5) {
  grid-column: 4;
}

.accounting-article-detail-fields label:nth-of-type(6) {
  grid-column: 7;
}

.accounting-article-detail-grid-frame {
  min-height: 0;
  overflow: hidden;
}

.accounting-article-detail-grid {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.accounting-article-detail-grid th,
.accounting-article-detail-grid td {
  border: 1px solid #9aa0a8;
  box-sizing: border-box;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  height: 26px;
  padding: 3px 7px;
}

.accounting-article-detail-grid th {
  background: #afc4e4;
  font-weight: 520;
}

.accounting-article-detail-grid td {
  background: #ffffff;
  font-weight: 520;
}

.accounting-article-detail-grid th:nth-child(1),
.accounting-article-detail-grid td:nth-child(1),
.accounting-article-detail-grid th:nth-child(5),
.accounting-article-detail-grid td:nth-child(5) {
  text-align: center;
  width: 90px;
}

.accounting-article-detail-grid th:nth-child(2),
.accounting-article-detail-grid td:nth-child(2),
.accounting-article-detail-grid th:nth-child(6),
.accounting-article-detail-grid td:nth-child(6) {
  text-align: left;
}

.accounting-article-detail-grid th:nth-child(3),
.accounting-article-detail-grid td:nth-child(3),
.accounting-article-detail-grid th:nth-child(7),
.accounting-article-detail-grid td:nth-child(7) {
  text-align: right;
  width: 110px;
}

.accounting-article-detail-grid th:nth-child(4),
.accounting-article-detail-grid td:nth-child(4) {
  text-align: center;
  width: 60px;
}

.accounting-article-detail-grid tfoot td {
  background: #eeeefb;
  font-weight: 520;
}

.accounting-article-detail-grid tfoot .amount-total {
  text-align: right;
}

.accounting-article-detail-actions {
  align-items: center;
  display: flex;
  justify-content: flex-end;
}

.accounting-article-detail-actions .button {
  min-width: 116px;
}
.standard-check-button {
  align-items: center !important;
  align-self: center;
  background: #ffffff !important;
  border: 1px solid #8a8f98 !important;
  border-radius: 5px !important;
  box-sizing: border-box !important;
  color: inherit !important;
  cursor: pointer;
  display: inline-flex !important;
  height: 30px !important;
  justify-content: center;
  justify-self: start;
  max-width: 68px !important;
  min-height: 30px !important;
  min-width: 68px !important;
  overflow: hidden;
  padding: 0 !important;
  position: relative;
  width: 68px !important;
}

.standard-check-button input[type="checkbox"] {
  border: 0;
  height: 1px;
  margin: 0;
  min-height: 0;
  opacity: 0;
  padding: 0;
  position: absolute;
  width: 1px;
}

.standard-check-button span {
  background: transparent !important;
  border: 0 !important;
  inset: 0;
  position: absolute;
}

.standard-check-button span::before {
  background: rgb(210, 210, 210);
  border: 1px solid #c2ccda;
  border-radius: 999px;
  box-sizing: border-box;
  content: "";
  height: 20px;
  left: 13px;
  position: absolute;
  top: 5px;
  transition: background 0.15s ease, border-color 0.15s ease;
  width: 42px;
}

.standard-check-button span::after {
  background: #ffffff;
  border-radius: 50%;
  box-shadow: 0 1px 3px rgba(23, 32, 51, 0.28);
  content: "";
  height: 18px;
  left: 15px;
  position: absolute;
  top: 6px;
  transition: transform 0.15s ease;
  width: 18px;
}

.standard-check-button input[type="checkbox"]:checked ~ span::before {
  background: var(--BlueNote);
  border-color: var(--BlueNote);
}

.standard-check-button input[type="checkbox"]:checked ~ span::after {
  transform: translateX(18px);
}

.standard-check-button input[type="checkbox"]:focus-visible ~ span {
  box-shadow: 0 0 0 3px rgba(75, 100, 165, 0.18);
}
















/* System administration */
.system-admin-login-page .app-footer,
.system-admin-page .app-footer {
    display: none;
}

.system-admin-login-page {
    min-height: 100vh;
    background: linear-gradient(135deg, #d8e7f3 0%, #eef4f9 45%, #c5d7ea 100%);
}

.system-admin-login-background {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.08;
    pointer-events: none;
}

.system-admin-login-background img {
    width: 420px;
    max-width: 50vw;
    height: auto;
}

.system-admin-overlay {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(15, 23, 42, 0.22);
    z-index: 40;
}

.system-admin-dialog {
    width: 520px;
    max-width: calc(100vw - 48px);
    background: #ffffff;
    border: 1px solid #7e8da1;
    box-shadow: 0 18px 44px rgba(15, 23, 42, 0.25);
}

.system-admin-title {
    height: 30px;
    display: flex;
    align-items: center;
    padding: 0 24px;
    color: #ffffff;
    background: #6aa5db;
    font-weight: 700;
}

.system-admin-body {
    padding: 26px 32px 20px;
    background: #e8e8f8;
    border: 1px solid #7e8da1;
    margin: 22px 28px 0;
}

.system-admin-form-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.system-admin-form-grid .field {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 8px;
    align-items: center;
}

.system-admin-form-grid label {
    height: 30px;
    display: flex;
    align-items: center;
    padding: 0 10px;
    border: 1px solid #8da0b5;
    border-radius: 6px;
    background: #b7cade;
    font-size: 13px;
    font-weight: 520;
}

.system-admin-form-grid input {
    height: 30px;
    border: 1px solid #7d8795;
    border-radius: 6px;
    padding: 0 10px;
    font-size: 13px;
    font-weight: 520;
    background: #ffffff;
}

.system-admin-form-grid input:focus {
    outline: 2px solid #2b73ff;
    outline-offset: 1px;
}

.system-admin-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding: 18px 28px 24px;
}

.system-admin-actions .button,
.system-admin-actions button {
    min-width: 120px;
    height: 42px;
}

.system-admin-page {
    min-height: 100vh;
    background: linear-gradient(135deg, #d8e7f3 0%, #eef4f9 45%, #c5d7ea 100%);
}

.system-admin-home {
    max-width: 1180px;
    margin: 22px auto;
}

.system-admin-header {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 66px;
    padding: 6px 20px;
}

.system-admin-header .module-logo {
    width: auto;
    height: 56px;
}

.system-admin-header h1 {
    margin: 0;
}

.system-admin-logout-form {
    margin-left: auto;
}

.system-admin-logout-form .button {
    min-width: 120px;
    height: 42px;
}

.system-admin-panel {
    margin-top: 14px;
    padding: 18px;
    border: 1px solid #9aaabc;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.72);
}

.system-admin-menu {
    display: grid;
    grid-template-columns: repeat(2, minmax(260px, 1fr));
    gap: 14px;
}

.system-admin-menu-link {
    display: grid;
    gap: 8px;
    min-height: 96px;
    padding: 18px;
    border: 1px solid #b8c7d8;
    border-radius: 8px;
    background: #eef4fa;
    color: #10233f;
    text-decoration: none;
}

.system-admin-menu-link strong {
    color: #0d3c7c;
    font-size: 18px;
}

.system-admin-menu-link span {
    color: #465a73;
}

.system-admin-menu-link.disabled {
    opacity: 0.7;
    cursor: default;
}

.system-admin-summary {
    display: grid;
    grid-template-columns: 170px 1fr;
    gap: 8px 12px;
    align-items: center;
    max-width: 460px;
    margin-top: 18px;
}

.system-admin-label {
    height: 30px;
    display: flex;
    align-items: center;
    padding: 0 10px;
    border: 1px solid #8da0b5;
    border-radius: 6px;
    background: #b7cade;
    font-size: 13px;
    font-weight: 520;
}

.system-admin-summary strong {
    height: 30px;
    display: flex;
    align-items: center;
    padding: 0 10px;
    border: 1px solid #7d8795;
    border-radius: 6px;
    background: #f2f2ff;
    font-size: 13px;
    font-weight: 700;
}

.system-admin-warning {
    margin-top: 14px;
}

/* Admin companies */
.admin-companies-page > .system-admin-header {
    height: 110px;
    min-height: 110px;
}

.admin-companies-actions {
    display: grid;
    grid-template-columns: 112px repeat(3, 150px);
    grid-template-rows: 42px 42px;
    gap: 6px;
    align-items: center;
    justify-content: end;
    padding: 10px 0;
}

.admin-companies-actions .stock-movements-records {
    grid-row: 1 / span 2;
    height: 42px;
    line-height: 42px;
    margin-right: 0;
}

.admin-companies-actions .button,
.admin-company-edit-actions .button,
.admin-companies-actions .stock-movements-records {
    min-width: 130px;
}

.admin-company-edit-actions .button {
    height: 42px;
    line-height: 42px;
    min-height: 42px;
}
.admin-companies-actions .button {
    height: 42px;
    line-height: 42px;
    min-height: 42px;
}


.admin-companies-filter {
    margin-top: 12px;
    padding: 15px 12px;
    border: 1px solid #9aaabc;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.68);
}

.admin-companies-filter .toolbar {
    display: grid;
    grid-template-columns: 130px 360px 130px 130px 1fr;
    gap: 8px;
    align-items: center;
    margin: 0;
}

.admin-companies-filter .button {
    height: 32px;
    line-height: 32px;
    min-height: 32px;
}

.admin-companies-filter label {
    height: 30px;
    display: flex;
    align-items: center;
    padding: 0 10px;
    border: 1px solid #8da0b5;
    border-radius: 6px;
    background: #b7cade;
    font-size: 13px;
    font-weight: 520;
}

.admin-companies-filter input {
    height: 30px;
    border: 1px solid #7d8795;
    border-radius: 6px;
    padding: 0 10px;
    font-size: 13px;
    font-weight: 520;
}

.admin-companies-list-frame {
    margin-top: 10px;
    border: 1px solid #8796aa;
    border-radius: 8px;
    overflow: hidden;
    background: #f7fbff;
}

.admin-companies-grid {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
    font-weight: 520;
}

.admin-companies-grid th {
    height: 30px;
    padding: 0 8px;
    border: 1px solid #9aa8b8;
    border-bottom-color: #758aa1;
    background: linear-gradient(#c7d7e8, #b8cbe0 52%, #a9bed6);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.72),
        inset 0 -1px 0 rgba(72, 91, 112, 0.26);
    color: #0e1824;
    font-size: 12px;
    font-weight: 400;
    text-align: left;
}

.admin-companies-grid td {
    height: 27px;
    padding: 0 8px;
    border: 1px solid #b3bdc8;
    background: #ffffff;
}

.admin-companies-grid tr:nth-child(even) td {
    background: #f2f6fb;
}

.admin-companies-grid tr.selected td {
    background: #bdd5ec;
}

.admin-companies-grid .center-cell {
    text-align: center;
}

.admin-company-edit-page > form {
    display: flex;
    flex-direction: column;
    min-height: calc(100vh - 88px);
}

.admin-company-edit-shell {
    display: block;
    flex: 1 1 auto;
    margin-top: 10px;
    padding: 14px;
}

.admin-company-frame {
    box-sizing: border-box;
    border: 1px solid #8796aa;
    border-radius: 6px;
    background: #f7fbff;
    margin: 0;
    max-width: none;
    min-height: 100%;
    padding: 16px 18px 18px;
    width: 100%;
}

.admin-company-frame legend {
    padding: 0 8px;
    color: #22384e;
    font-size: 13px;
    font-weight: 520;
}

.admin-company-grid {
    grid-template-columns: 170px 360px;
    max-width: 536px;
}

.admin-company-grid .field {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 170px 360px;
    gap: 6px;
    align-items: center;
}

.admin-company-grid .field > input,
.admin-company-grid .settings-password-control {
    width: 360px;
}

.admin-company-grid label,
.admin-company-grid input,
.admin-company-grid .settings-password-control {
    height: 30px;
    min-height: 30px;
}

.admin-company-grid label {
    box-sizing: border-box;
}

.admin-company-grid .settings-password-control input {
    height: 30px;
}

.admin-company-grid .admin-company-code-field {
    grid-template-columns: 170px 100px;
    gap: 6px;
}

.admin-company-grid .admin-company-code-field > input {
    width: 100px;
    text-align: center;
}

.admin-company-grid .admin-company-check-field {
    grid-template-columns: 170px 68px;
    gap: 6px;
}

.admin-company-grid input[readonly] {
    background: #f0f0fb;
}



.password-manager-decoys {
  height: 0;
  left: -10000px;
  overflow: hidden;
  position: absolute;
  top: -10000px;
  width: 0;
}

.password-manager-decoys input {
  height: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  width: 0;
}




.settings-password-control input.password-masked {
    -webkit-text-security: disc;
}

.admin-company-hidden-submit {
    display: none;
}

.session-logout-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 84px;
  height: 34px;
  margin-top: 8px;
  padding: 0 14px;
  font-size: 0.9rem;
}

.app-login-dialog {
  width: min(560px, calc(100vw - 32px));
}

.app-login-grid {
  grid-template-columns: 150px minmax(260px, 1fr);
}

.app-login-grid-vertical {
  grid-template-columns: 150px minmax(280px, 1fr);
  row-gap: 12px;
}

.app-login-grid-vertical .field {
  display: grid;
  grid-template-columns: 150px minmax(280px, 1fr);
  grid-column: 1 / -1;
  align-items: center;
  column-gap: 8px;
}

.app-login-grid-vertical .field > label {
  height: 30px;
}

.app-login-dialog {
  width: min(640px, calc(100vw - 32px));
  background: transparent;
  border: 0;
  box-shadow: none;
}

.app-login-frame {
  background: #ffffff;
  border: 1px solid #7e8da1;
  border-radius: 8px;
  box-shadow: 0 20px 42px rgba(13, 37, 63, 0.24);
  padding: 14px;
}

.app-login-brand {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 66px;
  padding: 8px 14px 12px;
  border-bottom: 1px solid #b8c6d6;
}

.app-login-brand img {
  width: 70px;
  height: 44px;
  object-fit: contain;
  flex: 0 0 auto;
}

.app-login-brand h1 {
  margin: 0;
  color: #142033;
  font-size: 30px;
  font-weight: 520;
  line-height: 1.1;
}

.app-login-brand p {
  margin: 4px 0 0;
  color: #465a76;
  font-size: 15px;
  font-weight: 520;
}

.app-login-panel {
  margin-top: 14px;
  border: 1px solid #8c9bad;
  background: #e7e8f7;
}

.app-login-panel .system-admin-title {
  padding: 0 18px;
}

.app-login-panel .system-admin-actions {
  padding-top: 2px;
}

.app-login-admin-button {
  border: 1px solid #7f8fa6;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

.app-login-admin-button {
  margin-right: auto;
}

.app-login-frame {
  padding: 18px 18px 20px;
}

.app-login-brand {
  padding-top: 10px;
  padding-bottom: 16px;
}

.app-login-panel {
  margin-top: 18px;
}

.app-login-panel .system-admin-body {
  padding-top: 18px;
  padding-bottom: 18px;
}

.app-login-panel .system-admin-actions {
  padding-top: 8px;
  padding-bottom: 16px;
}

.app-login-frame {
  padding-bottom: 40px;
}

.app-login-frame {
  padding-bottom: 20px;
}

.app-login-panel .system-admin-actions {
  padding-bottom: 36px;
}

.app-login-panel .system-admin-actions {
  margin-top: 12px;
}

.app-login-grid-vertical .field > label {
  height: 32px;
  min-height: 32px;
}

.app-login-panel .system-admin-form-grid label,
.app-login-panel .system-admin-form-grid input,
.app-login-panel .settings-password-control,
.app-login-panel .settings-password-control input {
  box-sizing: border-box;
  height: 32px !important;
  min-height: 32px !important;
}

.app-login-panel .settings-password-toggle {
  height: 30px;
}

.app-login-panel .system-admin-form-grid input:focus {
  outline: none !important;
  box-shadow: inset 0 0 0 1px #7d8795;
}

.app-user-login-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(30, 40, 54, 0.38);
}

.app-user-login-dialog {
  width: min(620px, calc(100vw - 32px));
  background: #ffffff;
  border: 1px solid #7e8da1;
  border-radius: 0;
  box-shadow: 0 20px 42px rgba(13, 37, 63, 0.28);
}

.app-user-login-body {
  background: #e7e8f7;
  border-left: 1px solid #8c9bad;
  border-right: 1px solid #8c9bad;
}

.app-login-panel .system-admin-form-grid select,
.app-user-login-dialog .system-admin-form-grid select {
  box-sizing: border-box;
  height: 32px;
  min-height: 32px;
  border: 1px solid #7d8795;
  border-radius: 6px;
  padding: 0 10px;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 520;
  background: #ffffff;
}

.app-user-login-dialog .system-admin-form-grid label,
.app-user-login-dialog .system-admin-form-grid input,
.app-user-login-dialog .system-admin-form-grid select,
.app-user-login-dialog .settings-password-control,
.app-user-login-dialog .settings-password-control input {
  box-sizing: border-box;
  height: 32px !important;
  min-height: 32px !important;
}

.app-user-login-dialog .system-admin-form-grid input:focus,
.app-user-login-dialog .system-admin-form-grid select:focus {
  outline: none !important;
  box-shadow: inset 0 0 0 1px #7d8795;
}

.app-user-login-actions {
  padding-bottom: 36px;
  margin-top: 12px;
}

.system-admin-login-dialog {
  width: min(600px, calc(100vw - 32px));
}

.system-admin-login-brand {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 66px;
  padding: 10px 18px 14px;
  border-bottom: 1px solid #b8c6d6;
}

.system-admin-login-brand img {
  width: 70px;
  height: 44px;
  object-fit: contain;
  flex: 0 0 auto;
}

.system-admin-login-brand h1 {
  margin: 0;
  color: #142033;
  font-size: 28px;
  font-weight: 520;
  line-height: 1.1;
}

.system-admin-login-brand p {
  margin: 4px 0 0;
  color: #465a76;
  font-size: 15px;
  font-weight: 520;
}

.system-admin-login-brand img {
  width: 44px;
  height: 44px;
  object-fit: contain;
}

.system-admin-login-brand img {
  width: 56px;
  height: 56px;
}

.system-admin-login-brand {
  min-height: 78px;
}

.system-admin-login-dialog .system-admin-body {
  padding-top: 31px;
  padding-bottom: 31px;
}

.system-admin-login-dialog .system-admin-form-grid label,
.system-admin-login-dialog .system-admin-form-grid input,
.system-admin-login-dialog .settings-password-control,
.system-admin-login-dialog .settings-password-control input {
  box-sizing: border-box;
  height: 32px !important;
  min-height: 32px !important;
}

.system-admin-login-dialog .settings-password-toggle {
  height: 30px;
}

.system-admin-login-dialog .system-admin-form-grid input:focus {
  outline: none !important;
  box-shadow: inset 0 0 0 1px #7d8795;
}

.system-admin-login-dialog .system-admin-body {
  padding-top: 43px;
  padding-bottom: 44px;
}

.system-admin-login-dialog .system-admin-form-grid {
  row-gap: 14px;
}

.system-admin-cancel-button {
  border: 1px solid #7f8fa6;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

.system-admin-login-tool-image {
  margin-left: auto;
  width: 56px;
  height: 56px;
  object-fit: contain;
  flex: 0 0 auto;
}

.app-login-brand img {
  width: 68px;
  height: 68px;
}

.app-login-panel .system-admin-actions {
  margin-top: 32px;
}

/* Login utente: pannello sovrapposto alla login azienda, senza oscuramento. */
.app-user-login-backdrop {
  background: transparent !important;
  display: block !important;
  pointer-events: none;
}

.app-user-login-dialog {
  position: absolute !important;
  left: calc(50% - 320px + 100px);
  top: calc(50% - 220px + 137px);
  box-shadow: none !important;
  pointer-events: auto;
}

@media (max-width: 760px) {
  .app-user-login-dialog {
    left: 16px;
    right: 16px;
    top: 120px;
    width: auto;
  }
}


/* Login azienda: lieve rialzo della finestra madre. */
.app-login-dialog {
  transform: translateY(-30px);
}



.activity-list-toolbar {
  display: grid;
  grid-template-columns: 150px 200px 150px minmax(210px, 1fr) 260px;
  gap: 12px;
  align-items: center;
}

.activity-list-toolbar .list-filter-field {
  min-width: 0;
}

.activity-list-toolbar select {
  width: 100%;
}

.activity-list-grid th:nth-child(1),
.activity-list-grid td:nth-child(1) { width: 110px; text-align: center; }
.activity-list-grid th:nth-child(2),
.activity-list-grid td:nth-child(2) { width: 90px; text-align: center; }
.activity-list-grid th:nth-child(3),
.activity-list-grid td:nth-child(3) { width: 240px; }
.activity-list-grid th:nth-child(4),
.activity-list-grid td:nth-child(4) { width: 160px; }
.activity-list-grid th:nth-child(5),
.activity-list-grid td:nth-child(5) { width: 140px; }
.activity-list-grid th:nth-child(6),
.activity-list-grid td:nth-child(6) { width: 80px; text-align: center; }
.activity-list-grid th:nth-child(7),
.activity-list-grid td:nth-child(7) { width: 130px; }
.activity-list-grid th:nth-child(8),
.activity-list-grid td:nth-child(8) { width: 170px; }

.activity-list-grid-frame {
  min-height: 520px;
}



/* Login applicativa Micronote: sfondo fotografico. */
.app-login-page {
  background: url("../images/sky-213848-2.jpg") center center / cover no-repeat fixed !important;
}

.app-login-page .system-admin-login-background {
  display: none;
}

.app-login-page .system-admin-overlay {
  background: rgba(198, 215, 230, 0.18);
}

.app-user-login-dialog .system-admin-form-grid input[readonly] {
  background: rgb(230, 230, 240) !important;
  color: #000000 !important;
  cursor: default;
}

.cash-statement-module .page-container {
    max-width: none;
}

.cash-statement-module .app-footer {
    display: none;
}

.cash-statement-page .module-header {
    margin-bottom: 12px;
    margin-top: 8px;
}

.cash-statement-page .cash-statement-filter-row {
    display: flex;
    align-items: end;
    column-gap: 24px;
    row-gap: 14px;
    flex-wrap: wrap;
}

.cash-statement-page .cash-statement-filters {
    margin: -3px 0 4px;
    overflow: visible;
}

.cash-statement-page .cash-statement-filters fieldset.form-frame {
    appearance: none;
    border: 1px solid #8799ad;
    border-radius: 8px;
    margin: 0;
    padding: 16px 20px 18px;
}

.cash-statement-page .cash-filter-field {
    align-items: center;
    display: flex;
    gap: 7px;
    margin: 0;
}

.cash-statement-page .cash-filter-field label {
    align-items: center;
    background: #b8cbe0;
    border: 1px solid #8a8f98;
    border-radius: 5px;
    box-sizing: border-box;
    display: flex;
    flex: 0 0 110px;
    font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
    font-size: 13px;
    font-weight: 500;
    height: 34px;
    line-height: 1;
    margin: 0;
    min-height: 34px;
    padding: 0 7px;
}

.cash-statement-page .cash-filter-field input,
.cash-statement-page .cash-filter-field select {
    border: 1px solid #8a8f98;
    border-radius: 5px;
    box-sizing: border-box;
    font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
    font-size: 13px;
    font-weight: 520;
    height: 34px;
    min-height: 34px;
}

.cash-statement-page .cash-statement-filter-row .micronote-date-control,
.cash-statement-page .cash-statement-filter-row .micronote-date-input {
    height: 34px;
    min-height: 34px;
}

.cash-statement-page .cash-statement-filter-row .micronote-date-control {
    border-radius: 5px;
    flex: 0 0 150px;
    overflow: hidden;
    width: 150px;
}

.cash-statement-page .cash-statement-filter-row .micronote-date-button {
    bottom: 1px;
    height: auto;
    min-height: 0;
    top: 1px;
}

.cash-statement-cash-field { min-width: 250px; }
.cash-statement-store-field { min-width: 360px; }
.cash-statement-store-field label {
    flex-basis: 120px;
    min-width: 120px;
    white-space: nowrap;
}

.cash-statement-cash-field select,
.cash-statement-store-field select {
    flex: 1 1 auto;
    min-width: 0;
}

.cash-statement-grid { min-width: 1240px; }
.cash-statement-grid th:nth-child(1), .cash-statement-grid td:nth-child(1) { width: 80px; }
.cash-statement-grid th:nth-child(2), .cash-statement-grid td:nth-child(2) { width: 100px; }
.cash-statement-grid th:nth-child(3), .cash-statement-grid td:nth-child(3) { width: 120px; }
.cash-statement-grid th:nth-child(5), .cash-statement-grid td:nth-child(5) { min-width: 220px; width: 220px; }
.cash-statement-grid th:nth-child(6), .cash-statement-grid td:nth-child(6) { width: 90px; }
.cash-statement-grid th:nth-child(7), .cash-statement-grid td:nth-child(7) { width: 90px; }
.cash-statement-grid th:nth-child(8), .cash-statement-grid td:nth-child(8) { width: 80px; }
.cash-statement-grid th:nth-child(9), .cash-statement-grid td:nth-child(9) { min-width: 180px; width: 180px; }
.cash-statement-grid th:nth-child(10), .cash-statement-grid td:nth-child(10) { width: 140px; }
.cash-statement-grid th:nth-child(9), .cash-statement-grid td:nth-child(9),
.cash-statement-grid th:nth-child(10), .cash-statement-grid td:nth-child(10) { text-align: left; }
.cash-statement-grid th:nth-child(6), .cash-statement-grid td:nth-child(6),
.cash-statement-grid th:nth-child(7), .cash-statement-grid td:nth-child(7) { text-align: right; }
.cash-statement-grid tfoot td { background: #c2d5ea; font-weight: 800; }

.cash-statement-balance {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
    padding: 10px 4px 0;
}

.cash-statement-balance span { background: #bdd2e8; padding: 5px 12px; }
.cash-statement-balance strong { min-width: 110px; padding: 5px 10px; text-align: right; border: 1px solid #8c95a6; background: #fff; }
.cash-statement-balance strong.negative { color: #b42318; }

@media print {
    .cash-statement-page .module-title-logo, .cash-statement-page .top-actions, .cash-statement-page form { display: none !important; }
}

/* Dettaglio vendite del giorno */
.daily-sales-module .page-container { padding-top: 0; padding-bottom: 0; }
.daily-sales-module .app-footer { display: none; }
.daily-sales-page { min-width: 1280px; }
.daily-sales-page .module-header { height: 70px; min-height: 70px; margin-bottom: 10px; padding: 5px 18px; }
.daily-sales-page .module-title-logo img { height: 56px; width: auto; }
.daily-sales-filters { margin-bottom: 10px; }
.daily-sales-filters .form-frame { min-height: 76px; padding: 18px 20px; }
.daily-sales-filter-row { display: flex; align-items: center; gap: 40px; margin-bottom: 20px; }
.daily-sales-field { display: grid; grid-template-columns: 150px auto; gap: 6px; height: 30px; min-height: 30px; }
.supplier-form-page.data-form-skin .daily-sales-field label {
  align-items: center;
  background: #b8cbe0;
  border: 1px solid #8a8f98;
  border-radius: 6px;
  color: #0e1824;
  display: flex;
  font-family: "Microsoft Sans Serif", "Segoe UI", Arial, sans-serif;
  font-size: 13px;
  font-weight: 500;
  height: 30px;
  justify-content: flex-start;
  line-height: 1.15;
  min-height: 30px;
  padding: 5px 8px;
  white-space: nowrap;
}
.daily-sales-field input { background: #fff; border-radius: 6px; text-align: center; }
.daily-sales-code input { width: 110px; }
.daily-sales-date .micronote-date-control { border-radius: 6px; width: 230px; height: 30px; }
.daily-sales-date .micronote-date-input { border-radius: 6px; width: 230px; height: 30px; }
.daily-sales-date .micronote-date-button { border-radius: 0 6px 6px 0; }
.daily-sales-navigation { display: flex; gap: 5px; }
.daily-sales-navigation button { width: 48px; height: 30px; border: 0; border-radius: 6px; background: var(--BlueNote); color: #fff; font-size: 16px; font-weight: 700; }
.daily-sales-navigation button:hover,
.daily-sales-navigation button:focus-visible { background: var(--BlueNote-hover); outline: 2px solid rgba(31, 111, 235, 0.22); outline-offset: 2px; }
.daily-sales-grid-frame { min-height: 330px; overflow: auto; }
.daily-sales-grid { white-space: nowrap; }
.daily-sales-grid thead tr:not(.sales-entry-group-row) th:nth-child(1),
.daily-sales-grid td:nth-child(1) { text-align: center; }
.daily-sales-grid thead tr:not(.sales-entry-group-row) th:nth-child(2),
.daily-sales-grid td:nth-child(2) { text-align: left; }
.daily-sales-grid thead tr:not(.sales-entry-group-row) th:nth-child(n+3),
.daily-sales-grid td:nth-child(n+3) { padding: 0 6px; text-align: right; }
.daily-sales-grid .sales-entry-group-row th { text-align: center; }
.daily-sales-grid tbody td { font-weight: 520; }
.daily-sales-grid tbody td:nth-child(5), .daily-sales-grid tbody td:nth-child(6),
.daily-sales-grid tbody td:nth-child(7), .daily-sales-grid tbody td:nth-child(8) { background: rgb(230, 230, 240); }
.daily-sales-grid tfoot td { font-weight: 600; text-align: right; }
.daily-sales-grid tfoot td:first-child { background: #b8cbe0; padding: 0 6px; text-align: center; }
.daily-sales-grid tfoot td:nth-child(2) { text-align: right; }
.daily-sales-summary { display: flex; justify-content: flex-end; align-items: center; gap: 2px; padding: 18px 14px; background: #e9eafb; border: 1px solid #818897; border-top: 0; }
.daily-sales-summary span { margin-left: 34px; min-width: 136px; padding: 5px 10px; background: #bdd2e8; }
.daily-sales-summary strong { min-width: 110px; padding: 5px 10px; border: 1px solid #8c95a6; background: #fff; text-align: right; }
.daily-sales-summary strong.negative { color: #b42318; }
@media print { .daily-sales-page .module-title-logo, .daily-sales-page .top-actions, .daily-sales-page form { display: none !important; } }

.report-preview-backdrop {
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(28, 45, 66, 0.66);
}

.report-preview-backdrop[hidden] {
  display: none;
}

.report-preview-window {
  width: min(1500px, 98vw);
  height: min(930px, 96vh);
  overflow: hidden;
  border: 1px solid #8da5bd;
  border-radius: 10px;
  background: #dce7f1;
  box-shadow: 0 20px 60px rgba(12, 28, 48, 0.35);
}

.report-preview-toolbar {
  min-height: 66px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 10px 14px;
  border-bottom: 1px solid #9db1c6;
  background: #f7fafc;
}

.report-preview-toolbar > div:first-child {
  display: grid;
  gap: 3px;
}

.report-preview-toolbar strong {
  color: #173f76;
  font-size: 1.08rem;
}

.report-preview-toolbar span {
  color: #60758c;
  font-size: 0.84rem;
}

.report-preview-actions {
  display: flex;
  align-items: center;
  gap: 7px;
}

.report-preview-actions button {
  min-width: 44px;
  min-height: 40px;
  padding: 7px 14px;
  border: 1px solid #365d9d;
  border-radius: 6px;
  background: #4d6dae;
  color: white;
  cursor: pointer;
  font-weight: 700;
}

.report-preview-actions button:hover,
.report-preview-actions button:focus-visible {
  background: #36568f;
}

.report-preview-actions button:disabled {
  opacity: 0.55;
  cursor: wait;
}

.report-preview-actions .report-preview-close {
  margin-left: 8px;
  border-color: #8f4d4d;
  background: #a75d5d;
}

.report-preview-viewport {
  height: calc(100% - 66px);
  overflow: auto;
  padding: 24px;
}

.report-preview-document {
  --report-preview-zoom: 1;
  display: grid;
  justify-content: center;
  gap: 24px;
  width: max-content;
  min-width: 100%;
  zoom: var(--report-preview-zoom);
}

.supplier-report-page {
  box-sizing: border-box;
  width: 1120px;
  min-height: 792px;
  padding: 38px 42px;
  background: white;
  color: #172536;
  box-shadow: 0 3px 16px rgba(18, 35, 53, 0.28);
  font-family: Arial, sans-serif;
}

.supplier-report-page > header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  margin-bottom: 15px;
}

.supplier-report-page > header div {
  display: grid;
  gap: 5px;
}

.supplier-report-page > header strong {
  color: #173f76;
  font-size: 23px;
}

.supplier-report-page > header span,
.supplier-report-page > header small {
  color: #66788b;
  font-size: 11px;
}

.supplier-report-page table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 10px;
}

.supplier-report-page th,
.supplier-report-page td {
  overflow: hidden;
  height: 23px;
  padding: 3px 5px;
  border: 1px solid #bccadb;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.supplier-report-page th {
  height: 28px;
  background: #445f99;
  color: white;
  font-weight: 700;
}

.supplier-report-page tbody tr:nth-child(even) {
  background: #eff4fa;
}

.supplier-report-page tr.is-inactive {
  background: #f5e7e7;
  color: #875151;
  font-style: italic;
}

.supplier-report-page th:nth-child(1),
.supplier-report-page td:nth-child(1) { width: 6%; }
.supplier-report-page th:nth-child(2),
.supplier-report-page td:nth-child(2) { width: 18%; }
.supplier-report-page th:nth-child(3),
.supplier-report-page td:nth-child(3) { width: 10%; }
.supplier-report-page th:nth-child(4),
.supplier-report-page td:nth-child(4) { width: 5%; }
.supplier-report-page th:nth-child(5),
.supplier-report-page td:nth-child(5) { width: 10%; }
.supplier-report-page th:nth-child(6),
.supplier-report-page td:nth-child(6) { width: 10%; }
.supplier-report-page th:nth-child(7),
.supplier-report-page td:nth-child(7) { width: 15%; }
.supplier-report-page th:nth-child(8),
.supplier-report-page td:nth-child(8) { width: 17%; }
.supplier-report-page th:nth-child(9),
.supplier-report-page td:nth-child(9) { width: 9%; }

.article-report-page table {
  font-size: 9px;
}

.article-report-page th,
.article-report-page td {
  height: 20px;
  padding: 2px 4px;
}

.article-report-page th:nth-child(1),
.article-report-page td:nth-child(1) { width: 13%; }
.article-report-page th:nth-child(2),
.article-report-page td:nth-child(2) { width: 22%; }
.article-report-page th:nth-child(3),
.article-report-page td:nth-child(3) { width: 5%; }
.article-report-page th:nth-child(4),
.article-report-page td:nth-child(4) { width: 9%; }
.article-report-page th:nth-child(5),
.article-report-page td:nth-child(5) { width: 13%; }
.article-report-page th:nth-child(6),
.article-report-page td:nth-child(6) { width: 13%; }
.article-report-page th:nth-child(7),
.article-report-page td:nth-child(7) { width: 8%; text-align: right; }
.article-report-page th:nth-child(8),
.article-report-page td:nth-child(8) { width: 6%; text-align: right; }
.article-report-page th:nth-child(9),
.article-report-page td:nth-child(9) { width: 11%; }

.trial-balance-report-page {
  width: 794px;
  min-height: 1123px;
  padding: 42px 48px;
  font-family: Arial, sans-serif;
}
.trial-balance-report-page > header {
  align-items: start;
  margin-bottom: 20px;
}
.trial-balance-report-page > header strong {
  color: #111;
  font-size: 13px;
  font-weight: 500;
}
.trial-balance-report-page > header span {
  color: #111;
  font-size: 12px;
}
.trial-balance-report-page > header small {
  color: #111;
  font-size: 10px;
  line-height: 1.5;
  text-align: right;
}
.trial-balance-report-page table { font-size: 11px; }
.trial-balance-report-page th,
.trial-balance-report-page td {
  height: 20px;
  padding: 2px 4px;
  border: 0;
}
.trial-balance-report-page th {
  border-bottom: 1px solid #777;
  background: #e9e9e9;
  color: #111;
  font-weight: 500;
}
.trial-balance-report-page tbody tr:nth-child(even) { background: transparent; }
.trial-balance-report-page tfoot td {
  border-top: 1px solid #777;
  font-weight: 500;
}
.trial-balance-report-page tfoot tr:last-child td { border-bottom: 3px double #777; }
.trial-balance-report-page th:nth-child(n+3),
.trial-balance-report-page td:nth-child(n+3) { text-align: right; }

.store-summary-report-page {
  width: 1122px;
  min-height: 794px;
  padding: 38px 42px;
}

.store-summary-report-page > header { margin-bottom: 24px; }
.store-summary-report-page > header strong { font-size: 15px; }
.store-summary-report-page > header span { margin-top: 7px; }
.store-summary-report-page table { table-layout: fixed; font-size: 9px; }
.store-summary-report-page th,
.store-summary-report-page td { padding: 3px 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.store-summary-report-page th { font-size: 8.5px; }
.store-summary-report-page tbody tr:nth-child(even) { background: transparent; }
.store-summary-report-page th:first-child,
.store-summary-report-page td:first-child { width: 5%; text-align: center; }
.store-summary-report-page th:nth-child(2),
.store-summary-report-page td:nth-child(2) { width: 18%; text-align: left; }
.store-summary-report-page th:nth-child(n+3),
.store-summary-report-page td:nth-child(n+3) { text-align: right; }

.purchase-invoices-report-page {
  width: 1122px;
  min-height: 794px;
  padding: 38px 42px;
}

.purchase-invoices-report-page > header { margin-bottom: 22px; }
.purchase-invoices-report-page table { table-layout: fixed; font-size: 9px; }
.purchase-invoices-report-page th,
.purchase-invoices-report-page td { padding: 4px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.purchase-invoices-report-page th { font-size: 8.5px; }
.purchase-invoices-report-page th:nth-child(n+8),
.purchase-invoices-report-page td:nth-child(n+8) { text-align: right; }
.purchase-invoices-report-page th:nth-child(1),
.purchase-invoices-report-page td:nth-child(1) { width: 7%; }
.purchase-invoices-report-page th:nth-child(2),
.purchase-invoices-report-page td:nth-child(2) { width: 8%; }
.purchase-invoices-report-page th:nth-child(3),
.purchase-invoices-report-page td:nth-child(3) { width: 8%; }
.purchase-invoices-report-page th:nth-child(4),
.purchase-invoices-report-page td:nth-child(4) { width: 10%; }
.purchase-invoices-report-page th:nth-child(5),
.purchase-invoices-report-page td:nth-child(5) { width: 7%; }
.purchase-invoices-report-page th:nth-child(6),
.purchase-invoices-report-page td:nth-child(6) { width: 18%; }
.purchase-invoices-report-page th:nth-child(7),
.purchase-invoices-report-page td:nth-child(7) { width: 16%; }
.purchase-invoices-report-page th:nth-child(8),
.purchase-invoices-report-page td:nth-child(8),
.purchase-invoices-report-page th:nth-child(9),
.purchase-invoices-report-page td:nth-child(9),
.purchase-invoices-report-page th:nth-child(10),
.purchase-invoices-report-page td:nth-child(10) { width: 8%; }
.purchase-invoices-report-page th:nth-child(11),
.purchase-invoices-report-page td:nth-child(11) { width: 10%; }

.activity-report-page {
  width: 1122px;
  min-height: 794px;
  padding: 38px 42px;
}

.activity-report-page > header { margin-bottom: 22px; }
.activity-report-page table { table-layout: fixed; font-size: 9px; }
.activity-report-page th,
.activity-report-page td { padding: 4px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.activity-report-page th { font-size: 8.5px; }
.activity-report-page th:nth-child(1),
.activity-report-page td:nth-child(1) { width: 10%; text-align: center; }
.activity-report-page th:nth-child(2),
.activity-report-page td:nth-child(2) { width: 8%; text-align: center; }
.activity-report-page th:nth-child(3),
.activity-report-page td:nth-child(3) { width: 16%; }
.activity-report-page th:nth-child(4),
.activity-report-page td:nth-child(4) { width: 16%; }
.activity-report-page th:nth-child(5),
.activity-report-page td:nth-child(5) { width: 18%; }
.activity-report-page th:nth-child(6),
.activity-report-page td:nth-child(6) { width: 7%; text-align: center; }
.activity-report-page th:nth-child(7),
.activity-report-page td:nth-child(7) { width: 10%; }
.activity-report-page th:nth-child(8),
.activity-report-page td:nth-child(8) { width: 15%; }

.sales-history-report-page {
  width: 1122px;
  min-height: 794px;
  padding: 38px 42px;
}

.sales-history-report-page > header { margin-bottom: 22px; }
.sales-history-report-page table { table-layout: fixed; font-size: 8px; }
.sales-history-report-page th,
.sales-history-report-page td {
  height: 22px;
  padding: 3px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sales-history-report-page th { font-size: 7.5px; }
.sales-history-report-page th:nth-child(-n+3),
.sales-history-report-page td:nth-child(-n+3) { text-align: center; }
.sales-history-report-page th:nth-child(n+4),
.sales-history-report-page td:nth-child(n+4) { text-align: right; }
.sales-history-report-page th:nth-child(1),
.sales-history-report-page td:nth-child(1) { width: 5%; }
.sales-history-report-page th:nth-child(2),
.sales-history-report-page td:nth-child(2) { width: 7%; }
.sales-history-report-page th:nth-child(3),
.sales-history-report-page td:nth-child(3) { width: 12%; }
.sales-history-report-page th:nth-child(n+4),
.sales-history-report-page td:nth-child(n+4) { width: 6.9%; }

.stock-loads-report-page {
  width: 1122px;
  min-height: 794px;
  padding: 38px 42px;
}

.stock-loads-report-page > header { margin-bottom: 22px; }
.stock-loads-report-page table { table-layout: fixed; font-size: 9px; }
.stock-loads-report-page th,
.stock-loads-report-page td { padding: 4px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.stock-loads-report-page th { font-size: 8.5px; }
.stock-loads-report-page th:nth-child(1),
.stock-loads-report-page td:nth-child(1) { width: 6%; text-align: center; }
.stock-loads-report-page th:nth-child(2),
.stock-loads-report-page td:nth-child(2) { width: 6%; text-align: center; }
.stock-loads-report-page th:nth-child(3),
.stock-loads-report-page td:nth-child(3) { width: 10%; text-align: center; }
.stock-loads-report-page th:nth-child(4),
.stock-loads-report-page td:nth-child(4) { width: 7%; text-align: center; }
.stock-loads-report-page th:nth-child(5),
.stock-loads-report-page td:nth-child(5) { width: 6%; text-align: center; }
.stock-loads-report-page th:nth-child(6),
.stock-loads-report-page td:nth-child(6) { width: 25%; }
.stock-loads-report-page th:nth-child(7),
.stock-loads-report-page td:nth-child(7) { width: 8%; text-align: right; }
.stock-loads-report-page th:nth-child(8),
.stock-loads-report-page td:nth-child(8) { width: 7%; text-align: right; }
.stock-loads-report-page th:nth-child(9),
.stock-loads-report-page td:nth-child(9) { width: 8%; text-align: right; }
.stock-loads-report-page th:nth-child(10),
.stock-loads-report-page td:nth-child(10) { width: 17%; }

.accounting-movements-report-page {
  width: 1122px;
  min-height: 794px;
  padding: 38px 42px;
}

.accounting-movements-report-page > header { margin-bottom: 22px; }
.accounting-movements-report-page table { table-layout: fixed; font-size: 9px; }
.accounting-movements-report-page th,
.accounting-movements-report-page td { padding: 4px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.accounting-movements-report-page th { font-size: 8.5px; }
.accounting-movements-report-page th:nth-child(1),
.accounting-movements-report-page td:nth-child(1) { width: 5%; text-align: center; }
.accounting-movements-report-page th:nth-child(2),
.accounting-movements-report-page td:nth-child(2) { width: 6%; text-align: center; }
.accounting-movements-report-page th:nth-child(3),
.accounting-movements-report-page td:nth-child(3) { width: 7%; text-align: center; }
.accounting-movements-report-page th:nth-child(4),
.accounting-movements-report-page td:nth-child(4) { width: 8%; }
.accounting-movements-report-page th:nth-child(5),
.accounting-movements-report-page td:nth-child(5) { width: 6%; text-align: center; }
.accounting-movements-report-page th:nth-child(6),
.accounting-movements-report-page td:nth-child(6) { width: 17%; }
.accounting-movements-report-page th:nth-child(7),
.accounting-movements-report-page td:nth-child(7) { width: 8%; text-align: right; }
.accounting-movements-report-page th:nth-child(8),
.accounting-movements-report-page td:nth-child(8) { width: 6%; text-align: center; }
.accounting-movements-report-page th:nth-child(9),
.accounting-movements-report-page td:nth-child(9) { width: 6%; text-align: center; }
.accounting-movements-report-page th:nth-child(10),
.accounting-movements-report-page td:nth-child(10) { width: 16%; }
.accounting-movements-report-page th:nth-child(11),
.accounting-movements-report-page td:nth-child(11) { width: 15%; }
.trial-equity-report-page th:nth-child(1),
.trial-equity-report-page td:nth-child(1) { width: 11%; }
.trial-equity-report-page th:nth-child(2),
.trial-equity-report-page td:nth-child(2) { width: 49%; }
.trial-equity-report-page th:nth-child(3),
.trial-equity-report-page td:nth-child(3),
.trial-equity-report-page th:nth-child(4),
.trial-equity-report-page td:nth-child(4) { width: 20%; }
.trial-income-report-page th:nth-child(1),
.trial-income-report-page td:nth-child(1) { width: 11%; }
.trial-income-report-page th:nth-child(2),
.trial-income-report-page td:nth-child(2) { width: 43%; }
.trial-income-report-page th:nth-child(3),
.trial-income-report-page td:nth-child(3),
.trial-income-report-page th:nth-child(4),
.trial-income-report-page td:nth-child(4) { width: 16%; }
.trial-income-report-page th:nth-child(5),
.trial-income-report-page td:nth-child(5) { width: 14%; }

@media (max-width: 760px) {
  .report-preview-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .report-preview-actions {
    flex-wrap: wrap;
  }

  .report-preview-viewport {
    height: calc(100% - 120px);
  }
}

@media print {
  body.is-printing-supplier-report * {
    visibility: hidden !important;
  }

  body.is-printing-supplier-report .report-preview-backdrop,
  body.is-printing-supplier-report .report-preview-backdrop * {
    visibility: visible !important;
  }

  body.is-printing-supplier-report .report-preview-backdrop,
  body.is-printing-supplier-report .report-preview-window,
  body.is-printing-supplier-report .report-preview-viewport,
  body.is-printing-supplier-report .report-preview-document {
    display: block !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    padding: 0 !important;
    border: 0 !important;
    background: white !important;
    box-shadow: none !important;
    zoom: 1 !important;
  }

  body.is-printing-supplier-report .report-preview-toolbar {
    display: none !important;
  }

  body.is-printing-supplier-report .report-preview-backdrop {
    position: absolute !important;
    inset: 0 auto auto 0 !important;
  }

  body.is-printing-supplier-report .supplier-report-page {
    width: 100% !important;
    min-height: 0 !important;
    padding: 8mm 10mm !important;
    box-shadow: none !important;
    break-after: page;
    page-break-after: always;
  }

  body.is-printing-supplier-report .supplier-report-page:last-child {
    break-after: auto;
    page-break-after: auto;
  }

  @page {
    size: A4 landscape;
    margin: 0;
  }
}

.trial-balance-page { min-height: calc(100vh - 44px); }
body.trial-balance-module .app-footer { display: none; }
body.trial-balance-module .page-container { max-width: 1410px; }
.trial-balance-header { min-height: 70px; }
.trial-balance-actions { grid-template-columns: 115px 150px 130px; }
.trial-balance-filters { margin-top: 8px; }
.trial-balance-filters .form-frame { padding: 8px 16px 12px; }
.trial-balance-filter-row {
  display: grid;
  grid-template-columns: 290px;
  align-items: end;
}
.trial-balance-filter-row .field {
  display: grid;
  grid-template-columns: 150px 130px;
  align-items: center;
  gap: 4px;
}
.trial-balance-filter-row label {
  min-height: 28px;
  display: flex;
  align-items: center;
  padding: 0 8px;
  background: #b8cde3;
  font-weight: 500;
}
.trial-balance-filter-row select { height: 28px; }
.trial-balance-workspace {
  display: grid;
  grid-template-columns: minmax(470px, 0.457fr) minmax(610px, 0.543fr);
  gap: 10px;
  min-height: calc(100vh - 220px);
  margin-top: 8px;
}
.trial-balance-panel {
  display: grid;
  grid-template-rows: 26px minmax(0, 1fr);
  min-width: 0;
  border: 1px solid #8fa3b9;
  background: #e5e9f8;
}
.trial-balance-panel h2 {
  margin: 0;
  padding: 4px 8px;
  background: #abc3dd;
  color: #102239;
  font-size: 17px;
  font-weight: 500;
}
.trial-balance-grid-frame {
  height: auto;
  min-height: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  scrollbar-gutter: stable;
}
.trial-balance-grid {
  min-width: 0;
  table-layout: fixed;
  font-size: 13px;
  font-weight: 520;
}
.trial-balance-grid th,
.trial-balance-grid td { height: 24px; padding: 2px 6px; }
.trial-balance-grid th { font-size: 18px; font-weight: 500; }
.trial-balance-grid th:first-child,
.trial-balance-grid td:first-child { width: 78px; text-align: center; }
.trial-balance-grid th:nth-child(2),
.trial-balance-grid td:nth-child(2) { width: 300px; }
.trial-balance-grid th:nth-child(3),
.trial-balance-grid td:nth-child(3),
.trial-balance-grid th:nth-child(4),
.trial-balance-grid td:nth-child(4) { width: 105px; }
.trial-balance-grid th:nth-child(3),
.trial-balance-grid th:nth-child(4),
.trial-income-grid th:nth-child(5) { text-align: right; }
.trial-income-grid th:nth-child(5),
.trial-income-grid td:nth-child(5) { width: 92px; }
.trial-balance-grid .number-cell {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.trial-balance-grid tfoot td {
  border-top: 4px solid #e5e9f8;
  background: #fffeb4;
  font-weight: 700;
}
@media (max-width: 1050px) {
  .trial-balance-workspace { grid-template-columns: 1fr; }
}

/* Toolbar e marchio comuni */
.module-header,
.list-titlebar {
  height: 80px;
  min-height: 80px;
}

.module-header {
  align-items: center;
  padding-bottom: 5px;
  padding-top: 5px;
}

.list-titlebar {
  padding-bottom: 5px;
  padding-top: 5px;
}

.module-page,
.list-page {
  padding-top: 10px;
}

.module-page > .module-header,
.list-titlebar {
  margin-bottom: 10px;
}

a.module-title-logo > img,
a.list-title-identity > img,
a.module-logo-link > img {
  content: url("/images/micronote-bak.png");
  object-fit: contain;
}

.module-title-logo,
.module-title-identity img {
  border-radius: 0 !important;
  flex-basis: auto !important;
  height: 56px !important;
  width: auto !important;
}

.list-title-identity img,
.system-admin-header .module-logo {
  border-radius: 0 !important;
  height: 56px !important;
  width: auto !important;
}

.bank-grid { min-width: 1000px; }
.bank-grid th:nth-child(1), .bank-grid td:nth-child(1) { width: 90px; text-align: center; }
.bank-grid th:nth-child(2), .bank-grid td:nth-child(2) { width: 320px; }
.bank-grid th:nth-child(3), .bank-grid td:nth-child(3) { width: 210px; }
.bank-grid th:nth-child(4), .bank-grid td:nth-child(4), .bank-grid th:nth-child(5), .bank-grid td:nth-child(5) { width: 110px; text-align: center; }
.bank-grid th:nth-child(6), .bank-grid td:nth-child(6) { width: 160px; }
.bank-form-page .entity-form { max-width: 1120px; }
.bank-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 28px; }
.bank-form-grid .field { display: grid; grid-template-columns: 110px minmax(0,1fr); align-items: center; gap: 0; }
.bank-form-grid .field label { min-height: 30px; }
.bank-form-grid .bank-code { grid-column: 1; max-width: 300px; }
.bank-form-grid .bank-name, .bank-form-grid .bank-notes { grid-column: 1 / -1; }
.bank-form-grid .bank-code input { max-width: 80px; text-align: center; }
.stock-unload-page{display:grid;grid-template-rows:auto auto minmax(0,1fr);height:100%;gap:8px}.stock-unload-page .module-header{margin-bottom:0}.stock-unload-page .top-actions{display:flex;gap:10px;align-items:center}.stock-unload-page .top-actions .button{min-width:105px}.stock-unload-filters .form-frame{padding:5px 12px 10px}.stock-unload-filter-row{display:grid;grid-template-columns:190px 220px 300px minmax(230px,360px);gap:22px}.stock-unload-filter-row .field{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center}.stock-unload-filter-row .field:nth-child(4){grid-template-columns:142px minmax(0,1fr)}.stock-unload-list{min-height:0;display:grid;grid-template-rows:27px minmax(0,1fr);border:1px solid #8fa3b9}.stock-unload-list .panel-title{padding:4px 8px;background:#abc3dd}.stock-unload-grid-frame{height:100%;border:0;border-radius:0}.stock-unload-grid{min-width:1250px;table-layout:fixed}.stock-unload-grid th:nth-child(1),.stock-unload-grid td:nth-child(1){width:65px;text-align:center}.stock-unload-grid th:nth-child(2),.stock-unload-grid td:nth-child(2){width:85px;text-align:center}.stock-unload-grid th:nth-child(3),.stock-unload-grid td:nth-child(3){width:145px;text-align:center}.stock-unload-grid th:nth-child(4),.stock-unload-grid td:nth-child(4){width:170px}.stock-unload-grid th:nth-child(5),.stock-unload-grid td:nth-child(5){width:130px}.stock-unload-grid th:nth-child(6),.stock-unload-grid td:nth-child(6){width:300px}.stock-unload-grid th:nth-child(7),.stock-unload-grid td:nth-child(7){width:100px;text-align:right}.stock-unload-grid th:nth-child(8),.stock-unload-grid td:nth-child(8){width:130px}.stock-unload-grid th:nth-child(9),.stock-unload-grid td:nth-child(9){width:75px;text-align:center}.stock-unload-edit-page .entity-form{max-width:1000px;margin:40px auto 0}.stock-unload-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px}.stock-unload-edit-grid .field{display:grid;grid-template-columns:145px minmax(0,1fr);align-items:center}.stock-unload-edit-grid .field-wide{grid-column:1/-1}.stock-unload-edit-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:10px}.stock-unload-edit-actions .button{min-width:110px}.stock-unload-report-page table{width:100%;border-collapse:collapse;font-size:8pt}.stock-unload-report-page th,.stock-unload-report-page td{border:1px solid #777;padding:3px}
.stock-unload-filter-row .field:nth-child(3){grid-template-columns:142px minmax(0,1fr)}
.stock-unload-code-pair{display:grid;grid-template-columns:110px 14px 72px;align-items:center;gap:4px}.stock-unload-code-pair span{text-align:center}.stock-unload-code-pair input{text-align:center}
.stock-unload-code-pair input[readonly]{background:rgb(230,230,240);color:#000}
.stock-unload-edit-page .entity-form{box-sizing:border-box;width:100%;max-width:none;margin:0;padding:12px}
.stock-unload-edit-grid .micronote-date-control{justify-self:start;width:204px;max-width:204px}
.stock-unload-unit-field input{justify-self:start;width:204px;max-width:204px}
.stock-unload-quantity-field input{justify-self:start;width:204px;max-width:204px;text-align:right}
.stock-unload-store-field select{justify-self:start;width:204px;max-width:204px}
.stock-unload-article-field{grid-column:2}.stock-unload-article-control{display:grid;grid-template-columns:120px minmax(240px,1fr) 34px;gap:4px;min-width:0}.stock-unload-article-control .lookup-button{height:30px;width:34px}.stock-unload-article-code{text-align:center}.stock-unload-article-lookup-tools{grid-template-columns:auto minmax(260px,1fr) auto 75px 90px 90px}.stock-unload-article-lookup-table th:nth-child(1),.stock-unload-article-lookup-table td:nth-child(1){width:150px}.stock-unload-article-lookup-table th:nth-child(3),.stock-unload-article-lookup-table td:nth-child(3){width:100px;text-align:center}
.stock-unload-stock-field{grid-column:2}.stock-unload-stock-field input{justify-self:start;width:204px;max-width:204px;text-align:right}
.stock-unload-stock-field input[readonly]{background:rgb(230,230,240);color:#000}
.stock-unload-edit-grid{grid-template-columns:minmax(360px,calc(50% - 134px)) minmax(0,1fr)}
.stock-unload-edit-grid{row-gap:12px}
.stock-unload-edit-page .form-frame{padding-bottom:20px}
.stock-unload-supplier-control{display:grid;grid-template-columns:120px minmax(240px,1fr) 34px;gap:4px;min-width:0}.stock-unload-supplier-control .lookup-button{height:30px;width:34px}.stock-unload-supplier-code{text-align:center}.stock-unload-supplier-name[readonly]{background:rgb(230,230,240);color:#000}
.stock-unload-article-description[readonly]{background:rgb(230,230,240);color:#000}
/* Vendita al banco */
.counter-sale-body { overflow:hidden; }
.counter-sale-body .app-main { max-width:none; padding:12px; }
.counter-sale-body .app-footer { display:none; }
.counter-sale { --sale-blue:#17689f; --sale-line:#a8b8c8; box-sizing:border-box; width:min(1440px,100%); margin-inline:auto; display:grid; grid-template-rows:auto auto auto minmax(0,1fr) auto; gap:8px; height:calc(100dvh - 24px); min-height:0; overflow:hidden; color:#172536; }
.counter-sale button,.counter-sale a,.counter-sale input { font:inherit; }
.counter-sale button,.counter-sale-actions a { min-height:48px; border:1px solid #7f98ad; border-radius:5px; background:linear-gradient(#fff,#d8e0e7); color:#152331; touch-action:manipulation; }
.counter-sale button:active,.counter-sale button.is-active { background:linear-gradient(#3e9bdd,#126ca9); color:#fff; }
.counter-sale button:disabled { opacity:.42; }
.counter-sale-header { display:grid; grid-template-columns:minmax(300px,1fr) 200px 190px minmax(470px,1.2fr); gap:8px; align-items:stretch; }
.counter-sale-brand,.counter-sale-date,.counter-sale-clock { min-height:64px; border:1px solid #8ea8bb; background:#f5f7ff; display:flex; align-items:center; justify-content:center; color:#073f76; text-decoration:none; }
.counter-sale-brand { justify-content:center; padding:4px 18px; position:relative; }
.counter-sale-brand img { width:52px; height:52px; object-fit:cover; position:absolute; left:18px; }
.counter-sale-brand strong { font-size:18px; font-weight:700; text-align:center; }
.counter-sale-date,.counter-sale-clock { font-size:1.55rem; font-variant-numeric:tabular-nums; }
.counter-sale-tabs { display:grid; grid-template-columns:repeat(4,1fr); gap:3px; }
.counter-sale-tabs button { min-height:64px; }
.counter-sale-customer-row { align-items:start; align-self:start; display:grid; grid-template-columns:minmax(0,1.18fr) minmax(0,.95fr); gap:8px; transform:translateY(-7px); }
.counter-sale-search { display:grid; grid-template-columns:90px minmax(250px,1fr) 120px; gap:5px; align-items:center; }
.counter-sale-search label { height:44px; min-height:44px; display:flex; align-items:center; justify-content:center; background:linear-gradient(#fff,#d8e0e7); border:1px solid #7f98ad; border-radius:5px; color:#152331; }
.counter-sale-search output { min-height:44px; display:flex; align-items:center; justify-content:center; background:#dceafa; border:1px solid #9bb3c5; }
.counter-sale-search input { height:44px; min-height:44px; background:#eef1ff; border:1px solid #9bb3c5; border-radius:5px; padding:0 12px; font-size:15px; font-weight:600; }
.counter-sale-groups { display:grid; grid-template-columns:repeat(13,minmax(82px,1fr)); gap:3px; overflow-x:auto; scrollbar-width:thin; transform:translateY(-3px); }
.counter-sale-groups button { min-height:58px; padding:4px; font-size:15px; font-weight:500; line-height:1.05; }
.counter-sale-groups button span,.counter-sale-groups button small { display:block; }
.counter-sale-groups button small { margin-top:4px; font-size:.72rem; opacity:.75; }
.counter-sale-customer { display:grid; grid-template-columns:120px 100px minmax(260px,1fr) 52px; gap:3px; }
.counter-sale-customer button { height:44px; min-height:44px; }
.counter-sale-customer strong,.counter-sale-customer span { height:44px; min-height:44px; display:flex; align-items:center; padding:0 12px; border:1px solid #9bb3c5; border-radius:5px; background:#eef1ff; }
.counter-sale-customer strong { justify-content:center; font-size:15px; font-weight:600; }
.counter-sale-customer span { font-size:15px; font-weight:600; }
.counter-sale-customer .clear { font-size:1.6rem; }
.counter-sale-workspace { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr); gap:8px; min-height:0; height:calc(100% + 13px); transform:translateY(-9px); }
.counter-sale-cart,.counter-sale-catalog { min-height:0; border:1px solid #5b91b8; background:#eef0ff; display:flex; flex-direction:column; }
.counter-sale-cart-head,.counter-sale-cart-row { display:grid; grid-template-columns:110px minmax(180px,1fr) 100px 72px 100px 110px; }
.counter-sale-article-head,.counter-sale-article-row { display:grid; grid-template-columns:110px minmax(0,1fr) 110px; min-width:0; }
.counter-sale-cart-head,.counter-sale-article-head { min-height:34px; background:#d4e3f7; border-bottom:1px solid #819bb1; }
.counter-sale-cart-head span,.counter-sale-article-head span,.counter-sale-article-head button { display:flex; align-items:center; padding:4px 8px; border-right:1px solid #9bb0c2; }
.counter-sale .counter-sale-article-head button { box-sizing:border-box; width:100%; height:30px!important; min-height:30px!important; max-height:30px!important; justify-content:flex-start; gap:6px; margin:0; border-width:0 1px 0 0; border-radius:0; background:transparent!important; color:#152331!important; box-shadow:none!important; font-size:inherit; font-weight:inherit; line-height:1; }
.counter-sale .counter-sale-article-head button:last-child { justify-content:flex-end; border-right:0; }
.counter-sale .counter-sale-article-head button.is-sorted::after { content:"▲"; font-size:9px; }
.counter-sale .counter-sale-article-head button.is-sorted:not(.is-ascending)::after { content:"▼"; }
.counter-sale .counter-sale-article-head button:focus-visible { outline:2px solid #3979ad; outline-offset:-3px; }
.counter-sale-cart-head span:nth-child(n+3) { justify-content:flex-end; text-align:right; }
.counter-sale-cart-head,
.counter-sale-article-head {
  height:30px;
  min-height:30px;
  max-height:30px;
  background:linear-gradient(#c7d7e8,#b8cbe0 52%,#a9bed6);
  border-bottom:1px solid #758aa1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),inset 0 -1px 0 rgba(72,91,112,.26);
  color:#0e1824;
  font-size:12px;
  font-weight:400;
}
.counter-sale-article-head {
  position:sticky;
  top:0;
  width:100%;
  z-index:2;
}
.counter-sale-cart-head span,
.counter-sale-article-head span {
  padding:0 8px;
  border-right:1px solid #9aafc5;
}
.counter-sale-article-head span:last-child,
.counter-sale-article-row b:last-child {
  padding-right:12px;
}
.counter-sale-article-head span:last-child {
  justify-content:flex-end;
  text-align:right;
}
.counter-sale-cart-list,.counter-sale-article-scroll { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; }
.counter-sale-article-scroll { touch-action:pan-y; cursor:grab; }
.counter-sale-article-row,.counter-sale-cart-row { width:100%; padding:0!important; border:0!important; border-bottom:1px solid var(--sale-line)!important; border-radius:0!important; background:#fff!important; text-align:left; }
.counter-sale-article-row { height:40px!important; min-height:40px!important; max-height:40px!important; }
.counter-sale-cart-row { height:40px!important; min-height:40px!important; max-height:40px!important; }
.counter-sale-article-row>* ,.counter-sale-cart-row>* { display:flex; align-items:center; padding:6px 9px; border-right:1px solid #c1ccd5; overflow:hidden; }
.counter-sale-cart-row>* { font-size:15px; font-weight:520; }
.counter-sale-article-row b,.counter-sale-cart-row b,.counter-sale-cart-row span:nth-last-child(-n+4) { justify-content:flex-end; font-variant-numeric:tabular-nums; }
.counter-sale-article-row strong,
.counter-sale-article-row b { font-size:16px; font-weight:600; }
.counter-sale-article-row.is-selected,.counter-sale-cart-row.is-selected { background:#cce5f7!important; box-shadow:inset 5px 0 #1681c4; }
.counter-sale-article-row.is-selected { box-shadow:none; }
.counter-sale-empty { margin:auto; color:#60748a; font-size:1.08rem; }
.counter-sale-catalog>small { padding:4px 10px; text-align:right; color:#577086; }
.counter-sale-footer { display:grid; grid-template-columns:minmax(400px,.75fr) minmax(700px,1.55fr); gap:12px; }
.counter-sale-totals { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; }
.counter-sale-totals div { height:68px; min-height:68px; max-height:68px; background:#d4e3f7; padding:6px; text-align:center; border:1px solid #9bb3c5; border-radius:5px; }
.counter-sale-totals span,.counter-sale-totals strong { display:block; }
.counter-sale-totals strong { align-items:center; justify-content:center; box-sizing:border-box; display:flex; height:26px; min-height:26px; max-height:26px; margin-top:3px; padding:2px 6px; background:#fff; border-radius:5px; font-size:16px; font-weight:620; }
.counter-sale-actions { display:grid; grid-template-columns:repeat(8,minmax(88px,1fr)); gap:4px; }
.counter-sale-actions button,.counter-sale-actions a { height:68px; min-height:68px; max-height:68px; display:flex; align-items:center; justify-content:center; padding:6px; font-size:15px; font-weight:500; text-align:center; text-decoration:none; }
.counter-sale-actions button,
.counter-sale-actions a {
  background:linear-gradient(#fff,#d8e0e7);
  color:#152331;
}
.counter-sale-actions button:not(:disabled),
.counter-sale-actions a {
  border:2px solid #879daf;
  color:#0b1b2b;
  font-weight:600;
  box-shadow:none;
}
.counter-sale-actions button:disabled {
  background:linear-gradient(#f7f8f9,#dde2e6);
  color:#7a8490;
  opacity:1;
}
.counter-sale-actions button:not(:disabled):active,
.counter-sale-actions a:active {
  background:linear-gradient(#52aee5,#1474b4);
  color:#fff;
}
.counter-sale-dialog .primary { background:linear-gradient(#52aee5,#1474b4); color:#fff; }
.counter-sale-actions .danger { color:#152331; }
.counter-sale-overlay { position:fixed; inset:0; z-index:1200; display:grid; place-items:center; padding:18px; background:rgba(13,32,49,.5); }
.counter-sale-overlay[hidden] { display:none; }
.counter-sale-article-card-overlay { position:fixed; inset:0; z-index:1250; display:grid; place-items:center; padding:8px; background:transparent; }
.counter-sale-article-card-overlay[hidden] { display:none; }
.counter-sale-article-card-dialog {
  width:min(1400px,calc(100vw - 16px));
  height:min(780px,calc(100vh - 16px));
  overflow:auto;
  border:1px solid #8da8bf;
  border-radius:8px;
  background:
    linear-gradient(rgba(220,236,249,.9),rgba(220,236,249,.9)),
    url("/images/menu-background.jpg") center / cover no-repeat;
  box-shadow:0 14px 32px rgba(15,43,67,.24);
}
.counter-sale-article-card-dialog iframe { display:block; width:100%; height:100%; min-width:1360px; border:0; }
.counter-sale-dialog { width:min(940px,96vw); max-height:92vh; overflow:auto; padding:14px; border:2px solid #6b8ba4; background:#f1f3ff; box-shadow:0 18px 55px #102b3d66; }
.counter-sale-dialog>header { display:flex; align-items:center; justify-content:space-between; min-height:50px; padding:0 8px 0 16px; background:#2f78c9; color:#fff; }
.counter-sale-dialog>header h2 { margin:0; font-size:1.18rem; }
.counter-sale-dialog>header button { min-width:46px; font-size:1.45rem; }
.row-dialog { width:min(940px,96vw); min-height:330px; padding:14px; border:2px solid #6b8ba4; border-radius:8px; background:#f1f3ff; }
.row-dialog>header { min-height:38px; height:38px; max-height:38px; padding:0 14px; border-radius:5px; }
.row-dialog>header h2 { font-size:15px; font-weight:600; }
.row-dialog>header button { display:none; }
.counter-sale-row-panel { min-height:220px; margin:12px 0 0; padding:16px; border:1px solid #a5b8ca; border-radius:7px; background:#f8faff; }
.counter-sale-row-article { width:100%; max-width:none; display:grid; grid-template-columns:118px 150px minmax(0,1fr); gap:4px; margin:0; }
.counter-sale-row-article>* { box-sizing:border-box; height:36px; min-height:36px; display:flex; align-items:center; padding:0 10px; border:1px solid #93a7bd; border-radius:5px; background:#c8dbef; font-size:13px; font-weight:500; }
.counter-sale-row-article strong { justify-content:center; background:#e1e6ec; font-size:15px; font-weight:600; }
.counter-sale-row-article b { background:#e1e6ec; font-size:15px; font-weight:600; }
.counter-sale-row-fields { display:grid; grid-template-columns:minmax(390px,1.15fr) 222px minmax(250px,.95fr); gap:8px; margin:14px 0 0; padding:0; border:0; background:transparent; }
.counter-sale-row-column { display:flex; flex-direction:column; gap:8px; min-width:0; }
.counter-sale-row-info { justify-content:flex-start; }
.counter-sale-row-column label { display:grid; grid-template-columns:118px minmax(0,1fr); align-items:center; gap:4px; }
.counter-sale-row-column.counter-sale-row-info label { grid-template-columns:118px 150px; justify-content:start; }
.counter-sale-row-column.counter-sale-row-measures label { grid-template-columns:118px 100px; justify-content:start; }
.counter-sale-row-column label>span { box-sizing:border-box; align-items:center; display:flex; height:36px; min-height:36px; padding:0 10px; border:1px solid #a5b8ca; border-radius:5px; background:#c8dbef; font-size:13px; font-weight:500; white-space:nowrap; }
.counter-sale-row-column input { box-sizing:border-box; height:36px!important; min-height:36px!important; max-height:36px!important; width:100%; border:1px solid #93a7bd!important; border-radius:5px!important; background:#fff; font-size:13px!important; font-weight:520; }
.counter-sale-last-price { display:grid; grid-template-columns:118px 150px 32px minmax(72px,1fr); align-items:center; gap:4px; }
.counter-sale-last-price>span { box-sizing:border-box; align-items:center; display:flex; height:36px; padding:0 10px; border:1px solid #a5b8ca; border-radius:5px; background:#c8dbef; font-size:13px; font-weight:500; white-space:nowrap; }
.counter-sale-last-price>em { font-style:normal; text-align:center; }
.counter-sale-dialog .counter-sale-last-price input { box-sizing:border-box; height:36px!important; min-height:36px!important; max-height:36px!important; padding:0 10px; border:1px solid #93a7bd; border-radius:5px; background:#e1e6ec; color:#172536; font-size:13px; font-weight:520; text-align:right; }
.counter-sale-row-column input[readonly] { background:#e6e6f0; color:#172536; }
.counter-sale-row-column input[data-row-unit] { text-align:left; }
.counter-sale-row-values input[data-row-quantity] { background:#fff; }
.counter-sale-dialog label { display:grid; gap:4px; }
.counter-sale-dialog input { min-height:48px; padding:0 10px; border:2px solid #8fa8ba; font-size:1.1rem; text-align:right; }
.counter-sale-dialog .counter-sale-row-column input { padding:0 10px; }
.counter-sale-dialog input:focus { position:relative; border-color:#1474b4!important; outline:2px solid #9bd4ff; outline-offset:-1px; }
.counter-sale-dialog>footer { display:flex; justify-content:flex-end; gap:8px; margin-top:10px; }

body.sales-document-module .app-footer { display:none; }
.sales-document-page.supplier-form-page.data-form-skin .top-actions.sales-document-toolbar-actions>.button,
.sales-document-page.supplier-form-page.data-form-skin .top-actions.sales-document-toolbar-actions>button { flex:0 0 125px; min-width:125px; width:125px; }
.sales-document-page .entity-form { padding-bottom:10px; }
.sales-document-general-grid { grid-template-columns:430px minmax(0,1fr); }
.sales-document-customer { grid-column:2; grid-row:1; }
.sales-document-store { grid-column:2; grid-row:2; }
.sales-document-lines { height:360px; }
.sales-document-lines .stock-load-side-actions,
.sales-document-lines .stock-load-lines-wrap { height:360px; max-height:360px; }
.sales-document-grid th:nth-child(1){width:130px}
.sales-document-grid th:nth-child(2){width:auto}
.sales-document-grid th:nth-child(3){width:75px}
.sales-document-grid th:nth-child(n+4){width:90px}
.sales-document-grid th:nth-child(10){width:110px}
.sales-document-grid tbody tr.selected-row td,
.sales-document-grid tbody tr.selected-row input { background:rgb(190,203,214)!important; }
.sales-document-footer { justify-content:flex-start; margin-top:2px; }
.stock-load-footer-actions > .sales-document-totals { display:grid; grid-template-columns:repeat(6,125px); gap:8px; padding:5px 8px 11px; border:1px solid #8fa3b9; background:#eef1ff; }
.sales-document-totals>div,.sales-document-totals>label { display:grid; grid-template-rows:26px 30px; width:125px; min-width:0; margin:0; transform:translateY(3px); }
.sales-document-totals span { display:flex; align-items:center; justify-content:center; width:100%; min-width:0; max-width:100%; min-height:26px; padding:0 8px; border:1px solid #8a8f98; border-radius:5px; background:#b8cbe0; box-sizing:border-box; transform:translateY(-3px); font-size:13px; font-weight:500; }
.sales-document-totals strong,.sales-document-totals input { width:100%; min-width:0; max-width:100%; height:30px; padding:4px 8px; border:1px solid #93a7bd; border-radius:5px; background:#fff; box-sizing:border-box; text-align:right; font-size:14px; font-weight:600; }
.sales-document-article-lookup { position:fixed; left:-9999px; top:-9999px; }
.sales-document-row-article { grid-template-columns:118px 150px 36px minmax(0,1fr); }
.sales-document-row-article>input { box-sizing:border-box; width:150px; padding:0 10px; border:1px solid #93a7bd; border-radius:5px; background:#fff; text-align:center; font-size:15px; font-weight:600; }
.sales-document-row-article>.stock-load-square-button { width:36px; min-width:36px; padding:0; background-color:#edf4fb; }
.sales-document-row-article>input:read-only { background:#e1e6ec; }
.sales-document-line-dialog { width:min(900px,94vw); }
.row-dialog>footer button { width:120px; min-width:120px; height:44px; min-height:44px; border-radius:5px; font-size:15px; font-weight:500; }
.close-dialog { width:min(570px,94vw); }
.close-dialog>header { min-height:36px; height:36px; margin:5px 16px; padding:0 12px; background:#6aa4dc; color:#0b1420; }
.close-dialog>header h2 { font-size:13px; font-weight:500; }
.counter-sale-close-content { display:grid; grid-template-columns:minmax(0,1fr) 128px; gap:18px; padding:16px; }
.counter-sale-close-fields { display:grid; gap:8px; padding:10px; border:1px solid #9baabd; border-radius:3px; background:#f4f6fb; }
.counter-sale-close-fields>div,
.counter-sale-close-fields>label { display:grid; grid-template-columns:minmax(0,1fr) 155px; align-items:center; gap:2px; margin:0; }
.counter-sale-close-fields span { height:32px; min-height:32px; max-height:32px; display:flex; align-items:center; padding:0 10px; background:#b8cbe0; border-radius:5px 0 0 5px; font-size:13px; font-weight:500; }
.counter-sale-close-fields strong,
.counter-sale-close-fields input { box-sizing:border-box; width:100%; height:32px; min-height:32px; max-height:32px; padding:0 10px; border:1px solid #93a7bd; border-radius:0 5px 5px 0; background:#fff; color:#132238; text-align:right; font-size:13px; font-weight:520; line-height:1; }
.counter-sale-close-fields strong { display:flex; align-items:center; justify-content:flex-end; background:#e1e6ec; }
.counter-sale-close-fields input[data-close-discount] { background:#fff; }
.counter-sale-close-fields input:disabled { background:#e1e6ec; color:#788492; }
.counter-sale-close-content>footer { display:grid; align-content:start; gap:8px; padding:0; border:0; }
.counter-sale-close-content>footer button { min-height:58px; margin:0; border:1px solid #8da1b4; background:linear-gradient(#fff,#dfe6ec); color:#132238; font-size:15px; font-weight:500; box-shadow:none; }
.counter-sale-close-content>footer button.primary { border:2px solid #3979ad; background:linear-gradient(#fff,#dfe6ec); color:#132238; }
.counter-sale-close-content>footer button:focus { border:2px solid #3979ad; background:linear-gradient(#fff,#dfe6ec); color:#132238; outline:none; box-shadow:0 0 0 2px rgba(57,121,173,.18); }
@media (max-width:1280px) {
  .counter-sale { gap:6px; }
  .counter-sale-header { grid-template-columns:minmax(220px,1fr) 135px 125px minmax(390px,1.4fr); gap:5px; }
  .counter-sale-brand { padding-left:10px; padding-right:10px; }
  .counter-sale-brand img { left:10px; width:46px; height:46px; }
  .counter-sale-date,.counter-sale-clock { font-size:1.15rem; }
  .counter-sale-tabs { grid-column:auto; }
  .counter-sale-tabs button { padding-left:4px; padding-right:4px; font-size:14px; }
  .counter-sale-customer-row { grid-template-columns:minmax(0,1.18fr) minmax(0,.95fr); gap:6px; }
  .counter-sale-customer { grid-template-columns:95px 78px minmax(150px,1fr) 44px; }
  .counter-sale-search { grid-template-columns:72px minmax(150px,1fr) 92px; }
  .counter-sale-workspace { grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr); gap:6px; }
  .counter-sale-cart-head,.counter-sale-cart-row { grid-template-columns:76px minmax(120px,1fr) 74px 52px 74px 86px; }
  .counter-sale-article-head,.counter-sale-article-row { grid-template-columns:78px minmax(0,1fr) 88px; }
  .counter-sale-footer { grid-template-columns:300px minmax(0,1fr); gap:6px; }
  .counter-sale-totals { gap:4px; }
  .counter-sale-actions { gap:3px; }
  .counter-sale-actions button,.counter-sale-actions a { min-width:0; padding:4px; font-size:14px; }
}
@media (max-width:900px) {
  .counter-sale-header { grid-template-columns:1fr 135px 125px; }
  .counter-sale-tabs { grid-column:1/-1; }
  .counter-sale-customer-row { grid-template-columns:1fr; }
  .counter-sale-workspace { grid-template-columns:1fr; grid-template-rows:minmax(220px,.8fr) minmax(280px,1fr); }
  .counter-sale-footer { grid-template-columns:1fr; }
}
@media (pointer:coarse) {
  .counter-sale button,.counter-sale-actions a { min-height:54px; }
  .counter-sale-article-row { height:40px!important; min-height:40px!important; max-height:40px!important; }
  .counter-sale-cart-row { height:40px!important; min-height:40px!important; max-height:40px!important; }
}
