.erp-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #f9fafb;
  cursor: pointer;
}

.erp-icon-btn:disabled,
.erp-icon-btn.is-disabled {
  opacity: .45;
  cursor: not-allowed;
}

.erp-icon-btn:disabled:hover,
.erp-icon-btn.is-disabled:hover {
  background: transparent;
}

.erp-icon-btn > i,
.erp-icon-btn > svg,
.erp-icon-btn .lucide,
.erp-icon-btn .icon {
  width: var(--erp-icon-size) !important;
  height: var(--erp-icon-size) !important;
}

.erp-icon-btn > i > svg,
.erp-icon-btn > svg {
  display: block;
  flex-shrink: 0;
  width: var(--erp-icon-size) !important;
  height: var(--erp-icon-size) !important;
}

.erp-icon-btn-fallback {
  display: block;
  font-size: 26px;
  line-height: 1;
}

[data-lucide],
.lucide {
  width: var(--erp-icon-size);
  height: var(--erp-icon-size);
}

.erp-shoe-category-icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: var(--erp-category-icon-size);
  height: var(--erp-category-icon-size);
  color: currentColor;
}

.erp-shoe-category-icon > :is(i, svg, .lucide, .erp-shoe-category-icon__svg) {
  display: block;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}

.erp-shoe-category-icon__svg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.erp-shoe-category-icon__svg[src*="/assets/icons/shoes/kids/"] {
  transform: scale(1.18);
  transform-origin: center;
}

.erp-category-visual {
  overflow: hidden;
  border-radius: var(--erp-ui-radius-sm, 8px);
  background: var(--erp-category-icon-bg);
  box-shadow: var(--erp-category-icon-glow);
}

.erp-category-visual__image {
  object-fit: cover;
}

.erp-shoe-category-icon--table {
  width: var(--erp-category-icon-table-size);
  height: var(--erp-category-icon-table-size);
  color: var(--erp-ui-muted, #64748b);
}

.erp-shoe-category-icon--detail {
  width: var(--erp-category-icon-detail-size);
  height: var(--erp-category-icon-detail-size);
}

.erp-shoe-category-icon--badge {
  width: var(--erp-category-icon-badge-size);
  height: var(--erp-category-icon-badge-size);
}

.erp-shoe-category-icon--filter {
  width: var(--erp-category-icon-filter-size);
  height: var(--erp-category-icon-filter-size);
}

.erp-shoe-category-name {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.erp-shoe-category-name strong {
  min-width: 0;
}

.erp-shoe-category-badges {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 4px;
  min-width: 0;
}

.erp-shoe-category-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 100%;
  min-height: 26px;
  padding: 3px 7px;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: 6px;
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-ui-text, #111827);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.2;
}

.erp-shoe-category-badge span:last-child {
  overflow: hidden;
  min-width: 0;
  text-overflow: ellipsis;
}

.app-sidebar {
  position: fixed;
  top: var(--erp-header-h);
  left: 0;
  bottom: 0;
  width: var(--erp-sidebar-current-w);
  max-width: var(--erp-sidebar-w);
  background: #fff;
  border-right: 1px solid #d1d5db;
  padding: 0;
  transition: width 0.2s ease, transform 0.2s ease;
  display: flex;
  flex-direction: column;
  z-index: 1190;
}

.sidebar-title {
  font-weight: 700;
  color: #334155;
  margin-bottom: 10px;
}

.sidebar-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}

.app-sidebar .sidebar-main-nav {
  overflow-y: auto;
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 10px;
}

.app-sidebar ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.sidebar-list {
  display: flex;
  flex-direction: column;
  gap: var(--erp-ui-space-3, 12px);
  width: 100%;
}

.sidebar-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.sidebar-group-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #64748b;
  padding: 8px 4px 6px;
  font-weight: 700;
}

.sidebar-group-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.sidebar-group-list li {
  margin-bottom: 4px;
}

.app-sidebar :is(a, .sidebar-action-button) {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 34px 8px 8px;
  border-radius: 8px;
  color: #64748b;
  font-weight: 600;
  border: 0;
  background: transparent;
  transition: background 0.15s ease, color 0.15s ease;
}

.app-sidebar .sidebar-action-button {
  width: 100%;
  cursor: pointer;
  font: inherit;
  text-align: left;
}

.sidebar-item-label {
  min-width: 0;
  flex: 1 1 auto;
  font-size: 13px;
  line-height: 1.25;
}

.sidebar-item-badge {
  position: absolute;
  top: 4px;
  right: 5px;
  min-width: 19px;
  height: 19px;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0 5px;
  border: 2px solid var(--erp-system-badge-border);
  border-radius: 999px;
  background: var(--erp-system-badge-bg) !important;
  color: var(--erp-system-badge-text) !important;
  box-shadow: var(--erp-system-badge-shadow);
  font-size: 11px;
  line-height: 1;
  font-weight: 850;
  z-index: 2;
}

.sidebar-item-badge[hidden] {
  display: none;
}

.sidebar-item-icon {
  display: inline-flex;
  width: var(--erp-icon-size);
  height: var(--erp-icon-size);
  color: inherit;
  stroke-width: 2;
  flex-shrink: 0;
  transition: color 0.15s ease;
}

.sidebar-item-icon > i {
  width: var(--erp-icon-size);
  height: var(--erp-icon-size);
}

.sidebar-item-avatar {
  overflow: hidden;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f8fafc;
  color: #111827;
  border: 1px solid rgba(15, 23, 42, .10);
  font-size: 11px;
  font-weight: 850;
  line-height: 1;
}

.sidebar-item-avatar img,
.sidebar-item-avatar > span {
  display: block;
  width: 100%;
  height: 100%;
}

.sidebar-item-avatar img {
  object-fit: cover;
}

.sidebar-item-avatar > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.sidebar-group-title span {
  display: inline;
  width: auto;
  height: auto;
  font-weight: 600;
  font-size: 10px;
  letter-spacing: 0.2px;
  color: inherit;
}

.sidebar-group-title span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.app-sidebar a.active {
  background: #f3f4f6;
  color: #0f172a;
}

.app-sidebar :is(a, .sidebar-action-button):hover,
.app-sidebar :is(a, .sidebar-action-button):focus-visible {
  color: #0f172a;
  background: #e5e7eb;
  outline: none;
}

.app-sidebar :is(a, .sidebar-action-button):hover .sidebar-item-icon,
.app-sidebar :is(a, .sidebar-action-button):hover .sidebar-item-label,
.app-sidebar :is(a, .sidebar-action-button):focus-visible .sidebar-item-icon,
.app-sidebar :is(a, .sidebar-action-button):focus-visible .sidebar-item-label,
.app-sidebar a.active .sidebar-item-icon,
.app-sidebar a.active .sidebar-item-label {
  color: #0f172a;
}

body.sidebar-collapsed .app-sidebar .sidebar-title,
body.sidebar-collapsed .app-sidebar .sidebar-group-title,
body.sidebar-collapsed .app-sidebar .sidebar-brand,
body.sidebar-collapsed .app-sidebar .sidebar-item-label {
  display: none;
}

body.sidebar-collapsed .app-sidebar :is(a, .sidebar-action-button) {
  justify-content: center;
  width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  margin: 0 auto;
  border-radius: 8px;
}

body.sidebar-collapsed .app-sidebar .sidebar-item-badge {
  top: 3px;
  right: 3px;
}

body.sidebar-collapsed .app-sidebar .sidebar-group {
  gap: 4px;
}

body.sidebar-collapsed .app-sidebar .sidebar-item-icon,
body.sidebar-collapsed .app-sidebar .sidebar-item-icon > i,
body.sidebar-collapsed .app-sidebar .sidebar-item-icon > i > svg,
body.sidebar-collapsed .app-sidebar .sidebar-item-icon .lucide {
  width: 18px;
  height: 18px;
}

body.sidebar-collapsed .app-sidebar .sidebar-item-avatar,
body.sidebar-collapsed .app-sidebar .sidebar-item-avatar img,
body.sidebar-collapsed .app-sidebar .sidebar-item-avatar > span {
  width: 28px;
  height: 28px;
}

body.sidebar-collapsed .app-sidebar [data-lucide],
body.sidebar-collapsed .app-sidebar .lucide {
  width: 18px;
  height: 18px;
}

.app-sidebar-backdrop {
  display: none;
}

#mainContent {
  padding: calc(var(--erp-page-toolbar-h) + 16px) 16px 16px;
  margin-left: var(--erp-sidebar-current-w);
  min-height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h));
}

#mainContent.erp-spa-content-enter {
  animation: erp-spa-content-enter var(--erp-spa-transition-duration) var(--erp-spa-transition-easing) both;
  will-change: opacity;
}

#mainContent.erp-spa-content-swapping {
  overflow-anchor: none;
  pointer-events: none;
}

@keyframes erp-spa-content-enter {
  from { opacity: .88; }
  to { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  #mainContent.erp-spa-content-enter {
    animation: none;
    will-change: auto;
  }
}

body:not(.erp-embedded-page) #mainContent:has(.erp-document-wizard) {
  height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h));
  min-height: 0;
  overflow: hidden;
  padding-top: calc(var(--erp-page-toolbar-h) + var(--erp-document-wizard-gap));
  padding-bottom: var(--erp-document-wizard-gap);
}

body:not(.erp-embedded-page) #mainContent:has(.erp-document-wizard) > .page {
  display: grid;
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

body:not(.erp-embedded-page) #mainContent:has(.erp-document-wizard) .erp-document-form.erp-document-wizard:not(.erp-account-editor) {
  grid-template-rows: auto minmax(0, 1fr);
  height: 100%;
  min-height: 0;
}

body:not(.erp-embedded-page) #mainContent:has(.erp-invoice-create-form--full) {
  height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h));
  min-height: 0;
  overflow: hidden;
}

body:not(.erp-embedded-page) #mainContent:has(.erp-invoice-create-form--full) > .page-invoices--create {
  display: flex;
  flex-direction: column;
  gap: var(--erp-ui-space-3, 12px);
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.erp-invoice-create-form--full {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
}

.settings-layout.erp-invoice-create-layout {
  grid-template-columns: minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.settings-layout.erp-invoice-create-layout > .settings-content-wrap {
  height: 100%;
}

.settings-form.erp-invoice-create-form__content {
  display: grid;
  gap: 18px;
  align-content: start;
  min-height: 0;
  max-height: none;
}

body:not(.erp-embedded-page) #mainContent:has(.erp-invoice-feed-checkout-form) .erp-document-form.erp-document-wizard.erp-invoice-feed-checkout-form {
  grid-template-rows: minmax(0, 1fr);
}

body:not(.erp-embedded-page) #mainContent:has(> .erp-register) {
  padding: var(--erp-page-toolbar-h) 0 0;
}

body:not(.erp-embedded-page) #mainContent:has(> .page-messages) {
  height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h));
  min-height: 0;
  overflow: hidden;
  padding: var(--erp-page-toolbar-h) 0 0;
}

body:not(.erp-embedded-page).erp-home-page #mainContent {
  height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h));
  min-height: 0;
  overflow: hidden;
  padding: calc(var(--erp-page-toolbar-h) + var(--erp-ui-space-3)) 16px var(--erp-ui-space-3);
}

body:not(.erp-embedded-page).erp-home-page #mainContent > .page-home {
  display: grid;
  grid-template-rows: minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

body:not(.erp-embedded-page).erp-account-profile-body #mainContent {
  height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h));
  min-height: 0;
  overflow: hidden;
  padding: calc(var(--erp-page-toolbar-h) + var(--erp-ui-space-3)) 16px var(--erp-ui-space-3);
}

body:not(.erp-embedded-page).erp-account-profile-body #mainContent > .erp-account-profile-page {
  display: grid;
  grid-template-rows: minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.app-footer {
  background: #e5e7eb;
  color: #374151;
  position: fixed;
  left: var(--erp-sidebar-current-w);
  width: calc(100% - var(--erp-sidebar-current-w));
  bottom: 0;
  z-index: 1199;
  height: var(--erp-footer-h);
  display: flex;
  align-items: center;
  padding: 0 14px;
  justify-content: flex-end;
  gap: 8px;
  transition: box-shadow 0.18s ease;
}

.app-footer-copy {
  color: #64748b;
  white-space: nowrap;
}

body.erp-home-page {
  overflow: hidden;
  padding-bottom: var(--erp-footer-h);
}

body.erp-account-profile-body {
  overflow: hidden;
  padding-bottom: var(--erp-footer-h);
}

body.erp-home-page .app-footer,
body.erp-account-profile-body .app-footer {
  position: fixed;
  left: var(--erp-sidebar-current-w);
  width: calc(100% - var(--erp-sidebar-current-w));
  margin-left: 0;
}

.erp-mobile-page-header-slot,
.erp-mobile-page-header {
  display: none;
}

@media (max-width: 900px) {
  body:has(> .erp-mobile-page-header-slot) {
    --erp-mobile-page-header-h: calc(54px + env(safe-area-inset-top));
    --erp-header-h: var(--erp-mobile-page-header-h);
    --erp-page-toolbar-h: 0px;
  }

  .erp-mobile-page-header-slot {
    position: relative;
    z-index: 1080;
    display: block;
    width: 100%;
    height: var(--erp-mobile-page-header-h, 54px);
    min-height: var(--erp-mobile-page-header-h, 54px);
  }

  .erp-mobile-page-header {
    display: grid;
    grid-template-columns: minmax(44px, 1fr) minmax(0, auto) minmax(44px, 1fr);
    align-items: center;
    gap: var(--erp-ui-space-2, 8px);
    box-sizing: border-box;
    width: 100%;
    height: var(--erp-mobile-page-header-h, 54px);
    min-height: var(--erp-mobile-page-header-h, 54px);
    padding: env(safe-area-inset-top) max(12px, env(safe-area-inset-right)) 0 max(12px, env(safe-area-inset-left));
    border-bottom: 1px solid color-mix(in srgb, var(--erp-ui-border-soft, #e5e7eb) 82%, transparent);
    background: var(--erp-ui-surface, #fff);
    color: var(--erp-ui-text, #111827);
  }

  .erp-mobile-page-header.is-fixed {
    position: fixed;
    inset: 0 0 auto;
    z-index: 1080;
    background: color-mix(in srgb, var(--erp-ui-surface, #fff) 94%, transparent);
    box-shadow: var(--erp-shadow-sm, 0 8px 22px rgba(15, 23, 42, .12));
    backdrop-filter: blur(18px);
    animation: erp-mobile-page-header-reveal .28s cubic-bezier(.2, .8, .2, 1) both;
  }

  .erp-mobile-page-header--inverse,
  .erp-mobile-page-header--inverse.is-fixed {
    border-bottom-color: rgba(255, 255, 255, .16);
    background: rgba(8, 31, 67, .94);
    color: #fff;
  }

  .erp-mobile-page-header__leading,
  .erp-mobile-page-header__trailing {
    display: flex;
    align-items: center;
    min-width: 0;
  }

  .erp-mobile-page-header__leading {
    grid-column: 1;
    justify-content: flex-start;
  }

  .erp-mobile-page-header__trailing {
    grid-column: 3;
    justify-content: flex-end;
    gap: var(--erp-ui-space-1, 4px);
  }

  .erp-mobile-page-header__title {
    grid-column: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--erp-ui-space-1, 4px);
    min-width: 0;
    max-width: min(50vw, 320px);
    overflow: hidden;
    color: inherit;
    font-size: 14px;
    font-weight: 850;
    line-height: 1.2;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .erp-mobile-page-header__title > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .erp-mobile-page-header__title > :is(i, svg, .lucide) {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    stroke-width: 2;
  }

  .erp-mobile-page-header__action,
  .erp-mobile-page-header__action:link,
  .erp-mobile-page-header__action:visited {
    position: relative;
    display: inline-grid;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    place-items: center;
    padding: 0;
    border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
    border-radius: var(--erp-ui-radius-pill, 999px);
    background: var(--erp-ui-surface, #fff);
    color: var(--erp-ui-text, #111827);
    box-shadow: var(--erp-shadow-xs, 0 4px 12px rgba(15, 23, 42, .08));
    cursor: pointer;
    text-decoration: none;
    transition: border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease;
  }

  .erp-mobile-page-header__action:hover,
  .erp-mobile-page-header__action.is-active {
    border-color: color-mix(in srgb, var(--erp-action-active-bg, #2563eb) 38%, var(--erp-ui-border-soft, #e5e7eb));
    color: var(--erp-action-active-bg, #2563eb);
  }

  .erp-mobile-page-header__action:hover {
    transform: translateY(-1px);
  }

  .erp-mobile-page-header__action:focus-visible {
    outline: 3px solid var(--erp-focus, rgba(37, 99, 235, .24));
    outline-offset: 2px;
  }

  .erp-mobile-page-header__action .lucide {
    width: 18px;
    height: 18px;
    stroke-width: 2;
  }

  .erp-mobile-page-header__action--account {
    overflow: hidden;
  }

  .erp-mobile-page-header__avatar,
  .erp-mobile-page-header__avatar > img,
  .erp-mobile-page-header__avatar > span {
    display: block;
    width: 30px;
    height: 30px;
    border-radius: var(--erp-ui-radius-pill, 999px);
  }

  .erp-mobile-page-header__avatar {
    overflow: hidden;
    background: var(--erp-ui-surface-muted, #f8fafc);
    color: var(--erp-ui-text, #111827);
  }

  .erp-mobile-page-header__avatar > img {
    object-fit: cover;
    object-position: center;
  }

  .erp-mobile-page-header__avatar > span {
    display: inline-grid;
    place-items: center;
    font-size: 10px;
    font-weight: 850;
    line-height: 1;
  }

  .erp-mobile-page-header__avatar > [hidden] {
    display: none;
  }

  .erp-mobile-page-header--inverse .erp-mobile-page-header__action {
    border-color: rgba(255, 255, 255, .36);
    background: rgba(255, 255, 255, .14);
    color: #fff;
    box-shadow: var(--erp-shadow-xs, 0 4px 12px rgba(15, 23, 42, .12));
    backdrop-filter: blur(12px);
  }

  .erp-mobile-page-header--inverse .erp-mobile-page-header__action:hover,
  .erp-mobile-page-header--inverse .erp-mobile-page-header__action.is-active {
    border-color: rgba(255, 255, 255, .72);
    background: rgba(255, 255, 255, .22);
    color: #fff;
  }

}

@keyframes erp-mobile-page-header-reveal {
  from {
    opacity: 0;
    transform: translateY(calc(-100% - 12px));
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .erp-mobile-page-header.is-fixed {
    animation: none;
  }
}

@media (max-width: 360px) {
  .erp-mobile-page-header {
    grid-template-columns: minmax(40px, 1fr) minmax(0, auto) minmax(40px, 1fr);
    gap: var(--erp-ui-space-1, 4px);
  }

  .erp-mobile-page-header__title {
    max-width: 44vw;
    font-size: 13px;
  }
}

@media (max-width: 300px) {
  .erp-mobile-page-header {
    grid-template-columns: minmax(36px, 1fr) minmax(0, auto) minmax(36px, 1fr);
  }

  .erp-mobile-page-header__action,
  .erp-mobile-page-header__action:link,
  .erp-mobile-page-header__action:visited {
    width: 32px;
    height: 32px;
    flex-basis: 32px;
  }
}

.app-mobile-bottom-menu {
  display: none;
}

.app-mobile-bottom-menu--cols-1 { --app-mobile-nav-columns: 1; }
.app-mobile-bottom-menu--cols-2 { --app-mobile-nav-columns: 2; }
.app-mobile-bottom-menu--cols-3 { --app-mobile-nav-columns: 3; }
.app-mobile-bottom-menu--cols-4 { --app-mobile-nav-columns: 4; }
.app-mobile-bottom-menu--cols-5 { --app-mobile-nav-columns: 5; }

.app-mobile-bottom-menu-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.app-mobile-bottom-menu-item {
  position: relative;
  font: inherit;
  border: 0;
  background: transparent;
  color: #334155;
  width: 100%;
  cursor: pointer;
  padding: 8px 4px;
  border-radius: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  font-size: 12px;
  line-height: 1.2;
  color: #475569;
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease;
}

button.app-mobile-bottom-menu-item {
  -webkit-appearance: none;
  appearance: none;
}

.app-mobile-bottom-menu-item .app-mobile-bottom-menu-icon {
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  transition: color var(--erp-ui-transition, 180ms ease), transform var(--erp-ui-transition, 180ms ease);
}

.app-mobile-bottom-menu-item .app-mobile-bottom-menu-icon > i {
  width: 20px;
  height: 20px;
}

.app-mobile-bottom-menu-avatar {
  width: 24px;
  height: 24px;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border, #d1d5db);
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-ui-text, #111827);
  font-size: 9px;
  font-weight: 800;
  line-height: 1;
}

.app-mobile-bottom-menu-avatar img,
.app-mobile-bottom-menu-avatar > span {
  display: block;
  width: 100%;
  height: 100%;
}

.app-mobile-bottom-menu-avatar img {
  object-fit: cover;
}

.app-mobile-bottom-menu-avatar > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.app-mobile-bottom-menu-item .app-mobile-bottom-menu-label {
  white-space: nowrap;
  font-size: 11px;
}

.app-mobile-bottom-menu-item:is(:hover, :focus-visible, .is-active, [aria-expanded="true"]) {
  background: transparent;
  box-shadow: none;
  outline: none;
}

.app-mobile-bottom-menu-item:is(:hover, :focus-visible, .is-active, [aria-expanded="true"])
  > .app-mobile-bottom-menu-icon {
  color: var(--erp-action-accent-strong, #1877f2);
  transform: translateY(-1px);
}

.app-mobile-bottom-menu-item:is(.is-active, [aria-expanded="true"])::after {
  content: "";
  position: absolute;
  right: 50%;
  bottom: 3px;
  width: 5px;
  height: 5px;
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: var(--erp-action-accent-strong, #1877f2);
  transform: translateX(50%);
  pointer-events: none;
}

.sidebar-footer-stack {
  margin-top: auto;
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  overflow: hidden;
}

.sidebar-home-bar {
  width: 100%;
  padding: 8px 10px;
  background: #fff;
  border-bottom: 1px solid #e5e7eb;
  flex-shrink: 0;
  display: grid;
  gap: 4px;
}

.sidebar-logout-bar {
  width: 100%;
  padding: 8px 10px;
  background: #fff;
  border-top: 1px solid #e5e7eb;
}

.sidebar-bottom-bar {
  width: 100%;
  height: var(--erp-footer-h);
  display: flex;
  align-items: center;
  background: var(--erp-sidebar-bottom-bg);
  padding: 0 10px;
  box-sizing: border-box;
}

.sidebar-home-bar a,
.sidebar-logout-bar form,
.sidebar-logout-bar .sidebar-action-button,
.sidebar-bottom-bar nav {
  width: 100%;
}

.sidebar-bottom-bar .sidebar-group-list {
  width: 100%;
}

.sidebar-logout-bar .sidebar-item-icon {
  color: inherit;
}

.sidebar-brand-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.sidebar-brand {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex: 1 1 auto;
  gap: 6px;
  min-width: 0;
  overflow: hidden;
}

.sidebar-brand-icon {
  display: block;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  user-select: none;
}

.sidebar-brand-logo {
  display: block;
  width: 96px;
  max-width: 100%;
  height: auto;
  flex: 0 1 96px;
  min-width: 0;
  user-select: none;
}

.sidebar-menu-toggle {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  min-height: 44px;
  flex: 0 0 44px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  appearance: none;
  transition: background-color .15s ease, color .15s ease;
}

body.sidebar-collapsed .sidebar-brand-row {
  justify-content: center;
}

body.sidebar-collapsed .sidebar-menu-toggle {
  margin: 0 auto;
}

.sidebar-menu-toggle:hover,
.sidebar-menu-toggle:focus-visible {
  color: #0f172a;
  background: #f1f5f9;
  outline: none;
}

.sidebar-menu-toggle__icon {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
}

.sidebar-menu-toggle__icon-layer {
  position: absolute;
  inset: 0;
  display: block;
  background: currentColor;
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: contain;
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  transform-origin: center;
  transition:
    opacity .22s ease,
    transform .32s cubic-bezier(.2, .8, .2, 1);
}

.sidebar-menu-toggle__icon-layer--collapse {
  mask-image: url("/assets/icons/sidebar-collapse.png");
  -webkit-mask-image: url("/assets/icons/sidebar-collapse.png");
  opacity: 1;
  transform: translateX(0) scale(1) rotate(0deg);
}

.sidebar-menu-toggle__icon-layer--expand {
  mask-image: url("/assets/icons/sidebar-expand.png");
  -webkit-mask-image: url("/assets/icons/sidebar-expand.png");
  opacity: 0;
  transform: translateX(-8px) scale(.84) rotate(-8deg);
}

body.sidebar-collapsed .sidebar-menu-toggle__icon-layer--collapse {
  opacity: 0;
  transform: translateX(8px) scale(.84) rotate(8deg);
}

body.sidebar-collapsed .sidebar-menu-toggle__icon-layer--expand {
  opacity: 1;
  transform: translateX(0) scale(1) rotate(0deg);
}

.sidebar-home-bar a:hover,
.sidebar-home-bar a:focus-visible,
.sidebar-logout-bar .sidebar-action-button:hover,
.sidebar-logout-bar .sidebar-action-button:focus-visible {
  color: #0f172a;
  background: #f1f5f9;
  outline: none;
}

.sidebar-bottom-bar .sidebar-group-list li {
  margin: 0;
}

body.sidebar-collapsed .app-sidebar .sidebar-home-bar,
body.sidebar-collapsed .app-sidebar .sidebar-logout-bar,
body.sidebar-collapsed .app-sidebar .sidebar-bottom-bar {
  padding-left: 0;
  padding-right: 0;
}

.page { max-width: 980px; }

.page-system-settings,
.page--wide {
  max-width: none;
}

.erp-kpis--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.erp-suggestions {
  display: grid;
  gap: 0;
  max-height: min(320px, calc(100vh - 140px));
  max-height: min(320px, calc(100dvh - 140px));
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  border: 1px solid #d1d5db;
  border-radius: var(--erp-field-radius);
  background: #fff;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.14);
  padding: 4px;
  -webkit-overflow-scrolling: touch;
}

.erp-suggestions[hidden] {
  display: none;
}

.erp-suggestions__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 36px;
  width: 100%;
  padding: 8px 9px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #111827;
  text-align: left;
  cursor: pointer;
}

.erp-suggestions__item:first-child {
  border-top-left-radius: 7px;
  border-top-right-radius: 7px;
}

.erp-suggestions__item:last-child {
  border-bottom: 0;
  border-bottom-left-radius: 7px;
  border-bottom-right-radius: 7px;
}

.erp-suggestions__item:hover,
.erp-suggestions__item:focus-visible {
  background: #f1f5f9;
  color: #0f172a;
  outline: none;
}

.erp-suggestions__item--hint,
.erp-suggestions__item--hint:hover {
  justify-content: flex-start;
  background: transparent;
  color: #64748b;
  cursor: default;
}

.erp-suggestions__label {
  overflow: hidden;
  color: inherit;
  font-size: 13px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-suggestions__meta {
  overflow: hidden;
  color: #64748b;
  font-size: 11px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-suggestions__item--product {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  min-height: 62px;
  padding: 7px;
}

.erp-suggestions__media {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border);
  background: var(--erp-ui-surface-muted);
}

.erp-suggestions__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-suggestions__media svg,
.erp-suggestions__media .lucide {
  width: 18px;
  height: 18px;
  color: var(--erp-ui-muted);
}

.erp-suggestions__media.is-empty {
  color: var(--erp-ui-muted);
}

.erp-suggestions__content {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.erp-suggestions__side {
  display: grid;
  justify-items: end;
  gap: 4px;
  min-width: 88px;
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.15;
  text-align: right;
  white-space: nowrap;
}

.erp-suggestions__side small {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 800;
}

.erp-segmented {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  overflow: hidden;
  border: 1px solid var(--erp-button-group-border);
  border-radius: var(--erp-button-group-radius);
  background: var(--erp-button-group-bg);
}

.erp-segmented__btn {
  min-height: 38px;
  padding: 8px 14px;
  border: 0;
  border-right: 1px solid var(--erp-button-group-divider);
  border-radius: 0;
  background: var(--erp-button-group-bg);
  color: var(--erp-button-group-text);
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
}

.erp-segmented__btn:last-child {
  border-right: 0;
}

.erp-segmented__btn:hover,
.erp-segmented__btn:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-segmented__btn.is-active {
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.erp-segmented--full {
  display: flex;
  width: min(360px, 100%);
  max-width: 360px;
  border-radius: var(--erp-button-group-radius);
  overflow: hidden;
  flex: 0 0 auto;
}

.erp-segmented--stretch {
  width: 100%;
  max-width: none;
}

.erp-segmented--full .erp-segmented__btn {
  flex: 1;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.erp-segmented--full .erp-segmented__btn .erp-modal__action-icon {
  display: inline-flex;
}

.erp-segmented--full .erp-segmented__btn .erp-modal__action-icon i,
.erp-segmented--full .erp-segmented__btn .erp-modal__action-icon svg,
.erp-segmented--full .erp-segmented__btn .erp-modal__action-icon .lucide {
  width: 18px !important;
  height: 18px !important;
}

.erp-modal.erp-date-filter-modal {
  max-width: 620px;
}

.erp-date-modal {
  display: grid;
  grid-template-columns: 156px minmax(0, 1fr);
  gap: 12px;
  align-items: stretch;
}

.erp-date-modal__presets {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  background: #f3f4f6;
}

.erp-date-modal__preset {
  min-height: 36px;
  padding: 0 12px;
  border: 0;
  border-bottom: 1px solid #d1d5db;
  border-radius: 0;
  background: transparent;
  color: #64748b;
  font-size: 13px;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}

.erp-date-modal__preset:last-child {
  border-bottom: 0;
}

.erp-date-modal__preset:hover,
.erp-date-modal__preset:focus-visible,
.erp-date-modal__preset.is-active {
  background: #e5e7eb;
  color: #111827;
  outline: none;
}

.erp-date-modal__calendar {
  min-width: 0;
}

.erp-calendar {
  display: grid;
  gap: 6px;
  min-width: 0;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.erp-calendar__header {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) 36px;
  align-items: stretch;
  min-height: 36px;
  background: #e5e7eb;
}

.erp-calendar__header--no-nav {
  grid-template-columns: minmax(0, 1fr);
}

.erp-calendar__month {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 72px;
  align-items: center;
  gap: 6px;
  padding: 4px 6px;
  color: #111827;
  font-size: 13px;
  font-weight: 900;
}

.erp-calendar__select {
  min-width: 0;
  height: 28px;
  padding: 0 8px;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  color: #111827;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
}

.erp-calendar__select:hover,
.erp-calendar__select:focus-visible {
  border-color: #cbd5e1;
  background: #f8fafc;
  outline: none;
}

.erp-calendar__select--year {
  text-align: center;
}

.erp-calendar__nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #334155;
  cursor: pointer;
}

.erp-calendar__nav:hover,
.erp-calendar__nav:focus-visible {
  background: #d1d5db;
  color: #111827;
  outline: none;
}

.erp-calendar__nav i,
.erp-calendar__nav svg,
.erp-calendar__nav .lucide {
  width: var(--erp-toolbar-btn-icon-size) !important;
  height: var(--erp-toolbar-btn-icon-size) !important;
}

.erp-calendar__weekdays,
.erp-calendar__grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.erp-calendar__weekdays {
  gap: 0;
  padding: 0 7px;
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
}

.erp-calendar__weekdays span {
  padding: 2px 0;
}

.erp-calendar__grid {
  gap: 2px;
  padding: 0 7px 7px;
}

.erp-calendar__day {
  aspect-ratio: 1;
  min-width: 0;
  min-height: 28px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #334155;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}

.erp-calendar__day:hover,
.erp-calendar__day:focus-visible {
  background: #e5e7eb;
  color: #111827;
  outline: none;
}

.erp-calendar__day.is-outside {
  color: #cbd5e1;
}

.erp-calendar__day.is-in-range {
  background: #f1f5f9;
  color: #111827;
}

.erp-calendar__day.is-start,
.erp-calendar__day.is-end {
  background: #111827;
  color: #fff;
}

.erp-calendar__footer {
  display: flex;
  align-items: center;
  min-height: 32px;
  padding: 0 10px;
  border-top: 1px solid #e5e7eb;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}

.erp-date-popover {
  position: fixed;
  z-index: var(--erp-layer-modal-child);
  width: min(320px, calc(100vw - 16px));
  padding: 8px;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.16);
}

.erp-date-popover__calendar {
  min-width: 0;
}

.erp-date-popover .erp-calendar {
  gap: 4px;
}

.erp-date-popover .erp-calendar__header {
  min-height: 34px;
}

.erp-date-popover .erp-calendar__weekdays {
  padding: 0 6px;
}

.erp-date-popover .erp-calendar__grid {
  gap: 1px;
  padding: 0 6px 6px;
}

.erp-date-popover .erp-calendar__day {
  aspect-ratio: auto;
  height: 24px;
  min-height: 24px;
  border-radius: 5px;
}

.erp-date-popover .erp-calendar__footer {
  display: none;
}

@media (max-width: 720px) {
  .erp-date-modal {
    grid-template-columns: 1fr;
  }

  .erp-date-modal__presets {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .erp-date-modal__preset {
    border-right: 1px solid #d1d5db;
  }

  .erp-date-modal__preset:nth-child(2n) {
    border-right: 0;
  }

  .erp-date-modal__preset:nth-last-child(-n + 2) {
    border-bottom: 0;
  }
}

.page-toolbar-filter {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 0;
  min-width: 0;
  width: 100%;
  height: 100%;
  margin: 0;
}

.page-toolbar-filter__group {
  display: inline-flex;
  align-items: stretch;
  min-width: 0;
  height: 100%;
}

.page-toolbar-filter__group--end {
  justify-content: flex-end;
  flex-shrink: 0;
}

.page-toolbar-filter__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: var(--erp-toolbar-btn-size);
  height: 100%;
  padding: 0 14px;
  border: 0;
  border-radius: 0;
  background: var(--erp-button-group-bg);
  color: var(--erp-button-group-text);
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
}

.page-toolbar-filter__btn:hover,
.page-toolbar-filter__btn:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.page-toolbar-filter__btn.is-active {
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.page-toolbar-filter__btn i,
.page-toolbar-filter__btn svg,
.page-toolbar-filter__btn .lucide {
  width: var(--erp-toolbar-btn-icon-size) !important;
  height: var(--erp-toolbar-btn-icon-size) !important;
  flex-shrink: 0;
}

.page-toolbar-filter__btn-text {
  overflow: hidden;
  text-overflow: ellipsis;
}

.page-toolbar-filter__clear,
.page-toolbar__search-clear {
  width: auto;
  min-width: 0;
  flex-shrink: 0;
  align-self: stretch;
  height: 100%;
  min-height: 100%;
  padding: 0 14px;
}

.page-toolbar-filter__clear,
.page-toolbar__search-clear {
  color: #334155;
}

.page-toolbar-filter__clear:hover,
.page-toolbar-filter__clear:focus-visible,
.page-toolbar__search-clear:hover,
.page-toolbar__search-clear:focus-visible {
  color: #0f172a;
}

.page-toolbar-filter__status-text.is-warning,
.page-toolbar-filter__btn.is-warning {
  color: var(--erp-badge-warning-text);
}

.page-toolbar-filter__status-text.is-success,
.page-toolbar-filter__status-text.is-active,
.page-toolbar-filter__btn.is-active-status {
  color: var(--erp-badge-success-text);
}

.page-toolbar-filter__status-text.is-inactive,
.page-toolbar-filter__btn.is-inactive-status {
  color: var(--erp-badge-disabled-text);
}

.page-toolbar-filter__status-text.is-info,
.page-toolbar-filter__btn.is-info {
  color: var(--erp-badge-primary-text);
}

.page-toolbar-filter__status-text.is-danger,
.page-toolbar-filter__btn.is-danger {
  color: var(--erp-badge-danger-text);
}

.page-toolbar__head {
  min-width: 0;
  display: flex;
  align-items: center;
  align-self: stretch;
  gap: var(--erp-ui-space-2);
  height: 100%;
}

.page-toolbar__title-actions {
  display: inline-flex;
  align-items: stretch;
  align-self: stretch;
  justify-content: flex-start;
  margin-left: 0;
  margin-right: var(--erp-toolbar-cell-gap);
  flex-shrink: 0;
  height: 100%;
  border-left: 0;
  padding: 0;
  box-sizing: border-box;
}

.page-toolbar__title-actions .erp-page-toolbar__btn {
  width: var(--erp-toolbar-btn-size) !important;
  min-width: var(--erp-toolbar-btn-size) !important;
  max-width: var(--erp-toolbar-btn-size) !important;
  border-left: 0;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  border-radius: 0;
  padding: 0 !important;
  background: transparent;
}

.page-toolbar__title-actions .erp-page-toolbar__btn-with-label,
.page-toolbar__title-actions .erp-page-toolbar__btn-with-label:link {
  width: auto !important;
  min-width: var(--erp-toolbar-btn-size) !important;
  max-width: none !important;
  padding-left: calc((var(--erp-toolbar-btn-size) - var(--erp-toolbar-btn-icon-size)) / 2) !important;
  padding-right: calc((var(--erp-toolbar-btn-size) - var(--erp-toolbar-btn-icon-size)) / 2) !important;
}

.page-toolbar__title-actions .erp-page-toolbar__btn.is-active,
.page-toolbar__title-actions .erp-page-toolbar__btn.is-active:link {
  background: var(--erp-page-toolbar-hover-bg);
  color: var(--erp-page-toolbar-contrast-text);
}

.page-toolbar__title-actions .erp-page-toolbar__btn:hover,
.page-toolbar__title-actions .erp-page-toolbar__btn:focus-visible {
  background: var(--erp-page-toolbar-hover-bg);
  color: var(--erp-page-toolbar-contrast-text);
  z-index: 1;
}

.page-toolbar__title-actions .erp-page-toolbar__btn:first-child {
  border-left: 0;
}

.page-toolbar__title {
  margin: 0;
  min-width: 0;
  max-width: min(54vw, 620px);
  font-size: 16px;
  line-height: 1.2;
  color: var(--erp-page-toolbar-text);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.page-toolbar__title-text {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transform: translateY(0);
  opacity: 1;
  transition: opacity 0.18s ease, transform 0.18s ease;
  will-change: opacity, transform;
}

.page-toolbar__title-text.is-title-switching {
  opacity: 0;
  transform: translateY(3px);
}

.page-toolbar__title--breadcrumbs {
  max-width: min(64vw, 820px);
}

.page-toolbar__title-text--breadcrumbs {
  width: 100%;
}

.page-toolbar__breadcrumb {
  flex-wrap: nowrap;
  gap: 4px;
  min-width: 0;
  overflow: hidden;
  color: var(--erp-page-toolbar-muted);
  font-size: 14px;
  line-height: 1.2;
}

.page-toolbar__breadcrumb-item {
  display: block;
  min-width: 0;
  overflow: hidden;
  color: inherit;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.page-toolbar__breadcrumb a.page-toolbar__breadcrumb-item {
  color: var(--erp-page-toolbar-muted);
}

.page-toolbar__breadcrumb a.page-toolbar__breadcrumb-item:is(:hover, :focus-visible) {
  color: var(--erp-page-toolbar-text);
  outline: none;
}

.page-toolbar__breadcrumb-item--root {
  flex: 0 0 auto;
  color: var(--erp-page-toolbar-text) !important;
}

.page-toolbar__breadcrumb-item--intermediate {
  flex: 0 1 auto;
  max-width: 180px;
}

.page-toolbar__breadcrumb-item--current {
  flex: 0 1 auto;
  color: var(--erp-page-toolbar-text);
  font-weight: 900;
}

.page-toolbar__breadcrumb-separator {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  color: color-mix(in srgb, var(--erp-page-toolbar-muted) 60%, transparent);
}

.page-toolbar__breadcrumb-separator :is(i, svg, .lucide) {
  width: 13px !important;
  height: 13px !important;
}

.page-toolbar__title-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--erp-page-toolbar-muted);
  width: var(--toolbar-title-icon-size);
  height: var(--toolbar-title-icon-size);
}

.page-toolbar__title-icon i,
.page-toolbar__title-icon svg,
.page-toolbar__title-icon .lucide {
  width: var(--toolbar-title-icon-size) !important;
  height: var(--toolbar-title-icon-size) !important;
}

.page-toolbar__subtitle {
  margin: 0;
  color: var(--erp-page-toolbar-muted);
  font-size: 13px;
  white-space: nowrap;
}

.page-toolbar__actions {
  display: inline-flex;
  align-items: stretch;
  gap: 0;
  flex-shrink: 0;
  margin-left: auto;
  align-self: center;
  height: 100%;
  border-left: 0;
}

.erp-page-toolbar__btn,
.erp-page-toolbar__btn:link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--erp-toolbar-btn-size);
  min-width: var(--erp-toolbar-btn-size);
  max-width: var(--erp-toolbar-btn-size);
  height: 100%;
  min-height: 100%;
  max-height: 100%;
  border-radius: 0;
  border: 0;
  gap: 6px;
  padding: 0;
  background: transparent;
  white-space: nowrap;
  transition: background-color 0.15s ease;
  color: var(--erp-page-toolbar-text);
  border-left: 0;
  cursor: pointer;
  position: relative;
  appearance: none;
  -webkit-appearance: none;
  outline: 0;
}

.erp-page-toolbar__btn-with-label,
.erp-page-toolbar__btn-with-label:link {
  width: auto;
  min-width: 0;
  max-width: none;
  padding: 0 calc((var(--erp-toolbar-btn-size) - var(--erp-toolbar-btn-icon-size)) / 2);
  justify-content: center;
}

.erp-page-toolbar__btn-text {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  font-size: 12px;
  line-height: 1;
  font-weight: 600;
  color: inherit;
}

.page-toolbar .erp-page-toolbar__btn:disabled,
.page-toolbar .erp-page-toolbar__btn[aria-disabled="true"] {
  color: #94a3b8;
  cursor: not-allowed;
  opacity: .52;
}

.page-toolbar .erp-page-toolbar__btn:disabled:hover,
.page-toolbar .erp-page-toolbar__btn:disabled:focus-visible,
.page-toolbar .erp-page-toolbar__btn[aria-disabled="true"]:hover,
.page-toolbar .erp-page-toolbar__btn[aria-disabled="true"]:focus-visible {
  background: transparent;
  color: #94a3b8;
}

.page-toolbar .erp-page-toolbar__btn-with-label {
  color: var(--erp-page-toolbar-text);
}

.page-toolbar .erp-page-toolbar__invoice-status {
  color: var(--erp-page-toolbar-text);
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 0;
}

.page-toolbar .erp-page-toolbar__state {
  color: var(--erp-page-toolbar-text);
  font-weight: 800;
  letter-spacing: 0;
}

.page-toolbar .erp-page-toolbar__state.is-active,
.page-toolbar .erp-page-toolbar__state.is-success {
  color: var(--erp-badge-success-text);
}

.page-toolbar .erp-page-toolbar__state.is-warning,
.page-toolbar .erp-page-toolbar__state.warn {
  color: var(--erp-badge-warning-text);
}

.page-toolbar .erp-page-toolbar__state.is-info {
  color: var(--erp-badge-primary-text);
}

.page-toolbar .erp-page-toolbar__state.is-promo {
  color: var(--erp-badge-promo-text);
}

.page-toolbar .erp-page-toolbar__state.is-inactive {
  color: var(--erp-badge-disabled-text);
}

.page-toolbar .erp-page-toolbar__state.is-danger {
  color: var(--erp-badge-danger-text);
}

.page-toolbar .erp-page-toolbar__state.gray {
  color: var(--erp-page-toolbar-muted);
}

.page-toolbar .erp-page-toolbar__state:hover,
.page-toolbar .erp-page-toolbar__state:focus-visible {
  color: var(--erp-page-toolbar-text);
}

.page-toolbar .erp-page-toolbar__invoice-status[data-page-toolbar-label="ЧЕРНЕТКА"] {
  color: var(--erp-badge-warning-text);
}

.page-toolbar .erp-page-toolbar__invoice-status[data-page-toolbar-label="ПРОВЕДЕНА"] {
  color: var(--erp-badge-success-text);
}

.page-toolbar .erp-page-toolbar__invoice-status[data-page-toolbar-label="СКАСОВАНА"] {
  color: var(--erp-badge-disabled-text);
}

.page-toolbar .erp-page-toolbar__invoice-status[data-page-toolbar-label="ВИДАЛЕНА"] {
  color: var(--erp-badge-disabled-text);
}

.page-toolbar .erp-page-toolbar__invoice-status:hover,
.page-toolbar .erp-page-toolbar__invoice-status:focus-visible {
  color: var(--erp-page-toolbar-text);
}

.page-toolbar .erp-page-toolbar__invoice-status[data-page-toolbar-label="ЧЕРНЕТКА"]:hover,
.page-toolbar .erp-page-toolbar__invoice-status[data-page-toolbar-label="ЧЕРНЕТКА"]:focus-visible {
  color: var(--erp-badge-warning-text);
}

.page-toolbar .erp-page-toolbar__invoice-status[data-page-toolbar-label="ПРОВЕДЕНА"]:hover,
.page-toolbar .erp-page-toolbar__invoice-status[data-page-toolbar-label="ПРОВЕДЕНА"]:focus-visible {
  color: var(--erp-badge-success-text);
}

.page-toolbar .erp-page-toolbar__invoice-status[data-page-toolbar-label="СКАСОВАНА"]:hover,
.page-toolbar .erp-page-toolbar__invoice-status[data-page-toolbar-label="СКАСОВАНА"]:focus-visible {
  color: var(--erp-badge-disabled-text);
}

.page-toolbar .erp-page-toolbar__invoice-status[data-page-toolbar-label="ВИДАЛЕНА"]:hover,
.page-toolbar .erp-page-toolbar__invoice-status[data-page-toolbar-label="ВИДАЛЕНА"]:focus-visible {
  color: var(--erp-badge-disabled-text);
}


.page-toolbar .erp-page-toolbar__invoice-status .erp-page-toolbar__btn-text {
  font-size: 11px;
  font-weight: 800;
}

.page-toolbar .erp-page-toolbar__state .erp-page-toolbar__btn-text {
  font-size: 11px;
  font-weight: 800;
}

.erp-page-toolbar__btn:first-child {
  border-left: 0;
}

.erp-page-toolbar__btn[hidden] {
  display: none !important;
}

.erp-page-toolbar__btn.is-filter-active {
  color: var(--erp-page-toolbar-text);
}

.erp-page-toolbar__badge {
  position: absolute;
  top: 8px;
  right: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 999px;
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
  pointer-events: none;
}

.erp-page-toolbar__clear-filters {
  color: #ef4444 !important;
}

.erp-page-toolbar__clear-filters:hover,
.erp-page-toolbar__clear-filters:focus-visible {
  color: #dc2626 !important;
}

.page-toolbar .erp-page-toolbar__btn {
  background: transparent;
  color: var(--erp-page-toolbar-text);
}

.erp-page-toolbar__btn:hover,
.erp-page-toolbar__btn:focus-visible {
  background: var(--erp-page-toolbar-hover-bg);
  color: var(--erp-page-toolbar-contrast-text);
  z-index: 1;
}

.page-toolbar .erp-page-toolbar__btn:hover,
.page-toolbar .erp-page-toolbar__btn:focus-visible {
  background: var(--erp-page-toolbar-hover-bg);
  color: var(--erp-page-toolbar-contrast-text);
}

.page-toolbar .erp-page-toolbar__btn:active,
.page-toolbar .erp-page-toolbar__btn[aria-pressed="true"],
.page-toolbar .erp-page-toolbar__btn.is-active {
  background: var(--erp-page-toolbar-active-bg);
  color: var(--erp-page-toolbar-contrast-text);
}

.page-toolbar .erp-page-toolbar__btn.erp-btn--default:hover,
.page-toolbar .erp-page-toolbar__btn.erp-btn--ghost:hover,
.page-toolbar .erp-page-toolbar__btn.erp-btn--success:hover,
.page-toolbar .erp-page-toolbar__btn.erp-btn--danger:hover,
.page-toolbar .erp-page-toolbar__btn.erp-btn--default:focus-visible,
.page-toolbar .erp-page-toolbar__btn.erp-btn--ghost:focus-visible,
.page-toolbar .erp-page-toolbar__btn.erp-btn--success:focus-visible,
.page-toolbar .erp-page-toolbar__btn.erp-btn--danger:focus-visible,
.page-toolbar .erp-page-toolbar__btn.erp-btn--default:active,
.page-toolbar .erp-page-toolbar__btn.erp-btn--ghost:active,
.page-toolbar .erp-page-toolbar__btn.erp-btn--success:active,
.page-toolbar .erp-page-toolbar__btn.erp-btn--danger:active {
  background: var(--erp-page-toolbar-active-bg);
}

.page-toolbar .erp-page-toolbar__btn.erp-btn--default,
.page-toolbar .erp-page-toolbar__btn.erp-btn--ghost,
.page-toolbar .erp-page-toolbar__btn.erp-btn--success,
.page-toolbar .erp-page-toolbar__btn.erp-btn--danger {
  background: transparent;
  border: 0;
  border-radius: 0;
}

.page-toolbar .erp-profile-toolbar-action {
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
  transform: translateY(3px);
  transition:
    max-width .2s ease,
    padding .2s ease,
    opacity .18s ease,
    transform .18s ease,
    background-color .15s ease;
}

body.erp-profile-toolbar-actions-visible .page-toolbar .erp-profile-toolbar-action {
  width: auto !important;
  min-width: 0 !important;
  max-width: 190px !important;
  padding-left: calc((var(--erp-toolbar-btn-size) - var(--erp-toolbar-btn-icon-size)) / 2) !important;
  padding-right: calc((var(--erp-toolbar-btn-size) - var(--erp-toolbar-btn-icon-size)) / 2) !important;
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.erp-page-toolbar__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--erp-toolbar-btn-icon-size);
  height: var(--erp-toolbar-btn-icon-size);
  border-radius: 0;
  color: inherit;
  transition: background-color 0.15s ease;
  padding: 0;
  margin: 0;
}

.erp-page-toolbar__icon i,
.erp-page-toolbar__icon svg,
.erp-page-toolbar__icon .lucide {
  width: var(--erp-toolbar-btn-icon-size) !important;
  height: var(--erp-toolbar-btn-icon-size) !important;
  pointer-events: none;
}

.erp-page-toolbar__search-icon-close {
  display: none;
}

.page-toolbar.page-toolbar--search-open .erp-page-toolbar__search-toggle .erp-page-toolbar__search-icon-close {
  display: inline-flex;
}

.page-toolbar.page-toolbar--search-open .erp-page-toolbar__search-toggle .erp-page-toolbar__search-icon-search {
  display: none;
}

.page > h1,
.page > .page-head {
  display: none;
}

.page-toolbar .erp-btn--default,
.page-toolbar .erp-btn--ghost,
.page-toolbar .erp-btn--success,
.page-toolbar .erp-btn--danger {
  padding: 0;
}

.page-toolbar .erp-page-toolbar__btn-with-label,
.page-toolbar .erp-page-toolbar__btn-with-label:link {
  padding-left: calc((var(--erp-toolbar-btn-size) - var(--erp-toolbar-btn-icon-size)) / 2) !important;
  padding-right: calc((var(--erp-toolbar-btn-size) - var(--erp-toolbar-btn-icon-size)) / 2) !important;
}

@media (max-width: 900px) {
  .page-toolbar__head {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
  }

  .page-toolbar__title {
    min-width: 0;
    max-width: 100%;
    font-size: 14px;
  }

  .page-toolbar__title-text {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .page-toolbar__breadcrumb {
    font-size: 13px;
  }

  .page-toolbar__subtitle {
    display: none;
  }

  .page-toolbar__actions {
    width: auto;
    max-width: 58vw;
    justify-content: flex-start;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    margin-left: 8px;
    scrollbar-width: none;
  }

  .page-toolbar__actions::-webkit-scrollbar {
    display: none;
  }

  .page-toolbar__actions .erp-page-toolbar__state {
    display: none;
  }

  .erp-page-toolbar__btn,
  .erp-page-toolbar__btn:link {
    width: var(--erp-toolbar-btn-size);
    min-width: var(--erp-toolbar-btn-size);
    max-width: var(--erp-toolbar-btn-size);
    height: var(--erp-toolbar-btn-size);
    min-height: var(--erp-toolbar-btn-size);
    max-height: var(--erp-toolbar-btn-size);
  }

  .settings-layout {
    grid-template-columns: 1fr;
  }

  .settings-layout > .sidebar-main-nav {
    padding: 10px;
    border-radius: 8px;
  }

  .settings-layout > .sidebar-main-nav .sidebar-group-list {
    grid-template-columns: 1fr;
  }

  .settings-layout > .sidebar-main-nav .sidebar-group-list a {
    min-height: 36px;
  }

}

@media (max-width: 600px) {
  .page-toolbar__title--breadcrumbs .page-toolbar__title-icon,
  .page-toolbar__breadcrumb-item--intermediate,
  .page-toolbar__breadcrumb-separator--intermediate {
    display: none;
  }
}

.grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}

.card {
  border: 1px solid #d1d5db;
  padding: 12px;
  border-radius: 10px;
  background: white;
}

.detail-card, .module-description, .auth-card {
  background: white;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  padding: 12px;
}

.erp-stack {
  display: grid;
  gap: 12px;
}

.erp-detail-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 12px;
}

.erp-detail-grid--icons {
  gap: 0 18px;
}

.erp-detail-grid--list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 24px;
}

.erp-detail-grid--list > .erp-detail-item {
  min-height: 58px;
  align-items: center;
  padding: 13px 24px 13px 0;
  border-top: 0;
}

.erp-detail-grid--list .erp-detail-item__icon {
  background: transparent;
  color: var(--erp-ui-muted, #64748b);
}

.erp-detail-grid--list .erp-detail-item__body {
  grid-template-columns: minmax(86px, .42fr) minmax(0, 1fr);
  align-items: center;
  column-gap: 12px;
}

.erp-detail-grid--list .erp-detail-item__label {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 700;
}

.erp-detail-grid--list .erp-detail-item__value {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-height: 32px;
  color: var(--erp-ui-text, #111827);
  text-align: right;
  font-size: 14px;
  font-weight: 800;
}

.erp-detail-grid--list .erp-inline-edit__control {
  grid-column: 2;
  min-height: 32px;
  align-self: center;
}

@media (max-width: 760px) {
  .erp-detail-grid--list {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .erp-detail-grid--list .erp-detail-item__body {
    grid-template-columns: 1fr;
    gap: 3px;
  }

  .erp-detail-grid--list .erp-detail-item__value {
    justify-content: flex-start;
    text-align: left;
  }

  .erp-detail-grid--list .erp-inline-edit__control {
    grid-column: 1;
  }
}

.erp-detail-grid > div {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.erp-detail-grid > div span {
  font-size: 12px;
  color: #64748b;
  font-weight: 700;
}

.erp-detail-grid > div strong {
  display: block;
  font-size: 14px;
  line-height: 1.25;
  color: #111827;
  font-weight: 800;
}

.erp-detail-grid > .erp-detail-item {
  position: relative;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  padding: 12px 0;
  border-top: 1px solid #e5e7eb;
}

.erp-detail-grid--borderless > .erp-detail-item {
  border-top: 0;
}

.erp-detail-item--wide {
  grid-column: 1 / -1;
}

.erp-detail-item__icon {
  width: 30px;
  height: 30px;
  display: inline-grid;
  place-items: center;
  border-radius: 8px;
  background: #f3f4f6;
  color: #4b5563;
}

.erp-detail-item__icon .lucide {
  width: 15px;
  height: 15px;
  stroke-width: 2.1;
}

.erp-detail-item__body {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.erp-detail-grid > div .erp-detail-item__label,
.erp-detail-item__label {
  color: #64748b;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 750;
}

.erp-detail-grid > div .erp-detail-item__value,
.erp-detail-item__value {
  display: block;
  color: #111827;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 800;
}

.erp-inline-edit {
  position: relative;
  cursor: pointer;
}

.erp-inline-edit__icon {
  position: absolute;
  top: 9px;
  right: 0;
  width: 18px;
  height: 18px;
  display: inline-grid;
  place-items: center;
  color: #64748b;
  opacity: 0;
  transform: translateY(-1px);
  transition: opacity .15s ease, color .15s ease;
  pointer-events: none;
}

.erp-inline-edit:hover .erp-inline-edit__icon,
.erp-inline-edit:focus-within .erp-inline-edit__icon {
  opacity: 1;
}

.erp-inline-edit__icon .lucide {
  width: 13px;
  height: 13px;
  stroke-width: 2.2;
}

.erp-product-choice-editor__trigger {
  position: absolute;
  z-index: 1;
  inset: 2px 0;
  width: 100%;
  padding: 0;
  border: 0;
  border-radius: var(--erp-ui-radius, 10px);
  background: transparent;
  color: inherit;
  cursor: pointer;
}

.erp-product-choice-editor__trigger:focus-visible {
  outline: 2px solid var(--erp-ui-text, #111827);
  outline-offset: -2px;
}

.erp-product-choice-editor .erp-inline-edit__icon {
  z-index: 2;
}

.erp-inline-edit__control {
  display: none;
  width: 100%;
}

.erp-inline-edit.is-editing .erp-inline-edit__display {
  display: none;
}

.erp-inline-edit.is-editing .erp-inline-edit__control {
  display: block;
}

.erp-inline-edit.is-editing .erp-inline-edit__control--with-help {
  display: grid;
  gap: 5px;
}

.erp-inline-edit__help {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 650;
  line-height: 1.3;
}

.erp-inline-edit__input {
  width: 100%;
  min-height: 32px;
  border: 0;
  border-bottom: 1px solid #111827;
  border-radius: 0;
  background: transparent;
  color: #111827;
  font: inherit;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.3;
  outline: 0;
  padding: 2px 0 5px;
}

.erp-inline-edit__input:focus {
  border-bottom-color: #111827;
  box-shadow: none;
}

.erp-inline-edit--textarea {
  display: block;
  width: 100%;
  padding: 0 26px 0 0;
  cursor: pointer;
}

.erp-inline-edit--textarea .erp-inline-edit__icon {
  top: 2px;
}

.erp-inline-edit__textarea-display {
  min-height: 96px;
  color: #374151;
  font-size: 14px;
  line-height: 1.55;
  font-weight: 650;
  white-space: normal;
}

.erp-inline-edit__textarea-display span {
  color: #94a3b8;
  font-weight: 700;
}

.erp-inline-edit__textarea {
  min-height: 128px;
  resize: vertical;
  border: 0;
  border-bottom: 1px solid #111827;
  font-weight: 650;
  line-height: 1.55;
  padding-top: 0;
}

.erp-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 0 0 10px;
  min-height: 40px;
}

.erp-section-head__main {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.erp-section-head__actions {
  display: none;
  align-items: center;
  justify-content: flex-end;
  margin-left: auto;
  min-width: 22px;
}

.erp-section-head__controls {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin-left: auto;
  min-width: 0;
}

.erp-section-head__actions.has-pending-action {
  display: inline-flex;
}

.erp-section-head__actions .erp-action-spinner {
  margin: 0;
}

@media (max-width: 720px) {
  .erp-section-head {
    flex-wrap: wrap;
    align-items: stretch;
  }

  .erp-section-head__controls {
    width: 100%;
    margin-left: 0;
    justify-content: stretch;
  }

  .erp-section-head__controls .erp-segmented {
    width: 100%;
    max-width: none;
  }

  .erp-section-head__controls .erp-segmented__btn {
    flex: 1 1 0;
  }
}

.erp-section-head strong {
  font-size: 14px;
  font-weight: 700;
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  color: #111827;
}

.erp-section-head span {
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
}

.erp-section-head__main > span:last-child {
  color: #64748b;
}

.erp-section-head--small {
  margin-top: 14px;
}

.erp-section-title {
  margin: 0;
}

.erp-section-head .erp-section-title--modal {
  font-size: 15px;
  font-weight: 800;
  line-height: 1.2;
  color: #111827;
}

.erp-section-head .erp-section-title--modal > span {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

.erp-section-head .erp-section-title--modal .erp-modal__title-icon {
  width: 17px;
  height: 17px;
  color: #475569;
}

.erp-section-head .erp-section-title--modal .erp-modal__title-icon i,
.erp-section-head .erp-section-title--modal .erp-modal__title-icon svg,
.erp-section-head .erp-section-title--modal .erp-modal__title-icon .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-section {
  margin-top: 12px;
}

.erp-product-detail-layout {
  display: grid;
  grid-template-columns: minmax(250px, 340px) minmax(0, 1fr);
  align-items: start;
  gap: 14px;
}

.erp-modal.erp-owner-product-view-modal {
  width: min(1180px, calc(100vw - 28px));
  max-width: min(1180px, calc(100vw - 28px));
  height: min(92vh, 980px);
  max-height: calc(100vh - 20px);
}

.erp-owner-product-view-modal .erp-modal__content,
.erp-owner-product-view-modal .erp-data-modal {
  height: 100%;
  min-height: 0;
}

.erp-owner-product-view-modal .erp-data-modal__body {
  flex: 1 1 auto;
  height: 100%;
  min-height: 0;
  padding: 0;
  overflow: hidden;
}

.page-product-view--owner-modal {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: 14px 18px;
  row-gap: var(--erp-ui-space-3, 12px);
  overflow: hidden;
}

.erp-owner-product-view-modal .erp-modal__title {
  min-width: 0;
  flex: 1 1 auto;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px;
  line-height: 1.2;
}

.erp-owner-product-view-modal .erp-modal__title > [data-owner-product-modal-title] {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-owner-product-view-modal .erp-modal__title .erp-owner-product-sale-ribbon {
  position: static;
  inset: auto;
  flex: 0 0 auto;
  align-self: center;
  min-height: 22px;
  margin: 0;
  padding-inline: 7px;
  font-size: 11px;
  transform: none;
}

.erp-owner-product-sale-ribbon .erp-sale-ribbon__label {
  max-width: none;
}

.erp-owner-product-modal-error {
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 10px;
  min-height: min(64vh, 620px);
  padding: 28px;
  color: var(--erp-ui-text);
  text-align: center;
}

.erp-owner-product-modal-error > :is(i, svg, .lucide) {
  width: 34px !important;
  height: 34px !important;
  color: var(--erp-ui-warning, #b45309);
}

.erp-owner-product-modal-error strong {
  font-size: 17px;
}

.erp-owner-product-modal-error p {
  margin: 0;
  color: var(--erp-ui-muted);
}

.erp-product-detail-main {
  min-width: 0;
  display: grid;
  gap: 12px;
}

.page-product-view--owner-modal .erp-product-detail-layout {
  flex: 1 1 auto;
  width: 100%;
  min-height: 0;
  align-items: stretch;
}

.page-product-view--owner-modal .erp-product-media-panel {
  min-height: 0;
  overflow: auto;
  align-content: start;
}

.page-product-view--owner-modal .erp-product-detail-main {
  min-height: 0;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
}

.page-product-view--owner-modal .erp-product-tab-panel:not([hidden]) {
  min-height: 0;
  overflow: auto;
}

.page-product-view--owner-modal :is(
  [data-product-variants],
  [data-product-measurements],
  [data-product-movements]
):not([hidden]) {
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.page-product-view--owner-modal :is(
  [data-product-variants],
  [data-product-measurements],
  [data-product-movements]
) > .table-wrap {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}

.page-product-view--owner-modal [data-product-measurements] > .erp-form {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

.page-product-view--owner-modal [data-product-measurements] > .erp-form > .table-wrap {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}

.page-product-view--owner-modal :is(
  [data-product-variants],
  [data-product-measurements],
  [data-product-movements]
) .erp-table thead {
  position: static;
}

.page-product-view--owner-modal :is(
  [data-product-variants],
  [data-product-measurements],
  [data-product-movements]
) .erp-table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--erp-ui-surface);
}

.page-product-view--owner-modal [data-product-summary]:not([hidden]) {
  display: flex;
  flex-direction: column;
}

.page-product-view--owner-modal [data-product-summary]:not([hidden]) > .erp-product-description-form {
  display: flex;
  flex: 1 1 auto;
  min-height: 0;
}

.page-product-view--owner-modal [data-product-summary]:not([hidden]) > .erp-product-description-form > .erp-rich-text-field--description {
  flex: 1 1 auto;
  min-height: 0;
  grid-template-rows: auto minmax(116px, 1fr);
}

.page-product-view--owner-modal .erp-rich-text-field__description-body {
  height: 100%;
  min-height: 0;
  margin: 0;
}

.page-product-view--owner-modal .erp-rich-text-field--description .erp-rich-text-field__input {
  height: 100%;
}

.erp-product-tabs {
  min-width: 0;
  width: 100%;
  border-color: var(--erp-button-group-border);
  border-radius: var(--erp-button-group-radius);
  background: var(--erp-button-group-bg);
}

.erp-product-tabs .erp-tabs__item {
  flex: 1 1 0;
  gap: 5px;
  justify-content: center;
  min-height: 42px;
  padding: 0 6px;
  font-size: 11px;
  text-align: center;
}

.erp-product-tabs .erp-tabs__item i,
.erp-product-tabs .erp-tabs__item svg,
.erp-product-tabs .erp-tabs__item .lucide {
  width: 16px;
  height: 16px;
  flex-basis: 16px;
}

.erp-product-tab-panel {
  margin: 0;
}

.erp-product-characteristics-slider {
  min-width: 0;
}

.erp-product-characteristics-slider__viewport {
  min-width: 0;
  max-height: min(62vh, 620px);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  border-radius: var(--erp-ui-radius);
  outline: none;
  transition: height 220ms cubic-bezier(.22, .61, .36, 1), box-shadow var(--erp-ui-transition);
}

.erp-product-characteristics-slider__viewport:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--erp-ui-primary) 16%, transparent);
}

.erp-product-characteristics-board {
  --erp-product-characteristics-index: 0;
  display: flex;
  align-items: flex-start;
  min-width: 0;
  transform: translateX(calc(var(--erp-product-characteristics-index) * -100%));
  transition: transform 220ms cubic-bezier(.22, .61, .36, 1);
  will-change: transform;
}

.erp-product-characteristics-page {
  flex: 0 0 100%;
  min-width: 0;
}

.erp-product-characteristics-page__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--erp-ui-space-3, 12px);
  min-width: 0;
  align-items: start;
}

.erp-product-characteristic-group {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-product-characteristics-slider__nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-3, 12px);
  min-height: 38px;
  padding-top: var(--erp-ui-space-2, 8px);
}

.erp-product-characteristics-slider__dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  flex: 1 1 auto;
}

.erp-product-characteristics-slider__dot {
  width: 6px;
  height: 6px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--erp-ui-border);
  cursor: pointer;
  transition: width var(--erp-ui-transition), border-radius var(--erp-ui-transition), background var(--erp-ui-transition);
}

.erp-product-characteristics-slider__dot.is-active {
  width: 18px;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-system-badge-bg);
}

.erp-product-characteristics-slider__actions {
  display: inline-grid;
  grid-template-columns: repeat(2, 30px);
  flex: 0 0 auto;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-ui-surface-soft);
}

.erp-product-characteristics-slider__actions .erp-icon-btn {
  width: 30px;
  height: 30px;
  min-width: 30px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-muted);
}

.erp-product-characteristics-slider__actions .erp-icon-btn + .erp-icon-btn {
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-product-characteristics-slider__actions .erp-icon-btn:disabled {
  opacity: .35;
}

.erp-product-characteristic-group__head {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 8px 12px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-soft);
}

.erp-product-characteristic-group__head h2 {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
}

.erp-product-characteristic-group__head [data-erp-pending-host] {
  margin-left: auto;
}

.erp-product-characteristic-group__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  border-radius: var(--erp-ui-radius-sm, 6px);
  color: var(--erp-ui-muted);
  background: var(--erp-ui-surface);
  box-shadow: inset 0 0 0 1px var(--erp-ui-border-soft);
}

.erp-product-characteristic-group__icon :is(i, svg, .lucide) {
  width: 14px;
  height: 14px;
}

.erp-detail-grid--list.erp-product-characteristic-group__list {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}

.erp-product-characteristic-group__list > .erp-detail-item {
  min-height: 58px;
  padding: 10px 12px;
  border-top: 1px solid var(--erp-ui-border-soft);
}

.erp-product-characteristic-group__list > .erp-detail-item:first-child {
  border-top: 0;
}

.erp-product-characteristic-group__list .erp-detail-item__body {
  grid-template-columns: minmax(74px, .42fr) minmax(0, 1fr);
  gap: 8px;
}

.erp-product-characteristic-group__list .erp-detail-item__value {
  flex-wrap: wrap;
  min-width: 0;
}

.erp-product-value-bubbles {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  gap: var(--erp-ui-space-2, 8px);
  min-width: 0;
  pointer-events: none;
}

.erp-product-value-bubble {
  display: inline-flex;
  align-items: stretch;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: color-mix(in srgb, var(--erp-ui-surface-muted) 82%, var(--erp-ui-surface));
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
}

.erp-product-value-bubble > span {
  min-width: 0;
  padding: 6px 8px;
  overflow-wrap: anywhere;
}

.erp-product-value-bubble.is-empty {
  color: var(--erp-ui-muted);
  font-weight: 750;
}

.erp-product-value-bubble__remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  padding: 0;
  border: 0;
  border-left: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-muted);
  cursor: pointer;
  pointer-events: auto;
}

.erp-product-value-bubble__remove:hover,
.erp-product-value-bubble__remove:focus-visible {
  background: color-mix(in srgb, var(--erp-ui-danger) 9%, var(--erp-ui-surface));
  color: var(--erp-ui-danger);
  outline: none;
}

.erp-product-value-bubble__remove :is(i, svg, .lucide) {
  width: 14px;
  height: 14px;
}

.erp-product-characteristic-group__list .erp-inline-edit__icon {
  top: 8px;
  right: 8px;
}

.erp-product-fiscal-switch .erp-switch {
  align-items: center;
  width: fit-content;
  font-size: 12px;
}

.erp-product-tax-inline {
  cursor: pointer;
}

.erp-product-tax-inline__control {
  display: none;
  grid-template-columns: minmax(0, 1fr) minmax(72px, .45fr);
  gap: var(--erp-ui-space-2, 8px);
  min-width: 0;
}

.erp-product-tax-inline.is-editing .erp-product-tax-inline__display {
  display: none;
}

.erp-product-tax-inline.is-editing .erp-product-tax-inline__control {
  display: grid;
}

.erp-product-tax-inline__control label {
  display: grid;
  gap: 4px;
  min-width: 0;
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 750;
}

.erp-product-tax-inline__control input {
  width: 100%;
  min-width: 0;
  min-height: 34px;
  padding: 7px 9px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-field-radius);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  font: inherit;
}

.erp-product-tax-inline__control input:focus-visible {
  border-color: var(--erp-ui-accent);
  outline: 2px solid color-mix(in srgb, var(--erp-ui-accent) 18%, transparent);
  outline-offset: 1px;
}

.fiscal-classifier-suggestion {
  display: grid;
  grid-template-columns: minmax(72px, auto) minmax(0, 1fr);
  gap: var(--erp-ui-space-2, 8px);
  align-items: start;
}

.fiscal-classifier-suggestion__code {
  color: var(--erp-ui-accent);
  font-size: 12px;
  font-variant-numeric: tabular-nums;
}

.fiscal-classifier-suggestion .erp-suggestions__label {
  white-space: normal;
}

.product-directories-panel {
  display: grid;
  gap: var(--erp-ui-space-3, 12px);
  min-width: 0;
}

.product-directories-panel__group-menu {
  min-height: 0;
}

.product-directories-panel__group-menu[hidden],
.product-directories-panel__workspace[hidden],
.product-directory-card__editor[hidden],
.product-directory-card__actions > [hidden] {
  display: none !important;
}

.product-directories-panel__group-menu .settings-integration-card__status {
  top: 12px;
}

.product-directories-panel__group-menu .settings-integration-card:has(.settings-integration-card__status) {
  padding-top: 44px;
}

.product-directories-panel__workspace {
  display: grid;
  gap: var(--erp-ui-space-4, 16px);
  min-width: 0;
}

.fiscal-classifier-workspace {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  height: 100%;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.fiscal-classifier-workspace[hidden],
.fiscal-classifier-workspace [hidden] {
  display: none !important;
}

.settings-form:has(.fiscal-classifier-workspace:not([hidden])) {
  overflow: hidden;
}

.settings-form:has(.fiscal-classifier-workspace:not([hidden])) :is(
  .settings-fields-grid,
  .settings-field,
  .product-directories-panel
) {
  height: 100%;
  min-height: 0;
}

.product-directories-panel:has(.fiscal-classifier-workspace:not([hidden])) {
  height: 100%;
}

.fiscal-classifier-workspace__head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: var(--erp-ui-space-3, 12px);
  align-items: center;
  min-height: 62px;
  padding: var(--erp-ui-space-3, 12px);
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.fiscal-classifier-workspace__identity {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-accent);
}

.fiscal-classifier-workspace__identity :is(i, svg, .lucide) {
  width: 20px;
  height: 20px;
}

.fiscal-classifier-workspace__heading {
  display: grid;
  gap: var(--erp-ui-space-1, 4px);
  min-width: 0;
}

.fiscal-classifier-workspace__heading strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.25;
}

.fiscal-classifier-workspace__heading small {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
}

.fiscal-classifier-workspace__actions,
.fiscal-classifier-workspace__version {
  display: inline-flex;
  align-items: center;
  gap: var(--erp-ui-space-2, 8px);
}

.fiscal-classifier-workspace__version {
  min-height: 32px;
  padding: 0 var(--erp-ui-space-3, 12px);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

.fiscal-classifier-workspace__version :is(i, svg, .lucide) {
  width: 14px;
  height: 14px;
}

.fiscal-classifier-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--erp-ui-space-3, 12px);
  align-items: center;
  min-width: 0;
  padding: var(--erp-ui-space-3, 12px);
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-soft);
}

.fiscal-classifier-toolbar__search {
  display: block;
  min-width: 0;
}

.fiscal-classifier-toolbar__search .erp-field-control {
  width: 100%;
}

.fiscal-classifier-toolbar__result {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

.fiscal-classifier-browser {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}

.fiscal-classifier-browser__head,
.fiscal-classifier-list__row {
  display: grid;
  grid-template-columns: minmax(132px, 168px) minmax(0, 1fr);
  gap: var(--erp-ui-space-3, 12px);
}

.fiscal-classifier-browser__head {
  min-height: 36px;
  align-items: center;
  padding: 0 var(--erp-ui-space-3, 12px);
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.fiscal-classifier-list {
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  background: var(--erp-ui-surface);
}

.fiscal-classifier-list__row {
  align-items: center;
  min-height: 48px;
  padding: var(--erp-ui-space-2, 8px) var(--erp-ui-space-3, 12px);
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.fiscal-classifier-list__row:last-child {
  border-bottom: 0;
}

.fiscal-classifier-list__code {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.fiscal-classifier-list__code strong {
  color: var(--erp-ui-accent);
  font-size: 12px;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
}

.fiscal-classifier-list__code small {
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.fiscal-classifier-list__label {
  min-width: 0;
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.4;
}

.fiscal-classifier-list__row[data-level="1"] .fiscal-classifier-list__label {
  font-weight: 850;
}

.fiscal-classifier-list__row[data-level="2"] .fiscal-classifier-list__label {
  padding-left: var(--erp-ui-space-2, 8px);
}

.fiscal-classifier-list__row[data-level="3"] .fiscal-classifier-list__label,
.fiscal-classifier-list__row[data-level="4"] .fiscal-classifier-list__label,
.fiscal-classifier-list__row[data-level="5"] .fiscal-classifier-list__label {
  padding-left: var(--erp-ui-space-4, 16px);
}

.fiscal-classifier-list__state {
  display: grid;
  place-items: center;
  min-height: 100%;
  padding: var(--erp-ui-space-4, 16px);
  color: var(--erp-ui-muted);
  text-align: center;
}

.fiscal-classifier-list__state .erp-spinner {
  margin-bottom: var(--erp-ui-space-2, 8px);
}

.fiscal-classifier-workspace__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-3, 12px);
  min-height: 44px;
  padding: var(--erp-ui-space-2, 8px) var(--erp-ui-space-3, 12px);
  border-top: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 750;
}

.fiscal-classifier-workspace__foot > span {
  display: inline-flex;
  align-items: center;
  gap: var(--erp-ui-space-2, 8px);
}

.fiscal-classifier-workspace__foot :is(i, svg, .lucide) {
  width: 14px;
  height: 14px;
}

.fiscal-classifier-load-more {
  min-height: 30px;
}

.product-directory-section {
  display: grid;
  gap: var(--erp-ui-space-3, 12px);
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.product-directory-section > .product-directory-section__head {
  min-height: 48px;
  margin: 0;
  border-top: 0;
}

.product-directory-section__heading {
  display: flex;
  align-items: center;
  gap: var(--erp-ui-space-2, 8px);
  min-width: 0;
}

.product-directory-section__heading > span:last-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.product-directory-section__heading small {
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.product-directory-section__icon {
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-muted);
  box-shadow: inset 0 0 0 1px var(--erp-ui-border-soft);
}

.product-directory-section__icon :is(i, svg, .lucide) {
  width: 15px;
  height: 15px;
}

.product-directories-panel__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--erp-ui-space-3, 12px);
  min-width: 0;
  padding: 0 var(--erp-ui-space-3, 12px) var(--erp-ui-space-3, 12px);
}

.product-characteristic-scope-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: var(--erp-ui-space-2, 8px);
  padding: 0 var(--erp-ui-space-3, 12px) var(--erp-ui-space-3, 12px);
}

.product-characteristic-scope-card {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  gap: var(--erp-ui-space-2, 8px);
  align-items: center;
  min-width: 0;
  padding: var(--erp-ui-space-2, 8px);
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-ui-surface-soft);
}

.product-characteristic-scope-card label {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.product-characteristic-scope-card label strong {
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 850;
}

.product-characteristic-scope-card select {
  width: 100%;
  min-width: 0;
  min-height: 32px;
}

.product-characteristic-scope-card .erp-status {
  min-width: 88px;
  justify-content: center;
}

.product-directory-card {
  display: grid;
  grid-template-rows: auto minmax(80px, 1fr);
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.product-directory-card__head {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  gap: var(--erp-ui-space-2, 8px);
  align-items: center;
  min-height: 62px;
  padding: var(--erp-ui-space-3, 12px);
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-soft);
}

.product-directory-card__icon {
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-muted);
  box-shadow: inset 0 0 0 1px var(--erp-ui-border-soft);
}

.product-directory-card__icon :is(i, svg, .lucide) {
  width: 15px;
  height: 15px;
}

.product-directory-card__head h3,
.product-directory-card__head p {
  margin: 0;
}

.product-directory-card__head h3 {
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
}

.product-directory-card__head p {
  margin-top: 3px;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.35;
}

.product-directory-card__heading {
  min-width: 0;
}

.product-directory-card__editor {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--erp-ui-space-2, 8px);
  min-width: 0;
}

.product-directory-card__editor-fields {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
  gap: var(--erp-ui-space-2, 8px);
  grid-column: 1 / -1;
  min-width: 0;
}

.product-directory-card__editor-fields .erp-field {
  display: grid;
  gap: 4px;
  min-width: 0;
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 800;
}

.product-directory-card__editor-fields textarea {
  min-height: 58px;
  resize: vertical;
}

.product-directory-icon-picker {
  display: flex;
  grid-column: 1 / -1;
  gap: 6px;
  align-items: center;
  overflow-x: auto;
  padding: 1px;
  scrollbar-width: thin;
}

.product-directory-icon-picker__option {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  padding: 0;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: 50%;
  background: var(--erp-ui-surface);
  color: var(--erp-ui-muted);
  cursor: pointer;
}

.product-directory-icon-picker__option:is(:hover, :focus-visible),
.product-directory-icon-picker__option.is-selected {
  border-color: var(--erp-ui-accent);
  color: var(--erp-ui-accent);
  outline: none;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--erp-ui-accent) 12%, transparent);
}

.product-directory-icon-picker__option :is(i, svg, .lucide) {
  width: 16px;
  height: 16px;
}

.product-directory-card[data-product-directory-card="unit"] .product-directory-card__editor {
  grid-template-columns: minmax(0, 1fr) minmax(104px, .45fr);
}

.product-directory-card[data-product-directory-card="age_group"] .product-directory-card__editor {
  grid-template-columns: minmax(0, 1fr) minmax(68px, .32fr) minmax(68px, .32fr);
}

.product-directory-editor-popover {
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 0;
  max-height: min(560px, calc(100vh - 24px));
  padding: 0;
}

.product-directory-editor-popover > .erp-product-choice-popover__header {
  padding: 14px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.product-directory-editor-popover__body {
  min-width: 0;
  min-height: 0;
  padding: 14px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

.product-directory-editor-popover__body .product-directory-card__editor {
  gap: 12px;
}

.product-directory-editor-popover[data-product-directory-editor-type="unit"] .product-directory-card__editor {
  grid-template-columns: minmax(0, 1fr) minmax(120px, .45fr);
}

.product-directory-editor-popover[data-product-directory-editor-type="age_group"] .product-directory-card__editor {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.product-directory-editor-popover__footer {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  min-height: 58px;
  padding: 10px 14px;
  border-top: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-soft);
}

.product-directory-editor-popover__footer .erp-btn {
  min-width: 108px;
}

.product-directory-card__editor :is(.erp-field-control, input, select) {
  width: 100%;
  min-width: 0;
  min-height: 36px;
}

.product-directory-card__actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  min-width: 0;
}

.product-directory-card__actions .erp-status {
  min-width: 28px;
  justify-content: center;
}

.product-directory-card__items {
  display: flex;
  align-items: flex-start;
  align-content: flex-start;
  flex-wrap: wrap;
  gap: var(--erp-ui-space-2, 8px);
  min-width: 0;
  padding: var(--erp-ui-space-3, 12px);
}

.product-directory-item {
  flex: 0 0 auto;
  max-width: 100%;
  min-height: 36px;
}

.product-directory-item small {
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 750;
}

.product-directory-item__edit {
  display: inline-flex;
  gap: 5px;
  align-items: flex-start;
  flex: 0 1 auto;
  min-width: 42px;
  min-height: 34px;
  max-width: calc(100% - 28px);
  padding: 0 10px;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

.product-directory-item__text {
  display: grid;
  gap: 2px;
  min-width: 0;
  padding-block: 6px;
  text-align: left;
}

.product-directory-item__name,
.product-directory-item__description {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.product-directory-item__name {
  color: inherit;
  font: inherit;
  line-height: 1.2;
}

.product-directory-item__description {
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 700;
  line-height: 1.25;
}

.product-directory-item__edit > :is(i, svg, .lucide) {
  width: 13px;
  height: 13px;
  flex: 0 0 13px;
  margin-top: 9px;
}

.product-directory-item__edit:focus-visible {
  border-radius: 999px;
  outline: 2px solid var(--erp-ui-accent);
  outline-offset: 2px;
}

.product-directory-card__empty {
  width: 100%;
  margin: auto 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  text-align: center;
}

@media (max-width: 760px) {
  .product-directories-panel__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .settings-form:has(.fiscal-classifier-workspace:not([hidden])) .product-directories-panel:has(.fiscal-classifier-workspace:not([hidden])) {
    height: calc(100% - var(--erp-footer-h));
  }

  .fiscal-classifier-toolbar {
    grid-template-columns: minmax(0, 1fr);
  }

  .fiscal-classifier-toolbar__result {
    justify-self: start;
  }

  .fiscal-classifier-workspace__head {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .fiscal-classifier-workspace__actions {
    grid-column: 1 / -1;
    justify-content: space-between;
    width: 100%;
  }

  .fiscal-classifier-browser__head,
  .fiscal-classifier-list__row {
    grid-template-columns: minmax(92px, 112px) minmax(0, 1fr);
  }

  .fiscal-classifier-workspace__foot > span {
    display: none;
  }

  .fiscal-classifier-workspace__foot {
    justify-content: center;
  }
}

@media (max-width: 520px) {
  .product-directory-section__heading small,
  .product-directory-card__head p {
    display: none;
  }

  .product-directory-card[data-product-directory-card="unit"] .product-directory-card__editor {
    grid-template-columns: minmax(0, 1fr);
  }

  .product-directory-card[data-product-directory-card="age_group"] .product-directory-card__editor {
    grid-template-columns: repeat(2, minmax(64px, 1fr));
  }

  .product-directory-card[data-product-directory-card="age_group"] .product-directory-card__editor .erp-field-control {
    grid-column: 1 / -1;
  }

  .product-directory-card__editor-fields {
    grid-template-columns: minmax(0, 1fr);
  }

  .product-directory-card__head:has(.product-directory-card__editor:not([hidden])) {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .product-directory-card__head:has(.product-directory-card__editor:not([hidden])) .product-directory-card__icon {
    display: none;
  }

  .product-directory-card__head {
    grid-template-columns: 30px minmax(0, 1fr) auto;
  }

  .product-directory-card__actions {
    gap: 4px;
  }

  .product-directory-editor-popover__body {
    padding: 12px;
  }

  .product-directory-editor-popover__body .product-directory-card__editor,
  .product-directory-editor-popover[data-product-directory-editor-type="unit"] .product-directory-card__editor,
  .product-directory-editor-popover[data-product-directory-editor-type="age_group"] .product-directory-card__editor,
  .product-directory-editor-popover .product-directory-card__editor-fields {
    grid-template-columns: minmax(0, 1fr);
  }

  .product-directory-editor-popover__footer {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 10px 12px;
  }

  .product-directory-editor-popover__footer .erp-btn {
    min-width: 0;
  }
}

.erp-product-description-form {
  min-width: 0;
  margin-top: var(--erp-ui-space-3, 12px);
}

.erp-rich-text-field__description-head .erp-product-description-form__label {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  gap: var(--erp-ui-space-2, 8px);
  padding: 7px var(--erp-ui-space-3, 12px);
  color: var(--erp-ui-text);
}

.erp-product-description-form__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: var(--erp-ui-radius-sm, 6px);
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
}

.erp-product-description-form__icon :is(i, svg, .lucide) {
  width: 15px;
  height: 15px;
}

.erp-product-description-form__heading {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.erp-product-description-form__heading strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
}

.erp-product-description-form__heading small {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 650;
  line-height: 1.25;
}

.erp-product-description-form .erp-rich-text-field__input {
  min-height: 148px;
  line-height: 1.55;
  resize: vertical;
}

.erp-product-description-form .erp-rich-text-field__input[readonly] {
  background: var(--erp-ui-surface-soft);
  cursor: default;
}

@media (max-width: 620px) {
  .erp-product-characteristics-page__grid,
  .erp-product-tax-inline__control {
    grid-template-columns: minmax(0, 1fr);
  }

  .erp-product-characteristics-slider__nav {
    padding-inline: 2px;
  }

  .erp-rich-text-field__description-head .erp-product-description-form__label {
    padding: 7px 9px;
  }

  .erp-product-description-form__heading small {
    display: none;
  }
}

.erp-product-variants-summary {
  overflow: hidden;
  margin-bottom: 12px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-product-variants-summary .erp-kpis {
  margin: 0;
}

.erp-product-tab-panel .erp-price-panel {
  padding: 0;
  background: transparent;
}

.erp-product-price-mode-controls {
  display: flex;
  width: 100%;
  margin: 0 0 10px;
  justify-content: flex-end;
}

.erp-product-tab-panel > .erp-detail-grid,
.erp-product-tab-panel > .erp-info-strip,
.erp-product-tab-panel > .erp-product-note,
.erp-product-tab-panel > .erp-form,
.erp-product-tab-panel > .table-wrap,
.erp-product-tab-panel > .erp-empty-state {
  margin-top: 12px;
}

.erp-product-tab-panel > .erp-detail-grid--list:first-child {
  margin-top: 0;
}

.erp-product-movements-table {
  min-width: 620px;
  table-layout: fixed;
}

.erp-product-movements-table :is(th, td):nth-child(1) {
  width: 94px;
}

.erp-product-movements-table :is(th, td):nth-child(3) {
  width: 72px;
  text-align: center;
}

.erp-product-movements-table :is(th, td):nth-child(4) {
  width: 104px;
}

.erp-product-movements-table :is(th, td):nth-child(5) {
  width: 54px;
  text-align: center;
}

.erp-product-movement__date,
.erp-product-movement__amount {
  white-space: nowrap;
}

.erp-product-movement__event {
  display: grid;
  justify-items: start;
  gap: 4px;
  min-width: 0;
}

.erp-product-movement__event > strong {
  max-width: 100%;
  color: var(--erp-ui-text);
  font-size: 12px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.erp-product-movement__details {
  display: grid;
  gap: 2px;
  min-width: 0;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.erp-product-movement__qty {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  min-height: 26px;
  padding: 3px 8px;
  border-radius: var(--erp-ui-radius-pill);
  font-size: 12px;
  line-height: 1;
}

.erp-product-movement__qty.is-positive {
  background: color-mix(in srgb, var(--erp-ui-success) 11%, var(--erp-ui-surface));
  color: var(--erp-ui-success);
}

.erp-product-movement__qty.is-negative {
  background: color-mix(in srgb, var(--erp-ui-danger) 10%, var(--erp-ui-surface));
  color: var(--erp-ui-danger);
}

.erp-product-movements-table .erp-table__actions {
  justify-content: center;
}

.erp-product-movement__no-action {
  color: var(--erp-ui-muted);
}

.erp-product-media-panel {
  min-width: 0;
  display: grid;
  gap: 10px;
}

.erp-product-media-prices {
  position: absolute;
  top: 12px;
  left: 50%;
  z-index: 3;
  display: flex;
  align-items: stretch;
  justify-content: center;
  width: max-content;
  max-width: calc(100% - 24px);
  min-width: 0;
  padding: 3px;
  overflow-x: auto;
  overflow-y: hidden;
  border: 1px solid rgba(255, 255, 255, .30);
  border-radius: var(--erp-ui-radius-pill);
  background: rgba(15, 23, 42, .72);
  box-shadow: 0 8px 24px rgba(15, 23, 42, .20);
  backdrop-filter: blur(14px) saturate(1.18);
  -webkit-backdrop-filter: blur(14px) saturate(1.18);
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
  transform: translateX(-50%);
}

.erp-product-media-prices::-webkit-scrollbar {
  display: none;
}

.erp-product-media-prices[data-product-price-count="1"] .erp-product-media-price {
  min-width: 126px;
}

.erp-product-media-prices[data-product-price-count="2"] .erp-product-media-price {
  min-width: 112px;
}

.erp-product-media-price {
  position: relative;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 2px;
  min-width: 76px;
  min-height: 42px;
  padding: 6px 10px;
  border: 0;
  border-radius: var(--erp-ui-radius-pill);
  background: transparent;
  text-align: center;
}

.erp-product-media-price + .erp-product-media-price::before {
  content: "";
  position: absolute;
  top: 9px;
  bottom: 9px;
  left: 0;
  width: 1px;
  background: rgba(255, 255, 255, .20);
}

.erp-product-media-price[data-product-media-price="retail"] {
  background: color-mix(in srgb, var(--erp-ui-accent) 82%, rgba(255, 255, 255, .10));
}

.erp-product-media-price[data-product-media-price="retail"]::before,
.erp-product-media-price[data-product-media-price="retail"] + .erp-product-media-price::before {
  display: none;
}

.erp-product-media-price span {
  color: rgba(255, 255, 255, .72);
  font-size: 9px;
  font-weight: 850;
  line-height: 1.1;
}

.erp-product-media-price strong {
  min-width: 0;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.erp-product-media-price[data-product-media-price="retail"] span {
  color: rgba(255, 255, 255, .82);
}

.erp-product-media-card {
  min-width: 0;
  display: grid;
  gap: 10px;
}

.erp-product-media__main {
  position: relative;
  display: grid;
  place-items: center;
  aspect-ratio: 1 / 1;
  min-height: 0;
  border: 0;
  border-radius: var(--erp-ui-radius);
  background: transparent;
  overflow: hidden;
}

.erp-product-media__stage {
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  display: grid;
  place-items: center;
}

.erp-product-media__main img,
.erp-product-media__main video {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
  border: 0;
  outline: 0;
  background: transparent;
  box-shadow: none;
}

.erp-product-media__main video {
  position: relative;
  z-index: 1;
}

.erp-product-media__main.is-empty {
  background: #f8fafc;
}

.erp-empty-media {
  display: grid;
  place-items: center;
  gap: 8px;
  color: #64748b;
  font-size: 13px;
  font-weight: 700;
  opacity: .72;
}

.erp-empty-media i,
.erp-empty-media svg,
.erp-empty-media .lucide {
  width: 38px !important;
  height: 38px !important;
}

.erp-product-media__thumbs {
  display: flex;
  justify-content: flex-start;
  gap: 8px;
  overflow: auto;
  margin-top: 0;
  padding-bottom: 4px;
}

.erp-product-thumb-wrap {
  position: relative;
  flex: 0 0 68px;
  width: 68px;
  height: 68px;
}

.erp-product-thumb {
  display: grid;
  place-items: center;
  border: 0;
  border-radius: var(--erp-ui-radius, 10px);
  background: transparent;
  padding: 0;
  cursor: pointer;
  overflow: hidden;
  flex: 0 0 auto;
  width: 68px;
  height: 68px;
}

.erp-product-thumb:hover,
.erp-product-thumb:focus-visible,
.erp-product-thumb.is-active {
  border-color: transparent;
}

.erp-product-thumb.is-active {
  box-shadow: none;
}

.erp-product-thumb:focus-visible {
  outline: 2px solid var(--erp-action-accent, #111827);
  outline-offset: 2px;
}

.erp-product-thumb img,
.erp-product-thumb video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: center;
  border: 0;
  outline: 0;
  border-radius: inherit;
  background: transparent;
  box-shadow: none;
  opacity: .78;
  transition: opacity var(--erp-ui-transition, .16s ease), transform var(--erp-ui-transition, .16s ease);
}

.erp-product-thumb:is(:hover, :focus-visible, .is-active) :is(img, video) {
  opacity: 1;
  transform: scale(1.03);
}

.erp-product-thumb--video {
  position: relative;
}

.erp-product-thumb__play,
.media-photo-uploader__video-badge {
  position: absolute;
  inset: 50% auto auto 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  color: #fff;
  background: rgba(15, 23, 42, .72);
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.erp-product-thumb__play i,
.erp-product-thumb__play svg,
.media-photo-uploader__video-badge i,
.media-photo-uploader__video-badge svg {
  width: 14px;
  height: 14px;
}

.erp-product-media-divider {
  width: 100%;
  height: 1px;
  margin: 2px 0;
  background: var(--erp-ui-border-soft);
}

.erp-product-media-choices {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.erp-product-choice-group {
  display: grid;
  gap: 8px;
  min-width: 0;
  margin-top: 12px;
}

.erp-product-choice-group--owner-modal {
  margin-top: 0;
}

.erp-product-choice-group__title {
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.2;
}

.erp-product-choice-bubbles {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 10px 11px 4px 2px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
}

.erp-product-choice-bubbles::-webkit-scrollbar {
  display: none;
}

.erp-btn--bubble.erp-product-choice-bubble {
  position: relative;
  flex: 0 0 auto;
  min-height: 36px;
  padding: 0 12px;
  overflow: visible;
}

.erp-product-choice-bubble .erp-social-color-badge {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  pointer-events: none;
}

.erp-product-choice-bubble__label {
  min-width: 0;
  line-height: 1;
  white-space: nowrap;
}

.erp-product-choice-bubble__badge {
  position: absolute;
  top: -9px;
  right: -9px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 19px;
  height: 19px;
  padding: 0 5px;
  border: 2px solid var(--erp-system-badge-border);
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  font-size: 10px;
  font-weight: 850;
  line-height: 1;
  box-shadow: var(--erp-system-badge-shadow);
  pointer-events: none;
}

.erp-product-choice-bubble__badge.is-available {
  background: color-mix(in srgb, var(--erp-ui-success) 12%, var(--erp-ui-surface));
  color: var(--erp-ui-success);
}

.erp-product-choice-bubble__badge.is-empty {
  background: color-mix(in srgb, var(--erp-ui-danger) 10%, var(--erp-ui-surface));
  color: var(--erp-ui-danger);
}

.erp-product-choice-bubble__badge.is-pending,
.erp-square-option__badge.is-pending {
  background: color-mix(in srgb, var(--erp-ui-warning) 14%, var(--erp-ui-surface));
  color: var(--erp-ui-warning);
}

.erp-product-choice-bubble.is-inventory-pending:disabled,
.erp-product-choice-bubble.is-inventory-pending[aria-disabled="true"] {
  border-color: color-mix(in srgb, var(--erp-ui-warning) 42%, var(--erp-ui-border-soft));
  background: color-mix(in srgb, var(--erp-ui-warning) 7%, var(--erp-ui-surface));
  color: var(--erp-ui-text);
  cursor: help;
  opacity: 1;
}

.erp-product-choice-bubble.is-active,
.erp-product-choice-bubble[aria-current="true"] {
  border-color: var(--erp-action-active-bg);
  background: var(--erp-action-active-bg);
  color: var(--erp-action-active-text);
}

.erp-product-choice-bubble:disabled,
.erp-product-choice-bubble.is-disabled,
.erp-product-choice-bubble[aria-disabled="true"] {
  border-color: var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  cursor: not-allowed;
  opacity: .58;
  transform: none;
}

.erp-product-thumb--add {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 3px;
  border: 1px dashed var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface-soft, #f8fafc);
  color: #334155;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.1;
  text-align: center;
}

.erp-product-thumb--add i,
.erp-product-thumb--add svg,
.erp-product-thumb--add .lucide {
  width: 18px !important;
  height: 18px !important;
}

.erp-product-note {
  padding-top: 12px;
  border-top: 1px solid #e5e7eb;
  color: #64748b;
  font-size: 13px;
  line-height: 1.45;
}

.erp-product-note strong {
  color: #111827;
}

@media (max-width: 900px) {
  .erp-modal.erp-owner-product-view-modal {
    width: calc(100vw - 12px);
    max-width: none;
    height: calc(100vh - 12px);
    max-height: calc(100vh - 12px);
  }

  .page-product-view--owner-modal {
    padding: 10px 12px;
  }

  .erp-product-detail-layout {
    grid-template-columns: 1fr;
  }

  .page-product-view--owner-modal .erp-product-detail-layout {
    grid-template-rows: minmax(150px, 32vh) minmax(0, 1fr);
  }

  .erp-product-tabs .erp-tabs__item {
    flex: 0 0 auto;
  }

  .erp-product-media-price {
    min-height: 40px;
    padding: 5px 9px;
  }

  .erp-product-media__main {
    aspect-ratio: 4 / 3;
  }

  .erp-product-media__main img,
  .erp-product-media__main video {
    height: 100%;
  }
}

@media (max-width: 520px) {
  .erp-product-media-prices {
    top: 10px;
    max-width: calc(100% - 20px);
    justify-content: flex-start;
    scroll-snap-type: inline proximity;
  }

  .erp-product-media-price {
    min-width: 74px;
    scroll-snap-align: start;
  }
}

.erp-description-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 16px;
}

.erp-description-list div {
  display: grid;
  gap: 2px;
}

.erp-description-list dt {
  font-size: 12px;
  color: #64748b;
  font-weight: 700;
}

.erp-description-list dd {
  margin: 0;
  color: #111827;
  font-weight: 700;
}

.erp-description-list--compact {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.erp-info-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #f8fafc;
}

.erp-info-strip__item {
  min-width: 0;
  display: grid;
  align-content: center;
  gap: 4px;
  min-height: 72px;
  padding: 12px;
  border-left: 1px solid #e5e7eb;
}

.erp-info-strip__item:first-child {
  border-left: 0;
}

.erp-info-strip__item span {
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
}

.erp-info-strip__item strong {
  color: #111827;
  font-size: 17px;
  line-height: 1.2;
  font-weight: 800;
}

.erp-info-strip__item small {
  color: #64748b;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 700;
}

.settings-shell {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  height: var(--erp-workspace-viewport-h);
  min-height: 480px;
  min-width: 0;
}

.settings-layout-top {
  flex: 0 0 auto;
  min-width: 0;
}

.settings-tabs,
.erp-tabs {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  gap: 0;
  background: var(--erp-button-group-bg);
  border: 1px solid var(--erp-button-group-border);
  border-radius: var(--erp-button-group-radius);
}

.settings-tabs {
  box-shadow: var(--erp-ui-shadow-sm, 0 3px 10px rgba(15, 23, 42, .06));
}

.settings-tab,
.erp-tabs__item {
  display: inline-flex;
  flex: 1 1 0;
  min-width: 0;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  border: 0;
  border-radius: 0;
  background: var(--erp-button-group-bg);
  color: var(--erp-button-group-text);
  cursor: pointer;
  font-family: inherit;
  padding: 0 8px;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
  font-size: 12px;
  transition: color 0.15s ease, border-color 0.15s ease, background-color 0.15s ease;
  appearance: none;
  -webkit-appearance: none;
}

.settings-tab + .settings-tab,
.erp-tabs__item + .erp-tabs__item {
  border-left: 1px solid var(--erp-button-group-divider);
}

.settings-tab i,
.settings-tab svg,
.settings-tab .lucide,
.erp-tabs__item i,
.erp-tabs__item svg,
.erp-tabs__item .lucide {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}

.settings-tab span,
.erp-tabs__item span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.settings-tab:hover,
.erp-tabs__item:hover,
.erp-tabs__item:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  text-decoration: none;
  outline: none;
}

.settings-tab.is-active,
.erp-tabs__item.is-active {
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.settings-role-tabs-wrap {
  margin-top: 8px;
  margin-bottom: 10px;
  overflow: hidden;
}

.settings-role-tabs {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  background: var(--erp-button-group-bg);
  border: 1px solid var(--erp-button-group-border);
  border-radius: var(--erp-button-group-radius);
  align-items: stretch;
  scrollbar-width: thin;
  scrollbar-color: #cbd5e1 transparent;
}

.settings-role-tabs::-webkit-scrollbar {
  height: 8px;
}

.settings-role-tabs::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 6px;
}

.settings-role-tabs::-webkit-scrollbar-track {
  background: transparent;
}

.settings-role-tab-item {
  position: relative;
  display: inline-flex;
  flex: 1 1 0;
  min-width: 0;
  align-items: stretch;
}

.settings-role-tab,
.settings-role-tab:link {
  position: relative;
  display: inline-flex;
  flex: 1 1 0;
  min-width: 0;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 42px;
  color: var(--erp-button-group-text);
  padding: 0 30px 0 10px;
  border-radius: 0;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
  font-size: 12px;
  line-height: 1;
  border: 0;
  background: var(--erp-button-group-bg);
  transition: color 0.15s ease, background-color 0.15s ease;
  border-left: 1px solid var(--erp-button-group-divider);
}

.settings-role-tab-item:not(.is-add) .settings-role-tab {
  padding-right: 30px;
}

.settings-role-tab-item:first-child .settings-role-tab {
  border-left: 0;
}

.settings-role-tab.is-add {
  background: var(--erp-button-group-bg);
  color: var(--erp-button-group-text);
}

.settings-role-tab__icon,
.settings-role-tab__icon i,
.settings-role-tab__icon .lucide {
  width: 14px;
  height: 14px;
  color: inherit;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.settings-role-tab__text {
  min-width: 0;
  overflow: hidden;
  font-size: 12px;
  text-overflow: ellipsis;
}

.settings-role-tab:hover {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
}

.settings-role-tab.is-active {
  color: var(--erp-button-group-active-text);
  background: var(--erp-button-group-active-bg);
}

.settings-role-tab:focus-visible {
  outline: 2px solid #dbeafe;
  outline-offset: -2px;
}

.settings-role-tab__remove {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 24px;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  padding: 0;
  border-radius: 0;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.settings-role-tab__remove:hover {
  background: rgba(0, 0, 0, 0.07);
  color: #b91c1c;
}

.settings-role-tab__remove i,
.settings-role-tab__remove .lucide {
  width: 14px;
  height: 14px;
}

.settings-layout {
  display: grid;
  grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
  width: 100%;
  flex: 1 1 auto;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border, #d6dee9);
  border-radius: var(--erp-workspace-radius);
  background: var(--erp-ui-surface, #fff);
  box-shadow: var(--erp-ui-shadow, 0 12px 28px rgba(15, 23, 42, .10));
}

.settings-content-wrap {
  height: 100%;
  min-width: 0;
  min-height: 0;
}

.settings-section-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
  border: 0;
  background: #fff;
  overflow: hidden;
}

.settings-section-card__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 58px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e7ecf2);
  background: #fff;
  color: #111827;
}

.settings-section-card__head-main {
  min-width: 0;
}

.settings-section-card__actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-shrink: 0;
  margin-left: auto;
}

.settings-section-card__actions:empty {
  display: none;
}

.settings-section-card__actions.has-pending-action {
  display: inline-flex;
}

.settings-section-card__actions .erp-switch {
  margin: 0;
}

.settings-section-card__title {
  margin: 0;
  color: #111827;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.25;
}

.settings-section-card__desc {
  margin: 3px 0 0;
  color: #64748b;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
}

.settings-form {
  display: block;
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
  padding: 12px;
  background: color-mix(in srgb, var(--erp-ui-surface, #fff) 92%, var(--erp-ui-bg, #f4f7fb));
}

.settings-form[hidden] {
  display: none !important;
}

.settings-groups {
  display: grid;
  gap: 14px;
}

.settings-inner-tabs-wrap {
  display: grid;
  gap: 12px;
}

.settings-inner-tabs {
  min-height: 42px;
}

.settings-inner-tab-panels {
  min-width: 0;
}

.settings-card-browser {
  align-content: start;
}

.settings-card-browser__panel {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.settings-card-main-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.settings-card-main-heading__back {
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  margin-left: -4px;
}

.settings-card-main-heading__divider {
  flex: 0 0 auto;
  width: 1px;
  height: 22px;
  background: #dbe3ee;
}

.settings-card-main-heading__breadcrumb {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  min-width: 0;
  gap: 7px;
  overflow: hidden;
  color: var(--erp-ui-muted, #64748b);
}

.settings-card-main-heading__crumb {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-card-main-heading__crumb.is-current {
  flex: 1 1 auto;
  color: var(--erp-ui-text, #111827);
}

.settings-card-main-heading__crumb:not(.is-current) {
  flex: 0 0 auto;
}

.settings-card-main-heading__separator {
  flex: 0 0 auto;
  color: #cbd5e1;
}

.settings-integration-card-grid {
  --erp-wizard-choice-size: 136px;
  width: 100%;
  min-height: 0;
  margin: 0;
  justify-content: start;
  justify-items: stretch;
  align-content: start;
}

.settings-integration-card-grid.erp-wizard-choice-actions,
.settings-integration-card-grid.erp-wizard-choice-actions--center {
  width: 100%;
  min-height: 0;
  margin: 0;
  align-content: start;
  justify-content: start;
}

.settings-integration-card {
  position: relative;
  width: 100%;
  height: 100%;
  min-width: 0;
  aspect-ratio: auto;
}

.settings-integration-card-shell {
  position: relative;
  width: 100%;
  min-width: 0;
  aspect-ratio: 1 / 1;
  border-radius: 28px;
}

.settings-integration-card-shell.is-off .settings-integration-card {
  background: var(--settings-integration-surface);
}

.settings-integration-card-shell {
  --settings-integration-brand: var(--erp-ui-primary, #2563eb);
  --settings-integration-surface: #f1f5f9;
  --settings-integration-ink: #475569;
}

.settings-integration-card-shell[data-settings-integration-card-shell="krokha_print"] {
  --settings-integration-brand: #1d4ed8;
}

.settings-integration-card-shell[data-settings-integration-card-shell="dps"] {
  --settings-integration-brand: #3730a3;
}

.settings-integration-card-shell[data-settings-integration-card-shell="checkbox"] {
  --settings-integration-brand: #7e22ce;
}

.settings-integration-card-shell[data-settings-integration-card-shell="nova_poshta"] {
  --settings-integration-brand: #b91c1c;
}

.settings-integration-card-shell[data-settings-integration-card-shell="ukr_poshta"] {
  --settings-integration-brand: #a16207;
}

.settings-integration-card-shell[data-settings-integration-card-shell="privatbank"] {
  --settings-integration-brand: #166534;
}

.settings-integration-card-shell[data-settings-integration-card-shell="monobank"] {
  --settings-integration-brand: #111827;
}

.settings-integration-card-shell .settings-integration-card {
  overflow: hidden;
  border: 1px solid #dbe3ee;
  border-radius: 28px;
  background: var(--settings-integration-surface);
  color: var(--settings-integration-ink);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .07);
  transition: color 150ms ease;
}

.settings-integration-card-shell .settings-integration-card:hover {
  border: 1px solid #dbe3ee;
  background: var(--settings-integration-surface);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .07);
  color: var(--settings-integration-ink);
  transform: none;
}

.settings-integration-card-shell .settings-integration-card:focus-visible {
  border: 1px solid #dbe3ee;
  background: var(--settings-integration-surface);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .07);
  color: var(--settings-integration-ink);
  filter: none;
  outline: none;
  transform: none;
}

.settings-integration-card-shell .settings-integration-card > i,
.settings-integration-card-shell .settings-integration-card > svg,
.settings-integration-card-shell .settings-integration-card > .lucide {
  box-sizing: border-box;
  width: 52px !important;
  height: 52px !important;
  padding: 12px;
  border-radius: 16px;
  background: #fff;
  color: var(--settings-integration-ink);
  transition: color 150ms ease;
}

.settings-integration-card-shell .settings-integration-card strong {
  color: var(--settings-integration-ink);
  transition: color 150ms ease;
}

.settings-integration-card-shell .settings-integration-card > span:not(.settings-integration-card__status) {
  color: #64748b;
  transition: color 150ms ease;
}

.settings-integration-card-shell .settings-integration-card:hover > i,
.settings-integration-card-shell .settings-integration-card:hover > svg,
.settings-integration-card-shell .settings-integration-card:hover > .lucide,
.settings-integration-card-shell .settings-integration-card:hover strong,
.settings-integration-card-shell .settings-integration-card:hover > span:not(.settings-integration-card__status),
.settings-integration-card-shell .settings-integration-card:focus-visible > i,
.settings-integration-card-shell .settings-integration-card:focus-visible > svg,
.settings-integration-card-shell .settings-integration-card:focus-visible > .lucide,
.settings-integration-card-shell .settings-integration-card:focus-visible strong,
.settings-integration-card-shell .settings-integration-card:focus-visible > span:not(.settings-integration-card__status) {
  color: var(--settings-integration-brand);
}

.settings-integration-card-shell .settings-integration-card.is-disabled,
.settings-integration-card-shell .settings-integration-card:disabled {
  opacity: 1;
}

.settings-integration-card-shell .settings-integration-card__status.is-active,
.settings-integration-card-shell .settings-integration-card__status.is-success {
  color: var(--erp-badge-success-text);
}

.settings-integration-card-shell .settings-integration-card__status.is-warning {
  color: var(--erp-badge-warning-text);
}

.settings-integration-card-shell .settings-integration-card__status.is-info {
  color: var(--erp-badge-primary-text);
}

.settings-integration-card-shell .settings-integration-card__status.is-inactive {
  color: var(--erp-badge-disabled-text);
}

.settings-integration-card-shell .settings-integration-card__status.is-danger {
  color: var(--erp-badge-danger-text);
}

.settings-integration-card__switches {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
}

.settings-section-card__actions > .settings-integration-card__switches {
  position: static;
}

.settings-section-card__actions > .settings-integration-card__status {
  position: static;
  top: auto;
  left: auto;
  max-width: min(180px, 32vw) !important;
  translate: none;
}

.settings-integration-card__switch {
  margin: 0;
}

.settings-integration-card__status {
  position: absolute;
  top: 42px;
  left: 50%;
  z-index: 1;
  max-width: calc(100% - 20px) !important;
  margin: 0 !important;
  translate: -50% 0;
  white-space: nowrap;
  pointer-events: none;
}

.settings-integration-card .settings-integration-card__status i,
.settings-integration-card .settings-integration-card__status svg,
.settings-integration-card .settings-integration-card__status .lucide {
  width: 14px !important;
  height: 14px !important;
  margin: 0 !important;
}

.settings-integration-card__status span {
  overflow: hidden;
  color: currentColor;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-integration-card:has(.settings-integration-card__status) {
  padding-top: 58px;
}

.settings-field-group {
  min-width: 0;
}

.settings-field-group--tab-panel {
  display: block;
}

.settings-field-group__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 42px;
  margin: 0 -12px 12px;
  padding: 8px 12px;
  border-top: 1px solid var(--erp-ui-border-soft, #e7ecf2);
  border-bottom: 1px solid var(--erp-ui-border-soft, #e7ecf2);
  background: linear-gradient(180deg, var(--erp-ui-surface, #fff), var(--erp-ui-surface-muted, #f7f9fc));
}

.settings-field-group__title {
  margin: 0;
  color: #111827;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.25;
}

.settings-agent-status {
  white-space: nowrap;
}

.settings-integration-disabled-message {
  flex: 0 0 auto;
  margin: 12px;
}

.settings-section-card > .settings-role-tabs-wrap {
  flex: 0 0 auto;
  margin: 0;
  padding: 12px 12px 0;
}

.settings-integration-disabled-message[hidden] {
  display: none !important;
}

@media (max-width: 720px) {
  .settings-layout {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 0;
    overflow: visible;
  }

  .settings-shell {
    height: auto;
    min-height: 0;
  }

  .settings-layout > .sidebar-main-nav,
  .settings-section-card {
    min-height: 0;
  }

  .settings-section-card__head {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
  }

  .settings-section-card__actions {
    justify-content: flex-end;
    width: auto;
    min-width: 0;
    margin-left: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-toolbar__title-text {
    transition: none;
    transform: none;
  }

  .page-toolbar__title-text.is-title-switching {
    opacity: 1;
    transform: none;
  }
}

.settings-fields-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(var(--settings-group-columns, 1), minmax(0, 1fr));
}

.settings-field-sections {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.settings-field-section {
  min-width: 0;
}

[data-settings-heading-gradient="auth"] .settings-field-section > .settings-field-group__head {
  border-color: rgba(255, 255, 255, .22);
  background-color: #0f172a;
  background-image:
    radial-gradient(circle at 18% 16%, rgba(255, 255, 255, .18) 0, rgba(255, 255, 255, 0) 28%),
    radial-gradient(circle at 78% 20%, rgba(20, 184, 166, .22) 0, rgba(20, 184, 166, 0) 26%),
    linear-gradient(135deg, #0f172a 0%, #1d4ed8 52%, #14b8a6 100%);
  background-attachment: fixed;
  background-size: 100vw 100dvh;
}

[data-settings-heading-gradient="auth"] .settings-field-section > .settings-field-group__head .settings-field-group__title {
  color: #fff;
}

.settings-fields-grid--cols-1,
.settings-field-group--cols-1 { --settings-group-columns: 1; }

.settings-fields-grid--cols-2,
.settings-field-group--cols-2 { --settings-group-columns: 2; }

.settings-fields-grid--cols-3,
.settings-field-group--cols-3 { --settings-group-columns: 3; }

.settings-fields-grid--cols-4,
.settings-field-group--cols-4 { --settings-group-columns: 4; }

@media (max-width: 1200px) {
  .settings-fields-grid {
    grid-template-columns: repeat(min(2, var(--settings-group-columns, 1)), minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .settings-fields-grid {
    grid-template-columns: 1fr;
  }

  .settings-field-group {
    padding: 0;
  }
}

.settings-field {
  min-width: 0;
}

.settings-field--autocomplete {
  position: relative;
}

.settings-field--avatar {
  grid-column: 1 / -1;
  justify-items: center;
  text-align: center;
}

.settings-field--wide {
  grid-column: 1 / -1;
}

.settings-profile-media {
  display: grid;
  justify-items: center;
  width: 100%;
  padding: 2px 0 12px;
}

.settings-profile-cover {
  position: relative;
  width: 100%;
}

.settings-profile-cover__button {
  position: relative;
  display: block;
  width: 100%;
  height: clamp(150px, 24vw, 220px);
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(241, 245, 249, 0.96), rgba(226, 232, 240, 0.88));
  cursor: pointer;
  appearance: none;
  transition: border-color 0.14s ease, box-shadow 0.14s ease, transform 0.14s ease;
}

.settings-profile-cover__button:hover,
.settings-profile-cover__button:focus-visible {
  border-color: rgba(15, 23, 42, 0.24);
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.10);
  outline: none;
  transform: translateY(-1px);
}

.settings-profile-cover__button img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.settings-profile-cover__fallback {
  position: absolute;
  inset: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #64748b;
}

.settings-profile-cover__fallback i,
.settings-profile-cover__fallback svg {
  width: 28px;
  height: 28px;
}

.settings-profile-cover__photo-grid {
  width: 100%;
}

.settings-profile-cover__edit,
.settings-profile-avatar__edit {
  position: absolute;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid rgba(15, 23, 42, 0.10);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #0f172a;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
  cursor: pointer;
  appearance: none;
  z-index: 4;
  transition: background 0.14s ease, border-color 0.14s ease, box-shadow 0.14s ease, transform 0.14s ease;
}

.settings-profile-cover__edit:hover,
.settings-profile-cover__edit:focus-visible,
.settings-profile-avatar__edit:hover,
.settings-profile-avatar__edit:focus-visible {
  background: #fff;
  border-color: rgba(15, 23, 42, 0.20);
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.16);
  outline: none;
  transform: translateY(-1px);
}

.settings-profile-cover__edit i,
.settings-profile-cover__edit svg,
.settings-profile-avatar__edit i,
.settings-profile-avatar__edit svg {
  width: 15px;
  height: 15px;
}

.settings-profile-cover__edit {
  top: 12px;
  right: 12px;
}

.settings-profile-cover > .erp-media-remove {
  --erp-media-remove-offset: 12px;
}

.settings-profile-cover:has(> .erp-media-remove:not([hidden])) .settings-profile-cover__edit {
  right: 54px;
}

.settings-profile-avatar {
  display: grid;
  justify-items: center;
  gap: 8px;
  width: min(100%, 260px);
  margin-top: -46px;
  padding: 0 0 10px;
  position: relative;
  z-index: 2;
}

.settings-profile-avatar__edit {
  top: 52px;
  right: calc(50% - 52px);
  width: 30px;
  height: 30px;
}

.settings-profile-avatar__button {
  width: 88px;
  height: 88px;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
  cursor: pointer;
  transition: border-color 0.14s ease, box-shadow 0.14s ease, transform 0.14s ease;
}

.settings-profile-avatar__button:hover,
.settings-profile-avatar__button:focus-visible {
  border-color: rgba(15, 23, 42, 0.24);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.12);
  outline: none;
  transform: translateY(-1px);
}

.settings-profile-avatar__photo-grid {
  width: 100%;
}

@media (max-width: 1200px) {
  .erp-kpis--three {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .erp-kpis--three .detail-card:nth-child(3) {
    border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
    border-left: 0;
  }

  .erp-form-grid--filters {
    grid-template-columns: minmax(180px, 1fr);
  }

  .erp-detail-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .erp-kpis--three,
  .erp-detail-grid {
    grid-template-columns: 1fr;
  }

  .erp-kpis--three .detail-card {
    border-left: 0;
  }

  .erp-kpis--three .detail-card + .detail-card {
    border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  }
}

.settings-field__label {
  display: block;
  margin: 0;
  color: inherit;
  font: inherit;
  line-height: 1.2;
}

.settings-field__help {
  color: #64748b;
  font-size: 12px;
  line-height: 1.35;
}

.settings-token-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.settings-token {
  min-height: 30px;
  border: 1px dashed #cbd5e1;
  border-radius: 7px;
  background: #fff;
  color: #334155;
  cursor: pointer;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 800;
}

.settings-token:hover,
.settings-token:focus-visible {
  border-color: #94a3b8;
  background: #f1f5f9;
  color: #111827;
  outline: none;
}

.erp-field-control {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 40px;
  align-items: stretch;
}

.erp-field-control:not(.erp-field-control--select) {
  border: 1px solid #d1d5db;
  border-radius: var(--erp-field-radius);
  background: #fff;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease;
}

.erp-field-control:not(.erp-field-control--select):focus-within {
  z-index: 220;
  border-color: #64748b;
  box-shadow: 0 0 0 3px rgba(100, 116, 139, 0.14);
}

.erp-field-control--lookup {
  grid-template-columns: 40px minmax(0, 1fr);
}

.erp-field-control--phone {
  position: relative;
  grid-template-columns: minmax(76px, auto) minmax(0, 1fr);
}

.erp-field-control--has-right-action {
  grid-template-columns: minmax(0, 1fr) 40px;
}

.erp-field-control--has-left-action {
  grid-template-columns: 40px minmax(0, 1fr);
}

.erp-field-control--has-left-action.erp-field-control--has-right-action {
  grid-template-columns: 40px minmax(0, 1fr) 40px;
}

.erp-field-control--lookup.erp-field-control--has-right-action {
  grid-template-columns: 40px minmax(0, 1fr) 40px;
}

.erp-field-control--phone.erp-field-control--has-right-action {
  grid-template-columns: minmax(76px, auto) minmax(0, 1fr) 40px;
}

.erp-field-control--stepper {
  grid-template-columns: 34px minmax(54px, 1fr) 34px;
  border-radius: var(--erp-ui-radius, 8px);
}

.erp-field-control--stepper input {
  text-align: center;
  appearance: textfield;
}

.erp-field-control--stepper input::-webkit-outer-spin-button,
.erp-field-control--stepper input::-webkit-inner-spin-button {
  margin: 0;
  appearance: none;
}

.erp-field-control--select {
  position: relative;
  display: block;
}

.erp-field-control--select.is-open {
  z-index: 220;
}

.erp-field-control input,
.erp-field-control textarea {
  appearance: none;
  width: 100%;
  min-width: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #111827;
  font: inherit;
  font-weight: 600;
  padding: 9px 10px;
  outline: none;
}

.erp-field-control--lookup input,
.erp-field-control--phone input {
  border: 0;
  border-radius: 0;
}

.erp-field-control input:focus,
.erp-field-control textarea:focus {
  box-shadow: none;
}

.erp-rich-text-field {
  position: relative;
  min-width: 0;
}

.erp-rich-text-field__input {
  appearance: none;
  width: 100%;
  min-width: 0;
  border: 0;
  border-radius: var(--erp-field-radius);
  background: transparent;
  color: #111827;
  font: inherit;
  font-weight: 650;
  line-height: 1.35;
  outline: none;
  resize: vertical;
}

.erp-rich-text-field__input:focus {
  box-shadow: none;
}

.erp-rich-text-field__emoji {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
}

.erp-rich-text-field--description {
  display: grid;
  grid-template-rows: auto minmax(116px, auto);
  min-width: 0;
  overflow: visible;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-field-radius);
  background: var(--erp-ui-surface);
  transition: border-color var(--erp-ui-transition), box-shadow var(--erp-ui-transition);
}

.erp-rich-text-field--description:focus-within {
  border-color: color-mix(in srgb, var(--erp-ui-primary) 42%, var(--erp-ui-border));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--erp-ui-primary) 12%, transparent);
}

.erp-rich-text-field__description-head {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  min-width: 0;
  min-height: 42px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-rich-text-field__description-head label {
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 0 var(--erp-ui-space-3);
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.2;
}

.erp-rich-text-field__description-actions {
  display: flex;
  align-items: stretch;
  flex: 0 0 auto;
}

.erp-rich-text-field__emoji--description {
  position: relative;
  inset: auto;
  display: flex;
  align-items: stretch;
}

.erp-rich-text-field__description-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  min-width: 42px;
  height: 42px;
  border: 0;
  border-radius: 0;
  border-left: 1px solid var(--erp-ui-border-soft);
  background: transparent;
  color: var(--erp-ui-muted);
  cursor: pointer;
}

.erp-rich-text-field__description-action:hover,
.erp-rich-text-field__description-action:focus-visible,
.erp-rich-text-field__description-action.is-active {
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-text);
  outline: none;
}

.erp-rich-text-field__description-action i,
.erp-rich-text-field__description-action svg,
.erp-rich-text-field__description-action .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-rich-text-field__description-body {
  display: block;
  min-width: 0;
  line-height: 0;
}

.erp-rich-text-field--description .erp-rich-text-field__input {
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-height: 116px;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 11px var(--erp-ui-space-3);
  overflow: auto;
  resize: vertical;
  font: inherit;
  font-weight: 600;
  line-height: 1.45;
}

.erp-rich-text-field--description .erp-rich-text-field__input:focus {
  border: 0;
  box-shadow: none;
}

.erp-rich-text-field__emoji--description .erp-emoji-picker {
  top: calc(100% + 8px);
  right: 0;
  width: min(360px, calc(100vw - 24px));
}

.erp-select-control__custom {
  display: none;
}

.erp-field-control--select.is-enhanced select[data-erp-select-native] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  border: 0;
  opacity: 0;
  pointer-events: none;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
}

.erp-field-control--select.is-enhanced .erp-select-control__custom {
  position: relative;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: stretch;
  border: 1px solid #d1d5db;
  border-radius: var(--erp-field-radius);
  background: #fff;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease;
}

.erp-field-control--select.is-open .erp-select-control__custom,
.erp-field-control--select .erp-select-control__custom:focus-within {
  border-color: #64748b;
  box-shadow: 0 0 0 3px rgba(100, 116, 139, 0.14);
}

.erp-select-control__trigger svg {
  width: var(--erp-icon-size);
  height: var(--erp-icon-size);
  color: #64748b;
  transition: transform 0.16s ease, color 0.16s ease;
}

.erp-field-control--select .erp-select-control__trigger {
  min-height: 40px;
  border: 0;
  border-right: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.erp-field-control--select .erp-select-control__trigger:hover,
.erp-field-control--select .erp-select-control__trigger:focus-visible {
  background: var(--erp-ui-surface, #fff);
  border-color: #d1d5db;
}

.erp-select-control__value {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  min-height: 40px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #111827;
  font: inherit;
  font-weight: 600;
  text-align: left;
  padding: 9px 11px;
  cursor: pointer;
  transition: background-color 0.16s ease, color 0.16s ease;
}

.erp-select-control__value span {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-select-control__value:hover,
.erp-field-control--select.is-open .erp-select-control__value {
  background: #f8fafc;
}

.erp-select-control__value:focus-visible {
  outline: none;
}

.erp-select-control__value:disabled {
  background: #f8fafc;
  color: #94a3b8;
  cursor: not-allowed;
}

.erp-field-control--select.is-open .erp-select-control__trigger svg {
  color: #111827;
  transform: rotate(180deg);
}

.erp-field.is-error .erp-field-control--select .erp-select-control__custom,
.erp-field-control--select .erp-select-control__custom.is-error {
  border-color: #fca5a5;
  background: #fffafa;
}

.erp-select-control__menu {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 4px);
  z-index: 221;
  max-height: min(320px, calc(100vh - 140px));
  max-height: min(320px, calc(100dvh - 140px));
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  border: 1px solid #d1d5db;
  border-radius: var(--erp-field-radius);
  background: #fff;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.14);
  padding: 4px;
  -webkit-overflow-scrolling: touch;
}

.erp-select-control__option {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 36px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #111827;
  font: inherit;
  font-weight: 600;
  text-align: left;
  padding: 8px 9px;
  cursor: pointer;
}

.erp-select-control__option:hover,
.erp-select-control__option:focus-visible,
.erp-select-control__option.is-active {
  background: #f1f5f9;
  outline: none;
}

.erp-select-control__option.is-selected {
  background: #111827;
  color: #fff;
}

.erp-select-control__option:disabled {
  color: #94a3b8;
  cursor: not-allowed;
}

/* Portaled selects stay above their parent panel and are not clipped by composer overflow. */
.erp-select-portal {
  position: fixed;
  inset: 0;
  z-index: var(--erp-layer-modal-child);
  pointer-events: none;
}

.erp-select-control__menu.erp-select-control__menu--portal {
  position: fixed;
  right: auto;
  bottom: auto;
  z-index: var(--erp-layer-modal-child);
  min-width: 0;
  max-width: calc(100vw - 16px);
  pointer-events: auto;
}

.erp-inline-edit__control .erp-field-control--select.is-enhanced .erp-select-control__custom {
  grid-template-columns: 34px minmax(0, 1fr);
  overflow: visible;
  border: 0;
  border-bottom: 1px solid #111827;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.erp-inline-edit__control .erp-field-control--select .erp-select-control__value {
  min-height: 32px;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
  box-shadow: none;
}

.erp-inline-edit__control .erp-field-control--select .erp-select-control__trigger {
  min-height: 32px;
  border: 0;
  background: transparent;
}

.erp-inline-edit__control .erp-field-control--select .erp-select-control__value:hover,
.erp-inline-edit__control .erp-field-control--select.is-open .erp-select-control__value {
  background: transparent;
  box-shadow: none;
}

.erp-field-control__button {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  min-height: 38px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #0f172a;
  font: inherit;
  font-weight: 700;
  padding: 0;
  cursor: pointer;
  transition: background-color 0.16s ease, color 0.16s ease;
}

.erp-field-control__affix {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  min-height: 38px;
  border: 0;
  background: transparent;
  color: var(--erp-ui-muted);
  font: inherit;
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
  user-select: none;
}

.erp-field-control__affix--left {
  border-right: 1px solid var(--erp-ui-border-soft);
}

.erp-field-control__affix--right {
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-field-control__button--left {
  gap: 5px;
  padding: 0;
  border-top-left-radius: 7px;
  border-bottom-left-radius: 7px;
}

.erp-field-control__button--right {
  border-top-right-radius: 7px;
  border-bottom-right-radius: 7px;
}

.erp-field-control__phone-prefix {
  justify-content: center;
  min-width: 76px;
  padding: 0 10px;
  white-space: nowrap;
}

.erp-field-control__button:hover,
.erp-field-control__button:focus-visible {
  background: #f8fafc;
  outline: none;
}

.erp-field-control__button:disabled {
  opacity: 0.65;
  cursor: progress;
}

.erp-field-control__button svg,
.erp-btn svg {
  width: var(--erp-icon-size);
  height: var(--erp-icon-size);
}

.erp-field-control__button i,
.erp-field-control__button svg,
.erp-field-control__button .lucide {
  width: 14px;
  height: 14px;
}

.erp-field-control--lookup .erp-field-control__button svg {
  color: #64748b;
  transition: transform 0.16s ease, color 0.16s ease;
}

.erp-field-control--lookup.is-open .erp-field-control__button svg {
  color: #111827;
  transform: rotate(180deg);
}

.erp-field-control > .erp-suggestions {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  z-index: 221;
}

.erp-inline-edit__control .erp-field-control {
  grid-template-columns: 34px minmax(0, 1fr);
  border: 0;
  border-bottom: 1px solid #111827;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.erp-inline-edit__control .erp-field-control:focus-within {
  border: 0;
  border-bottom: 1px solid #111827;
  box-shadow: none;
}

.erp-inline-edit__control .erp-field-control__button {
  min-height: 32px;
  background: transparent;
}

.erp-inline-edit__control .erp-field-control input.erp-inline-edit__input {
  min-height: 32px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 2px 0 5px;
}

.erp-inline-edit__control .erp-field-control input.erp-inline-edit__input:focus {
  border-bottom-color: #111827;
  box-shadow: none;
}

.erp-phone-country-menu {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  z-index: 221;
  width: min(240px, 100%);
}

.settings-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
}

.settings-layout > .sidebar-main-nav {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
  border: 0;
  border-right: 1px solid var(--erp-ui-border-soft, #e7ecf2);
  background: #f8fafc;
  padding: 0;
  overflow: hidden;
}

.settings-layout > .sidebar-main-nav .sidebar-group-title {
  display: flex;
  align-items: center;
  min-height: 58px;
  margin: 0;
  padding: 10px 12px;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e7ecf2);
  background: #fff;
  color: #111827;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.25;
}

.settings-layout > .sidebar-main-nav > nav {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
  padding: 8px;
}

.settings-layout > .sidebar-main-nav .sidebar-group-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 4px;
}

.settings-layout > .sidebar-main-nav .sidebar-group-list a {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 8px;
  border-radius: 6px;
  text-decoration: none;
  color: #334155;
  border: 0;
  background: transparent;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.settings-layout > .sidebar-main-nav .sidebar-group-list .sidebar-item-icon,
.settings-layout > .sidebar-main-nav .sidebar-group-list .sidebar-item-icon > i,
.settings-layout > .sidebar-main-nav .sidebar-group-list .sidebar-item-icon svg,
.settings-layout > .sidebar-main-nav .sidebar-group-list .sidebar-item-icon .lucide {
  width: 16px;
  height: 16px;
}

.settings-layout > .sidebar-main-nav .sidebar-group-list a:hover {
  background: var(--erp-ui-surface-soft, #edf2f7);
  color: #0f172a;
}

.settings-layout > .sidebar-main-nav .sidebar-group-list a.active {
  background: color-mix(in srgb, var(--erp-ui-primary, #2563eb) 10%, var(--erp-ui-surface, #fff));
  color: var(--erp-ui-primary-dark, #1d4ed8);
}

.settings-layout > .sidebar-main-nav .sidebar-group-list a:hover .sidebar-item-icon,
.settings-layout > .sidebar-main-nav .sidebar-group-list a:hover .sidebar-item-label,
.settings-layout > .sidebar-main-nav .sidebar-group-list a.active .sidebar-item-icon,
.settings-layout > .sidebar-main-nav .sidebar-group-list a.active .sidebar-item-label {
  color: inherit;
}

@media (max-width: 720px) {
  .settings-layout > .sidebar-main-nav {
    height: auto;
    max-height: 280px;
    border-right: 0;
    border-bottom: 1px solid #e5e7eb;
  }

  .settings-layout > .sidebar-main-nav > nav {
    max-height: 220px;
  }

  .settings-content-wrap {
    height: auto;
  }

  .settings-form {
    max-height: min(560px, 70vh);
  }
}

.settings-empty {
  margin: 0;
  color: #64748b;
}

.page-head {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 10px;
}

.page-subtitle {
  margin: 0;
  color: #64748b;
  font-size: 13px;
}

.table-wrap {
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

.erp-table {
  width: 100%;
  min-width: 720px;
  border-collapse: collapse;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  overflow: hidden;
}

.erp-table th,
.erp-table td {
  padding: 10px 12px;
  border-bottom: 1px solid #e5e7eb;
  text-align: left;
  vertical-align: middle;
  font-size: 14px;
}

.erp-table thead {
  background: #f8fafc;
}

.erp-table th {
  color: #334155;
  font-weight: 700;
  white-space: nowrap;
}

.page-orders .table-wrap .erp-table {
  min-width: 920px;
}

@media (max-width: 700px) {
  .table-wrap:has(.erp-table--stacked-mobile) {
    overflow-x: visible;
  }

  .table-wrap table.erp-table.erp-table--stacked-mobile {
    display: block;
    width: 100%;
    min-width: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  .erp-table--stacked-mobile thead {
    display: none;
  }

  .erp-table--stacked-mobile tbody,
  .erp-table--stacked-mobile tr,
  .erp-table--stacked-mobile td {
    display: block;
    width: 100%;
  }

  .erp-table--stacked-mobile tbody {
    display: grid;
    gap: 10px;
  }

  .erp-table--stacked-mobile tr {
    border: 1px solid #d1d5db;
    border-radius: var(--erp-ui-radius);
    background: #fff;
    overflow: hidden;
  }

  .erp-table--stacked-mobile td {
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr);
    align-items: start;
    gap: 10px;
    min-height: 0;
    padding: 10px 12px;
    border-bottom: 1px solid #e5e7eb;
    text-align: left;
  }

  .erp-table--stacked-mobile td::before {
    content: attr(data-label);
    color: #64748b;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.2;
  }

  .erp-table--stacked-mobile td:last-child {
    border-bottom: 0;
    text-align: left;
  }

  .erp-table--stacked-mobile td > * {
    min-width: 0;
  }

  .erp-table--stacked-mobile .erp-table__actions {
    justify-self: start;
  }
}

.erp-edit-table {
  table-layout: fixed;
  min-width: 680px;
}

.erp-edit-table th,
.erp-edit-table td {
  padding: 0;
}

.erp-edit-table thead th {
  padding: 10px 12px;
}

.erp-edit-table__row-label {
  padding: 10px 12px !important;
  color: #111827;
  font-weight: 800;
  background: #fff;
  white-space: nowrap;
}

.erp-edit-table__cell {
  padding: 0 !important;
}

.erp-edit-table .erp-table-input {
  min-height: 42px;
  width: 100%;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 10px 12px;
  text-align: center;
}

.erp-edit-table .erp-table-input--text {
  text-align: left;
}

.erp-edit-table .erp-table-input:focus {
  background: #fff;
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--erp-ui-primary, #2563eb) 52%, transparent);
}

.erp-edit-table .erp-table-input:disabled {
  background: #f8fafc;
  color: #94a3b8;
}

.erp-edit-table .erp-table-input--readonly {
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-ui-muted, #64748b);
  cursor: default;
}

.erp-edit-table .erp-table-input--readonly:focus {
  background: var(--erp-ui-surface-muted, #f8fafc);
  box-shadow: none;
}

.erp-edit-table__readonly-value {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  width: 100%;
  padding: 10px 12px;
  color: var(--erp-ui-muted, #64748b);
  font-weight: 800;
  text-align: center;
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-price-edit-table {
  min-width: 520px;
}

.erp-measurements-edit-table {
  min-width: 680px;
}

.erp-product-measurements__toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--erp-ui-space-2, 8px);
  min-height: 44px;
  padding: 0 4px 10px;
}

.erp-product-measurements__toolbar .erp-section-head__actions.has-pending-action {
  margin-left: 0;
}

.erp-product-measurements__method {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  padding: 6px 10px;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-ui-muted, #64748b);
  font-size: 13px;
  font-weight: 750;
}

.erp-product-measurements__method :is(i, svg, .lucide) {
  width: 16px;
  height: 16px;
}

.page-banking {
  display: grid;
  gap: 16px;
}

.banking-provider-card {
  display: grid;
  gap: 14px;
}

.banking-overview {
  display: grid;
  grid-template-columns: minmax(320px, 0.9fr) minmax(420px, 1.4fr);
  gap: 14px;
}

.banking-account-card,
.banking-ledger-card,
.banking-side-column {
  min-width: 0;
}

.banking-account-card {
  --banking-card-status-h: 40px;
  --banking-card-status-r: 20px;
  --banking-card-status-corner-r: 8px;
  --banking-card-status-bg: var(--erp-page-bg);
  --banking-card-status-shadow: -6px 8px 16px rgba(15, 23, 42, 0.20);
  position: relative;
  display: grid;
  min-height: 230px;
  align-content: space-between;
  gap: 18px;
  overflow: hidden;
  border: 0;
  background:
    linear-gradient(135deg, rgba(17, 24, 39, 0.98), rgba(51, 65, 85, 0.94) 58%, rgba(21, 128, 61, 0.86));
  color: #fff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.16);
}

.banking-account-card::before {
  content: "";
  position: absolute;
  inset: 18px auto auto 52%;
  width: 180px;
  height: 180px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 50%;
  opacity: 0.7;
}

.banking-account-card::after {
  content: "";
  position: absolute;
  inset: auto 18px 18px auto;
  width: 92px;
  height: 58px;
  border-radius: 14px;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.06));
  border: 1px solid rgba(255, 255, 255, 0.14);
}

.banking-account-card__top {
  z-index: 1;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding-right: 92px;
}

.banking-account-card__top > span:nth-child(2) {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.banking-account-card__top strong {
  color: #fff;
  font-size: 15px;
  line-height: 1.2;
}

.banking-account-card__top small,
.banking-account-card__balance span,
.banking-account-card__meta,
.banking-summary-tile span,
.banking-ledger-row__text small,
.banking-ledger-row__side small,
.banking-state-card__line span {
  color: #64748b;
  font-size: 12px;
  line-height: 1.35;
}

.banking-account-card__top small,
.banking-account-card__balance span,
.banking-account-card__meta {
  color: rgba(255, 255, 255, 0.72);
}

.banking-account-card .banking-provider-card__logo {
  border-color: rgba(255, 255, 255, 0.20);
  background: rgba(255, 255, 255, 0.12);
}

.banking-account-card__status {
  position: absolute;
  z-index: 3;
  top: 0;
  right: 0;
  min-width: 92px;
  min-height: 40px;
  display: inline-grid;
  place-items: center;
  padding: 0 16px;
  border: 0;
  border-radius: 0 var(--banking-card-status-corner-r) 0 var(--banking-card-status-r);
  background: var(--banking-card-status-bg);
  color: #0f172a;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  box-shadow: var(--banking-card-status-shadow);
  user-select: none;
  backdrop-filter: blur(10px);
}

.banking-account-card__status.is-syncing {
  --banking-card-status-bg: var(--erp-page-bg);
}

.banking-account-card__status::before,
.banking-account-card__status::after {
  content: "";
  position: absolute;
  width: var(--banking-card-status-r);
  height: var(--banking-card-status-r);
  pointer-events: none;
}

.banking-account-card__status::before {
  top: 0;
  left: calc(var(--banking-card-status-r) * -1);
  background:
    radial-gradient(
      circle at 0 100%,
      transparent 0 calc(var(--banking-card-status-r) - 2px),
      rgba(15, 23, 42, 0.16) calc(var(--banking-card-status-r) - 1px),
      transparent var(--banking-card-status-r)
    ),
    radial-gradient(
      circle at 0 100%,
      transparent 0 calc(var(--banking-card-status-r) - 1px),
      var(--banking-card-status-bg) var(--banking-card-status-r)
    );
}

.banking-account-card__status::after {
  right: 0;
  bottom: calc(var(--banking-card-status-r) * -1);
  background:
    radial-gradient(
      circle at 0 100%,
      transparent 0 calc(var(--banking-card-status-r) - 2px),
      rgba(15, 23, 42, 0.16) calc(var(--banking-card-status-r) - 1px),
      transparent var(--banking-card-status-r)
    ),
    radial-gradient(
      circle at 0 100%,
      transparent 0 calc(var(--banking-card-status-r) - 1px),
      var(--banking-card-status-bg) var(--banking-card-status-r)
    );
}

.banking-account-card__status .erp-spinner {
  --erp-spinner-size: 16px;
}

.banking-account-card__balance {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 8px;
}

.banking-account-card__balance strong {
  font-size: clamp(30px, 4vw, 42px);
  line-height: 1.1;
  letter-spacing: 0;
  color: #fff;
}

.banking-account-card__meta {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 7px;
  max-width: calc(100% - 110px);
}

.banking-account-card__meta strong {
  color: #fff;
  font-weight: 750;
}

.banking-summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(0, 1fr));
  grid-auto-flow: column;
  gap: 12px;
}

.banking-summary-tile {
  --banking-summary-accent: #64748b;
  --banking-summary-border: rgba(100, 116, 139, 0.18);
  --banking-summary-text: #0f172a;
  --banking-summary-muted: rgba(15, 23, 42, 0.54);
  --banking-summary-soft: rgba(100, 116, 139, 0.12);
  position: relative;
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 8px;
  min-height: 108px;
  padding: 16px 56px 15px 16px;
  border: 1px solid var(--banking-summary-border);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.88) 48%, rgba(241, 245, 249, 0.96)),
    linear-gradient(135deg, var(--banking-summary-soft), transparent 54%);
  box-shadow: none;
  overflow: hidden;
  isolation: isolate;
}

.banking-summary-tile:nth-child(1) {
  --banking-summary-accent: #0369a1;
  --banking-summary-soft: rgba(3, 105, 161, 0.11);
}

.banking-summary-tile:nth-child(2) {
  --banking-summary-accent: #475569;
  --banking-summary-soft: rgba(71, 85, 105, 0.10);
}

.banking-summary-tile:nth-child(3) {
  --banking-summary-accent: #b91c1c;
  --banking-summary-soft: rgba(185, 28, 28, 0.10);
}

.banking-summary-tile:nth-child(4) {
  --banking-summary-accent: #15803d;
  --banking-summary-soft: rgba(21, 128, 61, 0.11);
}

.banking-summary-tile::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.70), transparent 44%),
    linear-gradient(180deg, transparent 0%, rgba(255, 255, 255, 0.32) 100%);
  pointer-events: none;
}

.banking-summary-tile::after {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 0;
  height: 3px;
  border-radius: 999px 999px 0 0;
  background: linear-gradient(90deg, transparent, var(--banking-summary-accent), transparent);
  opacity: 0.34;
  pointer-events: none;
}

.banking-summary-tile__icon {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(100, 116, 139, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.46);
  color: var(--banking-summary-accent);
  box-shadow: none;
  pointer-events: none;
  user-select: none;
}

.banking-summary-tile__icon i,
.banking-summary-tile__icon svg,
.banking-summary-tile__icon .lucide {
  width: var(--erp-icon-size, 16px) !important;
  height: var(--erp-icon-size, 16px) !important;
  position: relative;
  z-index: 1;
}

.banking-summary-tile strong {
  color: var(--banking-summary-text);
  font-size: 20px;
  font-weight: 850;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.banking-summary-tile > span:not(.banking-summary-tile__icon) {
  color: var(--banking-summary-muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.25;
  text-transform: uppercase;
}

.banking-summary-tile small {
  color: var(--banking-summary-muted);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.3;
}

.banking-settings-panel {
  display: grid;
  gap: 14px;
}

.banking-settings-panel__note {
  display: grid;
  gap: 6px;
  padding: 12px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #f8fafc;
}

.banking-settings-panel__note p {
  margin: 0;
  color: #64748b;
  font-size: 13px;
  line-height: 1.45;
}

.banking-settings-list {
  display: grid;
  gap: 12px;
}

.banking-settings-provider {
  display: grid;
  gap: 12px;
  padding: 0 0 12px;
  border-bottom: 1px solid #e5e7eb;
}

.banking-settings-provider:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.banking-settings-provider__summary {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
}

.banking-provider-card__head {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
}

.banking-provider-card__logo {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #f8fafc;
  overflow: hidden;
}

.banking-provider-card__logo img {
  max-width: 28px;
  max-height: 28px;
  object-fit: contain;
}

.banking-provider-card__title {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.banking-settings-provider__title {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.banking-provider-card__title strong {
  font-size: 15px;
  line-height: 1.2;
  color: #111827;
}

.banking-settings-provider__title strong {
  color: #111827;
  font-size: 15px;
  line-height: 1.2;
}

.banking-provider-card__title span,
.banking-settings-provider__title span,
.banking-provider-card__meta dt,
.banking-connect-details summary small,
.banking-job-row span,
.erp-table td small {
  color: #64748b;
  font-size: 12px;
  line-height: 1.35;
}

.banking-provider-card__meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 14px;
  margin: 0;
}

.banking-provider-card__meta div {
  min-width: 0;
}

.banking-provider-card__meta dt,
.banking-provider-card__meta dd {
  margin: 0;
}

.banking-provider-card__meta dd {
  color: #111827;
  font-size: 13px;
  font-weight: 750;
  overflow-wrap: anywhere;
}

.banking-connect-details {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
}

.banking-connect-details summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 2px;
  padding: 12px;
  cursor: pointer;
  list-style: none;
}

.banking-connect-details summary::-webkit-details-marker {
  display: none;
}

.banking-connect-details summary span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #111827;
  font-weight: 800;
}

.banking-connect-details summary i,
.banking-connect-details summary svg,
.banking-connect-details summary .lucide {
  width: 15px !important;
  height: 15px !important;
}

.banking-connect-details .banking-provider-form {
  padding: 0 12px 12px;
}

.banking-provider-form .erp-field,
.banking-inline-form .erp-field {
  padding: 0;
  background: transparent;
}

.banking-inline-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
  align-items: end;
  gap: 10px;
}

.banking-inline-form--compact {
  grid-template-columns: auto;
  justify-content: start;
}

.banking-settings-actions {
  display: grid;
  gap: 10px;
}

.banking-tools {
  display: grid;
  gap: var(--erp-ui-space-3);
  min-width: 0;
  margin-top: var(--erp-ui-space-2);
}

.banking-tools__head {
  margin-inline: 0;
}

.banking-tools__group {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.banking-tools__group-title {
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.25;
  font-weight: 850;
}

.banking-tools__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  align-items: stretch;
  gap: 8px;
}

.banking-tool-card {
  position: relative;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  grid-template-rows: minmax(48px, 1fr) auto;
  gap: 10px;
  min-width: 0;
  min-height: 116px;
  padding: 10px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-md, 8px);
  background: var(--erp-ui-surface);
  transition: border-color 0.16s ease, background-color 0.16s ease;
}

.banking-tool-card__action {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  border-radius: inherit;
  background: transparent;
  cursor: pointer;
}

.banking-tool-card:has(.banking-tool-card__action:is(:hover, :focus-visible)) {
  border-color: var(--erp-action-accent);
  background: var(--erp-button-group-hover-bg);
  outline: none;
}

.banking-tool-card__icon,
.banking-tool-card__content,
.banking-tool-card__footer {
  position: relative;
  z-index: 2;
  pointer-events: none;
}

.banking-tool-card__footer a,
.banking-tool-card__footer button {
  position: relative;
  z-index: 3;
  pointer-events: auto;
}

.banking-tool-card__icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
}

.banking-tool-card__icon :is(svg, .lucide) {
  width: 17px !important;
  height: 17px !important;
}

.banking-tool-card.is-ready .banking-tool-card__icon {
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.banking-tool-card.needs-attention .banking-tool-card__icon {
  background: var(--erp-ui-warning-soft, #fff7ed);
  color: var(--erp-ui-warning, #c2410c);
}

.banking-tool-card__content {
  display: grid;
  align-content: start;
  gap: 4px;
  min-width: 0;
}

.banking-tool-card__content strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.2;
  font-weight: 900;
}

.banking-tool-card__content p {
  display: -webkit-box;
  overflow: hidden;
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.banking-tool-card__footer {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  padding-top: 8px;
  border-top: 1px solid var(--erp-ui-border-soft);
}

.banking-tool-card__footer .erp-status {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.banking-tool-settings {
  display: grid;
  gap: var(--erp-ui-space-3);
}

.banking-tool-settings__form {
  display: grid;
  gap: var(--erp-ui-space-3);
}

.banking-terminal-picker {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.banking-terminal-picker .erp-btn {
  white-space: nowrap;
}

[data-banking-terminal-status].is-success {
  color: var(--erp-ui-success);
}

[data-banking-terminal-status].is-warning {
  color: var(--erp-ui-warning);
}

[data-banking-terminal-status].is-error {
  color: var(--erp-ui-danger);
}

.banking-tool-settings__form .erp-fieldset {
  display: grid;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.banking-tool-settings__form .erp-fieldset > legend {
  margin-bottom: 4px;
  color: var(--erp-ui-text);
  font-weight: 800;
}

.banking-tool-settings__switch {
  width: 100%;
  align-items: flex-start;
  padding: 10px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-md);
  background: var(--erp-ui-surface-soft);
}

.banking-tool-settings__switch .erp-switch__track {
  flex: 0 0 var(--switch-w);
  margin-top: 1px;
}

.banking-tool-settings__switch input:focus-visible + .erp-switch__track {
  box-shadow: var(--erp-ui-focus-ring);
}

.banking-tool-settings__switch > span:last-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.banking-tool-settings__switch small {
  color: var(--erp-ui-muted);
  font-weight: 400;
  line-height: 1.4;
}

.banking-tool-settings__flow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 0;
  padding: 9px 10px;
  border-radius: var(--erp-ui-radius-md);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 800;
  line-height: 1.2;
}

.banking-tool-settings__flow :is(svg, .lucide) {
  width: 13px !important;
  height: 13px !important;
  flex: 0 0 13px;
}

@media (max-width: 640px) {
  .banking-terminal-picker {
    grid-template-columns: minmax(0, 1fr);
  }

  .banking-terminal-picker .erp-btn {
    width: 100%;
  }

  .banking-tool-settings__flow {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    text-align: center;
  }

  .banking-tool-settings__flow :is(svg, .lucide) {
    margin-inline: auto;
    transform: rotate(90deg);
  }
}

.banking-workspace {
  display: block;
}

.banking-side-column {
  display: grid;
  align-content: start;
  gap: 12px;
}

.banking-sync-card,
.banking-state-card {
  display: grid;
  gap: 12px;
}

.banking-sync-actions {
  display: grid;
  gap: 8px;
}

.banking-sync-actions .banking-inline-form--compact {
  display: contents;
}

.banking-filter-bar {
  display: flex;
  width: 100%;
  min-width: 0;
  margin: 0 0 12px;
  overflow-x: auto;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-button-group-radius);
  background: var(--erp-ui-surface, #fff);
}

.banking-filter-pill {
  min-height: 42px;
  display: inline-flex;
  flex: 1 1 0;
  min-width: 0;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 8px;
  border-radius: 0;
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.14s ease, color 0.14s ease;
}

.banking-filter-pill span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.banking-filter-pill + .banking-filter-pill {
  border-left: 1px solid var(--erp-button-group-divider);
}

.banking-filter-pill i,
.banking-filter-pill svg,
.banking-filter-pill .lucide {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px;
}

.banking-filter-pill small {
  min-width: 18px;
  height: 18px;
  display: inline-grid;
  place-items: center;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--erp-ui-surface-soft, #f1f5f9);
  color: #475569;
  font-size: 10px;
  line-height: 1;
}

.banking-filter-pill:hover {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
}

.banking-filter-pill.is-active {
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.banking-filter-pill.is-active small {
  background: var(--erp-button-group-active-text);
  color: var(--erp-button-group-active-bg);
}

.banking-money {
  font-weight: 800;
  white-space: nowrap;
}

.banking-money--plus {
  color: #15803d;
}

.banking-money--minus {
  color: #b91c1c;
}

.banking-ledger {
  display: grid;
}

.banking-ledger__date {
  position: sticky;
  top: calc(var(--erp-header-height, 56px) + var(--erp-toolbar-height, 44px));
  z-index: 1;
  padding: 12px 0 8px;
  background: #fff;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
}

.banking-ledger-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 58px;
  padding: 10px 0;
  border-top: 1px solid #e5e7eb;
}

.banking-ledger-row__icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: #f8fafc;
}

.banking-ledger-row__icon.is-income {
  color: #15803d;
  background: #f0fdf4;
}

.banking-ledger-row__icon.is-expense {
  color: #b91c1c;
  background: #fef2f2;
}

.banking-ledger-row__icon i,
.banking-ledger-row__icon svg,
.banking-ledger-row__icon .lucide {
  width: 16px;
  height: 16px;
}

.banking-ledger-row__text {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.banking-ledger-row__text strong {
  color: #111827;
  font-size: 13px;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.banking-ledger-row__text small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.banking-ledger-row__side {
  display: grid;
  justify-items: end;
  gap: 3px;
  white-space: nowrap;
}

.banking-ledger-row__side strong {
  font-size: 13px;
  line-height: 1.2;
}

.banking-state-card__line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, auto);
  gap: 12px;
  align-items: start;
  padding: 8px 0;
  border-top: 1px solid #e5e7eb;
}

.banking-state-card__line:first-child {
  border-top: 0;
  padding-top: 0;
}

.banking-state-card__line strong {
  max-width: 190px;
  color: #111827;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
  text-align: right;
  overflow-wrap: anywhere;
}

.banking-journal-details {
  padding: 0;
}

.banking-journal-details .erp-stack,
.banking-journal-details .settings-empty {
  padding: 0 12px 12px;
}

.banking-job-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px 10px;
  align-items: center;
  padding: 10px 0;
  border-top: 1px solid #e5e7eb;
}

.banking-job-row small {
  grid-column: 1 / -1;
  color: #b91c1c;
  overflow-wrap: anywhere;
}

@media (max-width: 900px) {
  .banking-overview,
  .banking-workspace {
    grid-template-columns: 1fr;
  }

  .banking-provider-card__head,
  .banking-account-card__top,
  .banking-settings-provider__summary {
    grid-template-columns: 40px minmax(0, 1fr);
  }

  .banking-provider-card__head .erp-status,
  .banking-settings-provider__summary .erp-status {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }

  .banking-account-card__top {
    padding-right: 88px;
  }

  .banking-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
    grid-auto-flow: column;
  }

  .banking-provider-card__meta,
  .banking-inline-form {
    grid-template-columns: 1fr;
  }

  .banking-tools__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .banking-tools__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .banking-summary-grid {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    grid-auto-flow: row;
  }

  .banking-ledger-row {
    grid-template-columns: 30px minmax(0, 1fr);
  }

  .banking-ledger-row__side {
    grid-column: 2;
    justify-items: start;
  }
}

/* == Banking accounts master-detail workspace == */
.banking-wallet-shell {
  min-width: 0;
  height: var(--erp-workspace-viewport-h);
  min-height: 480px;
  display: grid;
  grid-template-columns: minmax(280px, 320px) minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid var(--erp-ui-border, #d1d5db);
  border-radius: var(--erp-ui-radius, 8px);
  background: var(--erp-ui-surface, #fff);
}

.banking-wallet-rail {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
  border-right: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.banking-wallet-rail__head {
  min-height: 66px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface, #fff);
}

.banking-wallet-rail__head > span {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.banking-wallet-rail__head strong {
  color: var(--erp-ui-text, #111827);
  font-size: 15px;
  line-height: 1.2;
}

.banking-wallet-rail__head small,
.banking-wallet-rail__empty span {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  line-height: 1.35;
}

.banking-wallet-list {
  min-height: 0;
  display: grid;
  align-content: start;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

.banking-wallet-progress {
  min-width: 0;
  display: grid;
  gap: 6px;
  padding: 10px 14px 12px;
  border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface, #fff);
}

.banking-wallet-progress__head {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: var(--erp-ui-text, #111827);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}

.banking-wallet-progress__head strong {
  color: var(--erp-action-accent, #0095f6);
  font-size: 11px;
}

.banking-wallet-progress__bar {
  width: 100%;
  height: 4px;
  display: block;
  overflow: hidden;
  border: 0;
  border-radius: 999px;
  background: var(--erp-ui-border-soft, #e5e7eb);
  appearance: none;
  -webkit-appearance: none;
}

.banking-wallet-progress__bar::-webkit-progress-bar {
  border-radius: inherit;
  background: var(--erp-ui-border-soft, #e5e7eb);
}

.banking-wallet-progress__bar::-webkit-progress-value {
  border-radius: inherit;
  background: var(--erp-action-accent, #0095f6);
}

.banking-wallet-progress__bar::-moz-progress-bar {
  border-radius: inherit;
  background: var(--erp-action-accent, #0095f6);
}

.banking-wallet-progress > small {
  min-width: 0;
  color: var(--erp-ui-muted, #64748b);
  font-size: 10px;
  font-weight: 700;
  line-height: 1.25;
}

.banking-wallet-progress > .banking-wallet-progress__operations {
  color: #94a3b8;
}

.banking-wallet-account {
  position: relative;
  min-width: 0;
  min-height: 78px;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 10px;
  padding: 12px 12px 12px 14px;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  color: var(--erp-ui-text, #111827);
  text-decoration: none;
  transition: background 0.14s ease, color 0.14s ease;
}

.banking-wallet-account--with-actions {
  grid-template-columns: minmax(0, 1fr) auto;
}

.banking-wallet-account__main {
  min-width: 0;
  align-self: stretch;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  appearance: none;
  -webkit-appearance: none;
}

.banking-wallet-account__main:focus-visible {
  outline: 2px solid var(--erp-ui-primary, #2563eb);
  outline-offset: 2px;
}

.banking-wallet-account::before {
  content: "";
  position: absolute;
  inset: 10px auto 10px 0;
  width: 3px;
  border-radius: 0 999px 999px 0;
  background: transparent;
}

.banking-wallet-account:hover,
.banking-wallet-account:focus-visible {
  background: var(--erp-button-group-hover-bg, #eef2f7);
  outline: none;
}

.banking-wallet-account.is-active {
  background: color-mix(in srgb, var(--erp-ui-primary, #2563eb) 8%, var(--erp-ui-surface, #fff));
}

.banking-wallet-account.is-active::before {
  background: var(--erp-ui-primary, #2563eb);
}

.banking-wallet-account__logo {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-ui-radius-sm, 6px);
  background: var(--erp-ui-surface, #fff);
}

.banking-wallet-account__logo img {
  max-width: 28px;
  max-height: 28px;
  object-fit: contain;
}

.banking-wallet-account__logo i,
.banking-wallet-account__logo svg {
  width: 18px;
  height: 18px;
}

.banking-wallet-account__body {
  min-width: 0;
  display: grid;
  gap: 7px;
}

.banking-wallet-account__line {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.banking-wallet-account__line strong,
.banking-wallet-account__line small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.banking-wallet-account__line strong {
  font-size: 13px;
  line-height: 1.2;
}

.banking-wallet-account__line small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  line-height: 1.2;
}

.banking-wallet-account__line--meta > small:first-child {
  max-width: 150px;
}

.banking-wallet-account__state {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.banking-wallet-account__state::before {
  content: "";
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-radius: 50%;
  background: #94a3b8;
}

.banking-wallet-account__state.is-active::before { background: #16a34a; }
.banking-wallet-account__state.is-warning::before { background: #d97706; }
.banking-wallet-account__state.is-danger::before { background: #dc2626; }

.banking-wallet-account__chevron {
  width: 16px;
  height: 16px;
  color: #94a3b8;
}

.banking-wallet-account.is-active .banking-wallet-account__chevron {
  color: var(--erp-ui-primary, #2563eb);
}

.banking-wallet-rail__empty,
.banking-wallet-detail__empty {
  min-height: 0;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 8px;
  padding: 24px;
  text-align: center;
}

.banking-wallet-detail__empty {
  grid-row: 1 / -1;
  align-self: stretch;
}

.banking-wallet-rail__empty > i,
.banking-wallet-rail__empty > svg {
  width: 26px;
  height: 26px;
  color: var(--erp-ui-muted, #64748b);
}

.banking-wallet-detail {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  overflow: hidden;
  background: var(--erp-ui-surface, #fff);
}

.banking-wallet-detail__head {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 18px 20px;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.banking-wallet-detail__identity {
  min-width: 0;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
}

.banking-wallet-detail__identity > span:nth-child(2) {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.banking-wallet-detail__identity strong {
  color: var(--erp-ui-text, #111827);
  font-size: 15px;
  line-height: 1.2;
}

.banking-wallet-detail__identity small,
.banking-wallet-detail__balance > span,
.banking-wallet-detail__balance > small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  line-height: 1.3;
}

.banking-wallet-detail__balance {
  flex: 0 0 auto;
  display: grid;
  justify-items: end;
  gap: 4px;
  text-align: right;
}

.banking-wallet-detail__balance > strong {
  color: var(--erp-ui-text, #111827);
  font-size: 28px;
  font-weight: 850;
  line-height: 1.1;
  letter-spacing: 0;
  white-space: nowrap;
}

.banking-summary-grid--wallet {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-rows: none;
  grid-auto-flow: row;
  gap: 0;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.banking-summary-grid--wallet .banking-summary-tile {
  min-height: 98px;
  border: 0;
  border-radius: 0;
  border-right: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface, #fff);
}

.banking-summary-grid--wallet .banking-summary-tile:last-child {
  border-right: 0;
}

.banking-summary-grid--wallet .banking-summary-tile::before,
.banking-summary-grid--wallet .banking-summary-tile::after {
  display: none;
}

.banking-wallet-ledger {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
  padding: 12px 16px 0;
}

.banking-wallet-ledger__controls {
  min-width: 0;
}

.banking-wallet-ledger .banking-filter-bar {
  margin-bottom: 10px;
}

.banking-wallet-ledger .banking-ledger-card {
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  padding: 0 4px 14px;
}

.banking-wallet-ledger .banking-ledger__date {
  top: 0;
  background: var(--erp-ui-surface, #fff);
}

@media (max-width: 1100px) {
  .banking-wallet-shell {
    grid-template-columns: minmax(250px, 285px) minmax(0, 1fr);
  }

  .banking-summary-grid--wallet {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .banking-summary-grid--wallet .banking-summary-tile:nth-child(2) {
    border-right: 0;
  }

  .banking-summary-grid--wallet .banking-summary-tile:nth-child(-n + 2) {
    border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  }
}

@media (max-width: 800px) {
  .banking-wallet-shell {
    height: auto;
    min-height: 0;
    grid-template-columns: 1fr;
    overflow: visible;
  }

  .banking-wallet-rail {
    grid-template-rows: auto auto auto;
    border-right: 0;
    border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  }

  .banking-wallet-list {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    scrollbar-gutter: auto;
    scroll-snap-type: x proximity;
  }

  .banking-wallet-list::-webkit-scrollbar {
    display: none;
  }

  .banking-wallet-account {
    flex: 0 0 min(300px, 84vw);
    border-right: 1px solid var(--erp-ui-border-soft, #e5e7eb);
    scroll-snap-align: start;
  }

  .banking-wallet-detail {
    overflow: visible;
  }

  .banking-wallet-ledger .banking-ledger-card {
    max-height: 56vh;
  }
}

@media (max-width: 640px) {
  .banking-wallet-detail__head {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
    padding: 14px;
  }

  .banking-wallet-detail__identity {
    width: 100%;
    grid-template-columns: 40px minmax(0, 1fr);
  }

  .banking-wallet-detail__identity .erp-status {
    grid-column: 2;
    justify-self: start;
  }

  .banking-wallet-detail__balance {
    justify-items: start;
    text-align: left;
  }

  .banking-wallet-detail__balance > strong {
    font-size: 24px;
  }

  .banking-summary-grid--wallet {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .banking-summary-grid--wallet .banking-summary-tile {
    min-height: 94px;
    padding-right: 44px;
  }

  .banking-wallet-ledger {
    padding-inline: 10px;
  }
}

.erp-table-sort-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: inherit;
  text-decoration: none;
  width: 100%;
}

.erp-table-sort-link--button {
  padding: 0;
  border: 0;
  background: transparent;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.erp-table-sort-link__text {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}

.erp-table-sort-link .erp-table__sort-indicator,
.erp-table-sort-link .erp-table__sort-indicator i,
.erp-table-sort-link .erp-table__sort-indicator .lucide {
  width: 12px;
  height: 12px;
  color: #94a3b8;
}

.erp-table-sort-link.is-active {
  color: #0f172a;
}

.erp-table-sort-link.is-active .erp-table__sort-indicator i,
.erp-table-sort-link.is-active .erp-table__sort-indicator .lucide {
  color: currentColor;
}

.erp-table tbody tr:hover {
  background: #f8fafc;
}

.erp-table__id {
  color: #64748b;
  font-variant-numeric: tabular-nums;
}

.erp-table__status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.erp-table__status.is-active,
.erp-table__status.is-success {
  color: var(--erp-badge-success-text);
}

.erp-table__status.is-inactive {
  color: var(--erp-badge-disabled-text);
}

.erp-table__status.is-warning {
  color: var(--erp-badge-warning-text);
}

.erp-table__status.is-info {
  color: var(--erp-badge-primary-text);
}

.erp-table__status.is-danger {
  color: var(--erp-badge-danger-text);
}

.erp-table__title {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-table__title--media {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.erp-table__title strong {
  display: block;
  color: #111827;
  font-size: 14px;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.erp-table__title small {
  display: block;
  color: #64748b;
  font-size: 12px;
  line-height: 1.2;
}

.erp-table__meta {
  display: grid;
  gap: 3px;
  color: #334155;
  font-size: 13px;
  min-width: 0;
}

.erp-table__meta span {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.erp-table__message {
  display: -webkit-box;
  max-width: 42ch;
  max-height: 4.05em;
  min-width: 0;
  overflow: hidden;
  line-height: 1.35;
  overflow-wrap: anywhere;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.erp-table__message[tabindex]:focus-visible {
  border-radius: var(--erp-ui-radius-sm);
  outline: 2px solid var(--erp-ui-accent);
  outline-offset: 2px;
}

.erp-table__actions {
  display: inline-flex;
  align-items: stretch;
  justify-content: flex-end;
  gap: 0;
  min-height: 36px;
  overflow: hidden;
  border: 1px solid var(--erp-button-group-border);
  border-radius: var(--erp-ui-radius, 8px);
  background: var(--erp-button-group-bg);
  white-space: nowrap;
}

.erp-table__actions form {
  display: contents;
}

.erp-table__actions--block-square {
  --erp-action-square-size: 58px;
  align-self: stretch;
  min-height: var(--erp-action-square-size);
}

.erp-table__actions--block-square > .erp-icon-btn--table-action,
.erp-table__actions--block-square > form .erp-icon-btn--table-action {
  width: var(--erp-action-square-size);
  flex-basis: var(--erp-action-square-size);
  min-width: var(--erp-action-square-size);
  height: var(--erp-action-square-size);
  min-height: var(--erp-action-square-size);
}

.erp-table th:last-child,
.erp-table td:last-child {
  text-align: right;
}

.erp-table tr.is-danger > th,
.erp-table tr.is-danger > td {
  background: #fef2f2;
}

.erp-table tr.is-danger > th:first-child,
.erp-table tr.is-danger > td:first-child {
  box-shadow: inset 3px 0 0 #dc2626;
}

.erp-table tr.is-danger strong {
  color: #991b1b;
}

.erp-table-thumb {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  object-fit: cover;
}

img.erp-table-thumb {
  border: 0;
  outline: 0;
  background: transparent;
  box-shadow: none;
  object-fit: contain;
  object-position: center;
}

.erp-table-thumb--empty {
  opacity: .72;
}

.erp-table-thumb i,
.erp-table-thumb svg,
.erp-table-thumb .lucide {
  width: 18px !important;
  height: 18px !important;
}

.erp-icon-btn--table-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  flex: 0 0 36px;
  min-width: 36px;
  height: 36px;
  min-height: 36px;
  border: 0;
  border-right: 1px solid var(--erp-button-group-divider);
  border-radius: 0;
  color: var(--erp-button-group-text);
  background: var(--erp-button-group-bg);
  padding: 0;
  margin: 0;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
}

.erp-icon-btn--has-filter-indicator {
  position: relative;
}

.erp-icon-btn--has-filter-indicator::after {
  content: "";
  position: absolute;
  top: 6px;
  right: 6px;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--erp-ui-accent);
  box-shadow: 0 0 0 2px var(--erp-button-group-bg);
  opacity: 0;
  transform: scale(.7);
  transition: opacity var(--erp-ui-transition), transform var(--erp-ui-transition);
  pointer-events: none;
}

.erp-icon-btn--has-filter-indicator[data-filter-active="true"]::after {
  opacity: 1;
  transform: scale(1);
}

.erp-table__actions > .erp-icon-btn--table-action:last-child,
.erp-table__actions > form:last-child .erp-icon-btn--table-action {
  border-right: 0;
}

.erp-sales-receipts-page,
.page-invoices,
.page-invoice-view {
  --erp-kpi-section-gap: 12px;
  --erp-kpi-control-gap: 8px;
  --erp-invoice-block-gap: var(--erp-kpi-section-gap);
}

.page-invoice-view > .erp-invoice-overview,
.page-invoice-view .erp-invoice-overview__kpis {
  flex: 0 0 auto;
}

body:not(.erp-embedded-page) #mainContent:has(> .page-invoices[data-invoices-page]:not(.page-invoices--create)) {
  height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h));
  min-height: 0;
  overflow: hidden;
  padding-bottom: var(--erp-invoice-block-gap, 12px);
}

body:not(.erp-embedded-page) #mainContent > .page-invoices[data-invoices-page]:not(.page-invoices--create) {
  width: 100%;
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.page-invoices[data-invoices-page]:not(.page-invoices--create) > .erp-kpi-groups {
  flex: 0 0 auto;
  min-height: 0;
}

.page-invoices[data-invoices-page]:not(.page-invoices--create) > .erp-invoice-model-shell {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
}

.page-invoice-view .banking-wallet-rail .banking-wallet-account:hover,
.page-invoice-view .banking-wallet-rail .banking-wallet-account:focus-visible,
.page-invoice-view .banking-wallet-rail .banking-wallet-account.is-active {
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-sales-receipts-page {
  display: grid;
  gap: var(--erp-kpi-section-gap);
}

.erp-sales-receipts-page > .table-wrap {
  min-width: 0;
}

.erp-sales-receipts-page > .table-wrap .erp-table {
  margin: 0;
}

.erp-kpi-groups {
  display: grid;
  gap: var(--erp-kpi-control-gap);
  min-width: 0;
  margin: 0;
}

.page-invoices .erp-kpi-groups,
.page-invoice-view .erp-kpi-groups {
  margin: 0 0 var(--erp-invoice-block-gap);
}

.erp-invoice-documents {
  display: grid;
  gap: 0;
  margin: 0 0 var(--erp-invoice-block-gap);
  padding: 0;
  overflow: hidden;
}

.erp-invoice-documents > .erp-section-head {
  margin: 0;
  padding: 10px 12px;
  border-bottom: 1px solid var(--erp-ui-border, #d1d5db);
}

.erp-invoice-documents__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}

.erp-invoice-documents__item {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 32px;
  gap: 10px;
  align-items: center;
  min-width: 0;
  min-height: 64px;
  padding: 10px 12px;
  border-right: 1px solid var(--erp-ui-border, #d1d5db);
  border-bottom: 1px solid var(--erp-ui-border, #d1d5db);
  color: var(--erp-ui-text, #111827);
  text-decoration: none;
}

.erp-invoice-documents__item:hover,
.erp-invoice-documents__item:focus-visible {
  background: var(--erp-ui-surface-muted, #f8fafc);
  outline: none;
}

.erp-invoice-documents__icon,
.erp-invoice-documents__download {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--erp-ui-muted, #64748b);
}

.erp-invoice-documents__icon {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  background: var(--erp-ui-surface-muted, #f1f5f9);
}

.erp-invoice-documents__icon i,
.erp-invoice-documents__icon svg,
.erp-invoice-documents__download i,
.erp-invoice-documents__download svg {
  width: 18px;
  height: 18px;
}

.erp-invoice-documents__copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-invoice-documents__copy strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-invoice-documents__copy small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 700;
}

.erp-kpi-groups__viewport {
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.erp-kpi-groups__viewport::-webkit-scrollbar {
  display: none;
}

.erp-kpi-groups__track {
  display: flex;
  align-items: stretch;
  gap: 0;
  min-width: 0;
}

.erp-kpi-group {
  flex: 0 0 100%;
  min-width: 0;
  scroll-snap-align: start;
}

.erp-kpi-groups__controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 12px;
}

.erp-kpi-groups__controls[hidden] {
  display: none;
}

.erp-kpi-groups__dot {
  width: 6px;
  height: 6px;
  border: 0;
  border-radius: 999px;
  background: #cbd5e1;
  padding: 0;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
}

.erp-kpi-groups__dot:hover,
.erp-kpi-groups__dot:focus-visible {
  background: #64748b;
  outline: none;
}

.erp-kpi-groups__dot.is-active {
  width: 18px;
  background: #334155;
}

.erp-kpi-groups__dot[aria-current="true"] {
  cursor: default;
}

.erp-kpi-groups .erp-kpis {
  margin-bottom: 0;
}

.erp-kpi-groups .erp-kpis .detail-card {
  min-width: 0;
}

.erp-sales-receipts-page__table {
  border: 0;
}

.erp-sales-receipts-page__table .erp-table__actions {
  gap: 0;
}

.erp-sales-receipts-page__title {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.erp-sales-receipts-page__muted {
  color: #64748b;
  font-size: 11px;
  line-height: 1.25;
  margin-top: 2px;
}

.erp-sales-receipts-page__table th,
.erp-sales-receipts-page__table td {
  vertical-align: middle;
}

.erp-sales-receipts-page__table th:first-child,
.erp-sales-receipts-page__table td:first-child {
  min-width: 190px;
}

.erp-sales-receipts-page__table .erp-sales-receipts-page__title small {
  color: #64748b;
  font-size: 12px;
  font-weight: 600;
}

.erp-pagination-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.erp-pagination {
  display: inline-flex;
  align-items: stretch;
  justify-content: flex-end;
  gap: 0;
  max-width: 100%;
  min-height: 36px;
  margin-top: 12px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  border: 1px solid var(--erp-button-group-border);
  border-radius: var(--erp-ui-radius, 8px);
  background: var(--erp-button-group-bg);
}

.erp-pagination::-webkit-scrollbar {
  display: none;
}

.erp-pagination--distributed {
  display: flex;
  width: 100%;
}

.erp-pagination--distributed .erp-pagination__item {
  flex: 1 1 0;
}

.erp-pagination__item,
.erp-pagination__item:link,
.erp-pagination__item:visited {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding: 0 10px;
  border-right: 1px solid var(--erp-button-group-divider);
  color: var(--erp-button-group-text);
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}

.erp-pagination__item:last-child {
  border-right: 0;
}

.erp-pagination__item:hover,
.erp-pagination__item:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-pagination__item.is-active {
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.erp-pagination__item.is-disabled {
  pointer-events: none;
  color: #cbd5e1;
}

.erp-pagination__item .lucide,
.erp-pagination__item i,
.erp-pagination__item svg {
  width: 15px !important;
  height: 15px !important;
}

@media (max-width: 480px) {
  .erp-pagination__item,
  .erp-pagination__item:link,
  .erp-pagination__item:visited {
    min-width: 32px;
    padding-inline: 8px;
  }

  .erp-pagination__item.is-gap {
    display: none;
  }
}

.erp-icon-btn--table-action .lucide,
.erp-icon-btn--table-action > i,
.erp-icon-btn--table-action > svg,
.erp-icon-btn--table-action .icon {
  width: 16px !important;
  height: 16px !important;
}

.erp-icon-btn--table-action:hover,
.erp-icon-btn--table-action:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
}

.erp-icon-btn--table-action.is-active,
.erp-icon-btn--table-action[aria-pressed="true"] {
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.erp-icon-btn--table-action:disabled:hover,
.erp-icon-btn--table-action.is-disabled:hover {
  background: var(--erp-button-group-bg);
  color: var(--erp-button-group-text);
}

.erp-icon-btn--table-action-danger {
  color: #b91c1c;
}

.erp-icon-btn--table-action-danger:hover {
  background: #fee2e2;
  color: #991b1b;
}

input, textarea, button {
  font: inherit;
}

input {
  width: 100%;
}

button {
  padding: 8px 12px;
  border: 0;
  background: #2563eb;
  color: #fff;
  border-radius: 8px;
  cursor: pointer;
}

button.app-mobile-bottom-menu-item {
  padding: 8px 4px;
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
  color: inherit;
}

label { display: block; margin: 10px 0; }

body.login-page {
  overflow-x: hidden;
  background: #0f172a;
}

body.login-page #mainContent {
  min-height: 100vh;
  min-height: 100dvh;
  margin-left: 0;
  padding: 0;
}

.auth-page {
  --auth-accent: #2563eb;
  --auth-accent-strong: #1d4ed8;
  --auth-accent-soft: rgba(37, 99, 235, .12);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: none;
  min-height: 100vh;
  min-height: 100dvh;
  margin: 0;
  padding: 32px 16px;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 16%, rgba(255, 255, 255, .18) 0, rgba(255, 255, 255, 0) 28%),
    radial-gradient(circle at 78% 20%, rgba(20, 184, 166, .22) 0, rgba(20, 184, 166, 0) 26%),
    linear-gradient(135deg, #0f172a 0%, #1d4ed8 52%, #14b8a6 100%);
  color: #0f172a;
}

.auth-page::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image:
    linear-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .08) 1px, transparent 1px);
  background-size: 42px 42px;
  -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, .7), transparent 78%);
  mask-image: linear-gradient(to bottom, rgba(0, 0, 0, .7), transparent 78%);
  pointer-events: none;
}

.auth-shell {
  position: relative;
  z-index: 2;
  width: min(1030px, 100%);
}

.auth-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  position: fixed;
  top: 28px;
  left: 50%;
  z-index: 4;
  width: min(1030px, calc(100% - 32px));
  margin: 0;
  transform: translateX(-50%);
}

.auth-bubble-menu {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: max-content;
  max-width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

.auth-bubble-menu__item,
.auth-bubble-menu__item:link,
.auth-bubble-menu__item:visited {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 34px;
  padding: 0 13px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: rgba(255, 255, 255, .88);
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  transition: background .18s ease, color .18s ease, transform .18s ease;
}

.auth-bubble-menu__item .lucide,
.auth-bubble-menu__item svg {
  width: 15px !important;
  height: 15px !important;
}

.auth-bubble-menu__item:hover,
.auth-bubble-menu__item:focus-visible {
  background: rgba(255, 255, 255, .18);
  color: #fff;
  outline: none;
  transform: translateY(-1px);
}

.auth-bubble-menu__item.is-active {
  background: #fff;
  color: #0f172a;
}

.auth-page .auth-card,
.erp-auth-login-modal .auth-card {
  width: min(430px, 100%);
  max-width: none;
  margin: 0 auto;
  padding: 24px 26px 26px;
  border: 1px solid rgba(255, 255, 255, .62);
  border-radius: 28px;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 24px 70px rgba(15, 23, 42, .28);
  backdrop-filter: blur(18px);
  text-align: center;
}

.auth-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  gap: 8px;
  min-height: 46px;
  margin: 0;
  padding: 4px 8px;
  border-radius: 12px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 12px 24px rgba(15, 23, 42, .2);
  text-decoration: none;
}

.auth-brand__icon {
  display: block;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  user-select: none;
}

.auth-brand__logo {
  display: block;
  width: 180px;
  max-width: 44vw;
  height: auto;
  user-select: none;
}

.auth-topbar--brand-inverse .auth-brand {
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.auth-topbar--brand-inverse .auth-brand__logo {
  filter: brightness(0) invert(1);
}

.auth-card__heading {
  margin-bottom: 20px;
  text-align: center;
}

.auth-card__heading h1 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(26px, 4vw, 34px);
  line-height: 1.08;
  letter-spacing: 0;
}

.auth-card__heading p {
  max-width: 320px;
  margin: 8px auto 0;
  color: #64748b;
  font-size: 14px;
  line-height: 1.45;
}

.auth-form {
  display: grid;
  gap: 12px;
  text-align: left;
}

.auth-step {
  display: grid;
  gap: 12px;
}

.auth-step[hidden],
.auth-success[hidden],
.auth-social[hidden] {
  display: none !important;
}

.auth-step--password {
  gap: 16px;
}

.auth-user-preview,
.auth-success {
  display: grid;
  justify-items: center;
  gap: 8px;
  text-align: center;
}

.auth-user-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 74px;
  height: 74px;
  overflow: hidden;
  border-radius: 50%;
  background: linear-gradient(135deg, #e0f2fe 0%, #dbeafe 100%);
  color: #0f172a;
  font-size: 24px;
  font-weight: 900;
  line-height: 1;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .16);
}

.auth-user-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}

.auth-user-avatar--success {
  width: 92px;
  height: 92px;
  font-size: 30px;
}

.auth-user-preview strong,
.auth-success h2 {
  margin: 0;
  color: #0f172a;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.15;
}

.auth-user-preview > span:not(.auth-user-avatar),
.auth-success p {
  margin: 0;
  color: #64748b;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
}

.auth-step-back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 30px;
  padding: 0 10px;
  border: 0;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  transition: background .18s ease, color .18s ease, transform .18s ease;
}

.auth-step-back:hover,
.auth-step-back:focus-visible {
  background: #e2e8f0;
  color: #0f172a;
  outline: none;
  transform: translateY(-1px);
}

.auth-step-back .lucide,
.auth-step-back svg {
  width: 14px !important;
  height: 14px !important;
}

.auth-success {
  min-height: 260px;
  align-content: start;
  grid-template-rows: auto auto auto minmax(0, 1fr);
  padding-top: 4px;
}

.auth-success__pending {
  display: grid;
  place-items: center;
  align-self: stretch;
  width: 100%;
  min-height: 0;
}

.auth-field {
  display: grid;
  gap: 7px;
  margin: 0;
}

.auth-field__label {
  padding-left: 2px;
  color: #334155;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
}

.auth-field__control {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  min-height: 44px;
  border: 1px solid #dbe3ef;
  border-radius: 16px;
  background: #fff;
  box-shadow: inset 0 1px 0 rgba(15, 23, 42, .03);
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.auth-field__control--password {
  grid-template-columns: 38px minmax(0, 1fr) 40px;
}

.auth-field__control:focus-within {
  border-color: rgba(37, 99, 235, .58);
  box-shadow: 0 0 0 4px var(--auth-accent-soft);
}

.auth-field__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #64748b;
}

.auth-field__icon .lucide,
.auth-field__icon svg,
.auth-password-toggle .lucide,
.auth-password-toggle svg,
.auth-submit .lucide,
.auth-submit svg,
.auth-social__glyph .lucide,
.auth-social__glyph svg {
  width: 18px !important;
  height: 18px !important;
}

.auth-field__control input {
  width: 100%;
  min-width: 0;
  height: 100%;
  padding: 0 16px 0 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #0f172a;
  font-size: 15px;
}

.auth-field__control input:-webkit-autofill,
.auth-field__control input:-webkit-autofill:hover,
.auth-field__control input:-webkit-autofill:focus,
.auth-field__control input:-webkit-autofill:active {
  -webkit-text-fill-color: #0f172a;
  box-shadow: 0 0 0 1000px #fff inset !important;
  caret-color: #0f172a;
  transition: background-color 9999s ease-out;
}

.auth-field__control input::placeholder {
  color: #94a3b8;
}

.auth-password-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  transition: background .18s ease, color .18s ease;
}

.auth-password-toggle:hover,
.auth-password-toggle:focus-visible {
  background: #f1f5f9;
  color: #0f172a;
  outline: none;
}

.auth-form__links {
  display: flex;
  justify-content: flex-end;
  margin-top: -4px;
}

.auth-form__links a {
  color: #2563eb;
  font-size: 13px;
  font-weight: 800;
}

.auth-form__links a:hover,
.auth-form__links a:focus-visible {
  color: #1d4ed8;
  text-decoration: underline;
  outline: none;
}

.auth-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  width: 100%;
  margin-top: 4px;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--auth-accent) 0%, var(--auth-accent-strong) 100%);
  color: #fff;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 16px 34px rgba(37, 99, 235, .34);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.auth-submit:hover,
.auth-submit:focus-visible {
  transform: translateY(-1px);
  filter: saturate(1.05);
  box-shadow: 0 20px 42px rgba(37, 99, 235, .4);
  outline: none;
}

.auth-submit:active {
  transform: translateY(0);
}

.auth-submit:disabled {
  opacity: .68;
  cursor: not-allowed;
  transform: none;
  filter: grayscale(.1);
  box-shadow: none;
}

.auth-social {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 14px;
}

.auth-social__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, .62);
  border-radius: 50%;
  background: rgba(255, 255, 255, .88);
  color: #0f172a;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .18);
  backdrop-filter: blur(14px);
  cursor: pointer;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.auth-social__button:hover,
.auth-social__button:focus-visible {
  transform: translateY(-2px);
  background: #fff;
  box-shadow: 0 20px 42px rgba(15, 23, 42, .24);
  outline: none;
}

.auth-social__glyph {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
}

.auth-social__glyph--google {
  color: #1d4ed8;
}

.auth-social__glyph--apple {
  color: #0f172a;
}

.auth-social__glyph--apple svg,
.auth-social__glyph--apple .auth-apple-logo {
  width: 22px !important;
  height: 22px !important;
}

.auth-wave {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  height: 15vh;
  min-height: 100px;
  max-height: 150px;
  pointer-events: none;
}

.auth-wave__svg {
  display: block;
  width: 100%;
  height: 100%;
}

.auth-wave__parallax > use {
  animation: auth-wave-slide 25s cubic-bezier(.55, .5, .45, .5) infinite;
}

.auth-wave__parallax > use:nth-child(1) {
  animation-delay: -2s;
  animation-duration: 7s;
}

.auth-wave__parallax > use:nth-child(2) {
  animation-delay: -3s;
  animation-duration: 10s;
}

.auth-wave__parallax > use:nth-child(3) {
  animation-delay: -4s;
  animation-duration: 13s;
}

.auth-wave__parallax > use:nth-child(4) {
  animation-delay: -5s;
  animation-duration: 20s;
}

@keyframes auth-wave-slide {
  0% {
    transform: translate3d(-90px, 0, 0);
  }

  100% {
    transform: translate3d(85px, 0, 0);
  }
}

.auth-message {
  padding: 0;
  margin: -4px 0 12px;
  border: 0;
  border-radius: 0;
  background: transparent;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
  text-align: center;
}

.auth-message-error {
  border-color: transparent;
  background: transparent;
  color: #dc2626;
}

.auth-message-ok {
  border-color: transparent;
  background: transparent;
  color: #1d4ed8;
}

.auth-note { margin-top: 12px; color: #64748b; font-size: 14px; }

@media (max-width: 520px) {
  .auth-page {
    padding: 22px 12px;
  }

  .auth-page .auth-card {
    padding: 20px;
    border-radius: 24px;
  }

  .auth-wave {
    height: 40px;
    min-height: 40px;
    max-height: 40px;
  }

  .auth-topbar {
    flex-direction: column;
    justify-content: center;
    gap: 12px;
    top: 18px;
    width: calc(100% - 24px);
  }

  .auth-bubble-menu {
    width: 100%;
    gap: 4px;
    padding: 0;
  }

  .auth-bubble-menu__item,
  .auth-bubble-menu__item:link,
  .auth-bubble-menu__item:visited {
    flex: 1 1 0;
    min-width: 0;
    padding: 0 8px;
    font-size: 12px;
  }

  .auth-card__heading h1 {
    font-size: 26px;
  }

  .auth-field__control {
    grid-template-columns: 38px minmax(0, 1fr);
    min-height: 44px;
    border-radius: 16px;
  }

  .auth-field__control--password {
    grid-template-columns: 38px minmax(0, 1fr) 40px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .auth-wave__parallax > use,
  .auth-submit,
  .auth-field__control {
    animation: none;
    transition: none;
  }
}

.erp-btn {
  border: 1px solid #cbd5e1;
  background: #f8fafc;
  color: #334155;
  border-radius: 8px;
  padding: 8px 12px;
  cursor: pointer;
}

.erp-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 20px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0;
  color: #334155;
}

.erp-status i,
.erp-status svg,
.erp-status .lucide {
  width: 14px !important;
  height: 14px !important;
  flex-shrink: 0;
}

.erp-status.is-active,
.erp-status.is-success { color: var(--erp-badge-success-text); }
.erp-status.is-warning { color: var(--erp-badge-warning-text); }
.erp-status.is-info { color: var(--erp-badge-primary-text); }
.erp-status.is-promo { color: var(--erp-badge-promo-text); }
.erp-status.is-inactive { color: var(--erp-badge-disabled-text); }
.erp-status.is-danger,
.erp-status.is-error { color: var(--erp-badge-danger-text); }

.erp-btn--default { border-color: #64748b; background: #64748b; color: #fff; }
.erp-btn--danger { border-color: #dc2626; background: #dc2626; color: #fff; }
.erp-btn--success { border-color: #16a34a; background: #16a34a; color: #fff; }
.erp-btn--ghost { background: transparent; color: #334155; border: 1px solid #cbd5e1; }

.erp-form {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.erp-form-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.erp-form-grid--two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.erp-field {
  display: flex;
  flex-direction: column;
  gap: 7px;
  color: #334155;
  font-size: 13px;
  font-weight: 700;
  margin: 0;
}

.erp-field--autocomplete {
  position: relative;
}

.erp-field--autocomplete .erp-suggestions {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  margin-top: 4px;
  z-index: 221;
}

.erp-field--autocomplete .erp-suggestions__label {
  font-weight: 700;
}

.erp-field--autocomplete .erp-suggestions__meta {
  font-size: 12px;
}

.erp-field--wide {
  grid-column: 1 / -1;
}

.erp-field input,
.erp-field select,
.erp-field textarea {
  width: 100%;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  font: inherit;
  font-weight: 500;
  padding: 10px 11px;
  outline: none;
}

.erp-field input:focus,
.erp-field select:focus,
.erp-field textarea:focus {
  border-color: #64748b;
  box-shadow: 0 0 0 3px rgba(100, 116, 139, 0.14);
}

.erp-field--readonly {
  color: #64748b;
}

.erp-field--readonly input,
.erp-field--readonly textarea {
  border: 1px dashed #cbd5e1;
  color: #64748b;
  background: #f8fafc;
}

.erp-field--readonly input:focus,
.erp-field--readonly textarea:focus {
  box-shadow: none;
  outline: none;
}

.erp-field__error,
.erp-field-error {
  color: #dc2626;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.25;
  margin: 4px 0 0;
}

.erp-field--actions {
  display: inline-flex;
  justify-content: flex-end;
  align-items: stretch;
  gap: 0;
  min-height: 36px;
}

.erp-field--actions .erp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding: 0 14px;
  gap: 8px;
}

.erp-form-grid--filters {
  display: grid;
  grid-template-columns: minmax(210px, 1.5fr) minmax(140px, 1fr) minmax(140px, 1fr) auto;
  align-items: end;
  gap: 12px;
}

.erp-filters {
  display: block;
  margin: 0 0 12px;
  padding: 12px;
}

.erp-actions-row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

.erp-actions-row form {
  margin: 0;
}

.erp-invoice-filters {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(160px, 220px) auto;
  align-items: end;
  gap: 12px;
  margin-bottom: 14px;
}

.erp-record-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 var(--erp-invoice-block-gap) 0;
}

.erp-record-summary p {
  margin: 0;
  color: #64748b;
}

.erp-record-summary__left,
.erp-record-summary__right {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.erp-record-summary__right {
  align-items: center;
  text-align: right;
  flex-wrap: wrap;
  justify-content: flex-end;
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.erp-record-summary__line {
  margin: 0;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 6px;
  row-gap: 2px;
}

.erp-record-summary__label {
  color: #64748b;
  margin-right: 6px;
  font-size: 12px;
  font-weight: 700;
}

.erp-record-summary__value {
  color: #111827;
  font-size: 14px;
  font-weight: 800;
}

.erp-record-summary__actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 2px;
  min-height: 32px;
  min-width: 110px;
}

.erp-record-summary__actions-placeholder {
  display: inline-flex;
  width: 110px;
  height: 32px;
  visibility: hidden;
}


.erp-record-summary__side {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.erp-document-step.erp-inventory-act-header {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  overflow: hidden;
  margin-bottom: 0;
}

.erp-inventory-page:has(> [data-inventory-act-workflow]) {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  width: 100%;
  height: var(--erp-workspace-viewport-h);
  min-height: 480px;
  min-width: 0;
  overflow: hidden;
}

.erp-inventory-page > [data-inventory-act-workflow],
.erp-inventory-page [data-inventory-stage-panel] {
  height: 100%;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

.erp-inventory-page [data-inventory-stage-panel]:not([hidden]) {
  display: grid;
  grid-template-rows: minmax(0, 1fr);
}

.erp-inventory-act-summary {
  margin: 0 0 14px;
}

.erp-inventory-act-summary .erp-record-summary__right {
  align-items: center;
}

.erp-inventory-act-kpis {
  margin: 0 0 14px;
}

.erp-inventory-act-header .erp-document-step__head {
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-inventory-act-header .erp-document-step__title {
  align-items: stretch;
}

.erp-inventory-act-search {
  width: 100%;
}

.erp-inventory-act-search .erp-field {
  height: 100%;
  margin: 0;
}

.erp-inventory-act-search .erp-field-control {
  overflow: visible;
}

.erp-inventory-table-wrap {
  margin-top: 14px;
}

.erp-inventory-act-header > .erp-inventory-table-wrap {
  height: 100%;
  min-height: 0;
  margin-top: 0;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}

.erp-inventory-act-header > .erp-document-product-results {
  align-self: stretch;
  height: auto;
  max-height: 100%;
  min-height: 0;
  min-width: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  border-bottom: 0;
  touch-action: pan-y;
  -webkit-overflow-scrolling: touch;
}

.erp-inventory-act-header > .erp-inventory-table-wrap .erp-table {
  border: 0;
  border-radius: 0;
}

.erp-inventory-act-header > .erp-inventory-table-wrap .erp-table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: #f8fafc;
}

.erp-inventory-act-header > .erp-inventory-table-wrap .erp-table tbody tr.erp-inventory-model-color-group-start > td {
  border-top: 2px solid var(--erp-ui-border);
}

.erp-inventory-act-header > .erp-inventory-table-wrap .erp-table tbody tr.erp-inventory-model-color-group-start:first-child > td {
  border-top: 0;
}

.erp-inventory-act-header > .erp-inventory-empty-wrap {
  height: 100%;
  min-height: 0;
}

.erp-inventory-empty-wrap {
  display: grid;
  place-items: center;
  min-height: min(360px, calc(100vh - var(--erp-header-h, 56px) - var(--erp-page-toolbar-h, 64px) - var(--erp-footer-h, 56px) - 220px));
}

.erp-inventory-count-control {
  width: min(132px, 100%);
  margin: 0 auto;
}

.erp-inventory-count-control .erp-stepper {
  min-width: 116px;
}

.erp-inventory-count-control .erp-stepper__input {
  font-variant-numeric: tabular-nums;
}

.erp-inventory-discrepancy-table {
  margin-top: 0;
}

.erp-inventory-toolbar-continue.is-hidden,
.erp-inventory-toolbar-post.is-hidden {
  display: none;
}

.erp-inventory-reason-form {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) minmax(180px, 1fr) 34px;
  gap: 8px;
  align-items: center;
  min-width: min(520px, 100%);
}

.erp-inventory-reason-form .erp-field {
  margin: 0;
}

.erp-inventory-reason-form input[type="text"] {
  height: 36px;
  width: 100%;
}

.erp-inventory-discrepancy-warning {
  grid-column: 1 / -1;
  margin: 0;
  color: #b91c1c;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}

@media (max-width: 980px) {
  .erp-inventory-act-header .erp-document-step__head {
    grid-template-columns: 38px minmax(0, 1fr);
  }

  .erp-inventory-reason-form {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 720px) {
  .erp-inventory-page:has(> [data-inventory-act-workflow]) {
    display: block;
    height: auto;
    min-height: 0;
    overflow: visible;
  }

  .erp-inventory-page > [data-inventory-act-workflow],
  .erp-inventory-page [data-inventory-stage-panel],
  .erp-document-step.erp-inventory-act-header {
    height: auto;
    min-height: 0;
    overflow: visible;
  }

  .erp-inventory-act-header > .erp-inventory-table-wrap {
    max-height: min(560px, 70vh);
  }

  .erp-inventory-act-header > .erp-document-product-results {
    max-height: min(560px, 70vh);
  }
}

.invoice-admin-action {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 32px;
  padding: 0 11px;
  border: 1px solid #e5e7eb;
  border-radius: 7px;
  background: #fff;
  color: #475569;
  font-size: 12px;
  font-weight: 800;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.invoice-admin-action:hover,
.invoice-admin-action:focus-visible {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: #111827;
  box-shadow: 0 3px 8px rgba(15, 23, 42, 0.08);
}

.invoice-admin-action i,
.invoice-admin-action svg,
.invoice-admin-action .lucide {
  width: 14px !important;
  height: 14px !important;
}

.erp-comment-trigger-btn {
  min-height: 32px;
  gap: 8px;
  padding: 0 11px;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 800;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.erp-comment-trigger-btn i,
.erp-comment-trigger-btn svg,
.erp-comment-trigger-btn .lucide {
  width: 14px !important;
  height: 14px !important;
}


.invoice-toolbar-forms {
  display: none;
}

.invoice-form-context {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}

.invoice-form-context strong,
.invoice-form-context span {
  display: block;
}

.invoice-form-context strong {
  color: #111827;
}

.invoice-form-context span {
  margin-top: 4px;
  color: #64748b;
  font-size: 13px;
}

.invoice-form-context__link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
}

.erp-stepper {
  display: grid;
  grid-template-columns: 42px minmax(60px, 1fr) 42px;
  width: 100%;
  min-height: 42px;
  border: 1px solid #cbd5e1;
  background: #fff;
  overflow: hidden;
}

.erp-stepper__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  min-width: 42px;
  height: 42px;
  border: 0;
  border-radius: 0;
  background: #f8fafc;
  color: #334155;
  cursor: pointer;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.erp-stepper__btn:hover,
.erp-stepper__btn:focus-visible {
  background: #e5e7eb;
  color: #0f172a;
  outline: none;
}

.erp-stepper__btn:first-child {
  border-right: 1px solid #cbd5e1;
}

.erp-stepper__btn:last-child {
  border-left: 1px solid #cbd5e1;
}

.erp-stepper__btn i,
.erp-stepper__btn svg,
.erp-stepper__btn .lucide {
  width: 14px !important;
  height: 14px !important;
}

.erp-stepper__input {
  width: 100%;
  min-width: 0;
  height: 42px;
  border: 0;
  border-radius: 0;
  background: #fff;
  color: #0f172a;
  text-align: center;
  font-weight: 800;
}

.erp-stepper__input:focus {
  outline: 2px solid #dbeafe;
  outline-offset: -2px;
}

.erp-stepper__input::-webkit-outer-spin-button,
.erp-stepper__input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.erp-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin: 0 0 var(--erp-block-gap);
  border: 0;
  background: transparent;
}

.erp-kpis--compact {
  margin-top: 0;
}

.erp-kpis .detail-card {
  --erp-kpi-accent: #5d8091;
  --erp-kpi-accent-soft: color-mix(in srgb, var(--erp-kpi-accent) 10%, var(--erp-ui-surface));
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: grid;
  align-content: center;
  min-width: 0;
  min-height: 76px;
  margin: 0;
  padding: 12px 14px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.erp-kpis .detail-card:nth-child(4n + 2) {
  --erp-kpi-accent: #e67270;
}

.erp-kpis .detail-card:nth-child(4n + 3) {
  --erp-kpi-accent: #4f9e8b;
}

.erp-kpis .detail-card:nth-child(4n + 4) {
  --erp-kpi-accent: #d99555;
}

.erp-kpis .detail-card::before,
.erp-kpis .detail-card::after,
.erp-kpi-card::before,
.erp-kpi-card::after {
  content: none;
}

.erp-kpis .detail-card.is-active,
.erp-kpis .detail-card.is-success {
  --erp-kpi-accent: #2f8f78;
}

.erp-kpis .detail-card.is-warning {
  --erp-kpi-accent: #c77a25;
}

.erp-kpis .detail-card.is-danger {
  --erp-kpi-accent: #cf4f5f;
}

.erp-kpis .detail-card.is-inactive {
  --erp-kpi-accent: #7b8797;
}

.erp-kpis .detail-card + .detail-card {
  border-left: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-kpis span {
  display: block;
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}

.erp-kpis strong {
  display: block;
  margin-top: 4px;
  color: var(--erp-ui-text, #0f172a);
  font-size: 20px;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.erp-kpis .detail-card:has(> .erp-kpi-icon) {
  grid-template-columns: 38px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: 12px;
}

.erp-kpis .erp-kpi-icon {
  grid-column: 1;
  grid-row: 1 / span 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border: 1px solid color-mix(in srgb, var(--erp-kpi-accent) 18%, var(--erp-ui-border-soft));
  border-radius: var(--erp-ui-radius-sm, 6px);
  background: var(--erp-kpi-accent-soft);
  color: var(--erp-kpi-accent);
}

.erp-kpis .erp-kpi-icon :is(i, svg, .lucide) {
  width: 18px !important;
  height: 18px !important;
  color: currentColor;
}

.erp-kpis .detail-card:has(> .erp-kpi-icon) > span:not(.erp-kpi-icon),
.erp-kpis .detail-card:has(> .erp-kpi-icon) > strong {
  grid-column: 2;
  min-width: 0;
}

.erp-kpis .detail-card > strong:first-child {
  margin-top: 0;
}

.erp-kpi-status-line {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.erp-kpis .detail-card:has(.erp-kpi-status-line) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(34px, auto);
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: 12px;
  row-gap: 7px;
}

.erp-kpis .detail-card:has(.erp-kpi-status-line) .erp-kpi-status-line,
.erp-kpis .detail-card:has(.erp-kpi-status-line) .erp-kpi-meta-row {
  display: contents !important;
}

.erp-kpis .detail-card:has(.erp-kpi-status-line) .erp-kpi-status-line > span:first-child {
  grid-column: 1;
  grid-row: 1;
  color: var(--erp-ui-text, #0f172a);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
}

.erp-kpis .detail-card:has(.erp-kpi-status-line) .erp-kpi-status-icon {
  grid-column: 2;
  grid-row: 1;
  justify-self: center;
  align-self: center;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border: 1px solid color-mix(in srgb, var(--erp-kpi-accent) 18%, var(--erp-ui-border-soft));
  border-radius: var(--erp-ui-radius-sm, 6px);
  background: var(--erp-kpi-accent-soft);
  color: var(--erp-kpi-accent);
}

.erp-kpis .detail-card:has(.erp-kpi-status-line) .erp-kpi-meta-copy {
  grid-column: 1;
  grid-row: 2;
}

.erp-kpis .detail-card:has(.erp-kpi-status-line) .erp-kpi-count {
  grid-column: 2;
  grid-row: 2;
  justify-self: center;
  align-self: center;
}

.erp-kpi-meta-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin-top: 8px;
}

.erp-kpi-meta-copy {
  display: grid !important;
  gap: 3px;
  min-width: 0;
}

.erp-kpis .erp-kpi-count {
  margin-top: 0;
  min-width: 34px;
  text-align: center;
  font-size: 24px;
  line-height: 1;
}

.erp-kpis .erp-kpi-status-icon {
  display: inline-flex;
  flex: 0 0 auto;
}

.erp-kpi-trend {
  display: inline-flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  color: var(--erp-ui-muted, #64748b) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  white-space: nowrap;
}

.erp-kpi-trend :is(i, svg, .lucide) {
  width: 14px !important;
  height: 14px !important;
  color: currentColor;
}

.erp-kpi-trend.is-up {
  color: #2f8f78 !important;
}

.erp-kpi-trend.is-down {
  color: #cf4f5f !important;
}

.erp-issue-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  justify-content: center;
  max-width: 980px;
  margin: 0 auto;
  border: 1px solid var(--erp-ui-border);
  background: var(--erp-ui-surface);
}

.erp-issue-list--two-columns {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.erp-issue-item {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 76px;
  padding: 13px 14px;
  background: var(--erp-ui-surface);
}

.erp-issue-list--two-columns .erp-issue-item:nth-child(even) {
  border-left: 1px solid var(--erp-ui-border);
}

.erp-issue-list--two-columns:has(> .erp-issue-item:only-child)::after {
  content: "";
  min-height: 76px;
  border-left: 1px solid var(--erp-ui-border);
  background: var(--erp-ui-surface);
}

.erp-issue-list--two-columns:has(> .erp-issue-item.is-active:only-child)::after {
  background: #f0fdf4;
}

.erp-issue-list--two-columns:has(> .erp-issue-item.is-warning:only-child)::after {
  background: #fffbeb;
}

.erp-issue-list--two-columns:has(> .erp-issue-item.is-danger:only-child)::after,
.erp-issue-list--two-columns:has(> .erp-issue-item.is-inactive:only-child)::after {
  background: #fef2f2;
}

.erp-issue-list--two-columns .erp-issue-item:nth-child(n + 3),
.erp-issue-list:not(.erp-issue-list--two-columns) .erp-issue-item + .erp-issue-item {
  border-top: 1px solid var(--erp-ui-border);
}

.erp-issue-item.is-active {
  background: #f0fdf4;
}

.erp-issue-item.is-warning {
  background: #fffbeb;
}

.erp-issue-item.is-danger,
.erp-issue-item.is-inactive {
  background: #fef2f2;
}

.erp-issue-item__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  color: var(--erp-ui-muted);
}

.erp-issue-item.is-active .erp-issue-item__icon {
  color: #15803d;
}

.erp-issue-item.is-warning .erp-issue-item__icon {
  color: #b45309;
}

.erp-issue-item.is-danger .erp-issue-item__icon,
.erp-issue-item.is-inactive .erp-issue-item__icon {
  color: #dc2626;
}

.erp-issue-item__icon i,
.erp-issue-item__icon svg,
.erp-issue-item__icon .lucide {
  width: var(--erp-icon-size);
  height: var(--erp-icon-size);
}

.erp-issue-item__body {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-issue-item__body strong {
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  line-height: 1.25;
}

.erp-issue-item__body small {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
}

@media (max-width: 760px) {
  .erp-issue-list--two-columns {
    grid-template-columns: minmax(0, 1fr);
  }

  .erp-issue-list--two-columns .erp-issue-item:nth-child(even) {
    border-left: 0;
  }

  .erp-issue-list--two-columns:has(> .erp-issue-item:only-child)::after {
    content: none;
  }

  .erp-issue-list--two-columns .erp-issue-item:nth-child(n + 2) {
    border-top: 1px solid var(--erp-ui-border);
  }
}

/* == Journey and document view layout == */
.erp-journey-card {
  display: grid;
  gap: 16px;
  margin-bottom: var(--erp-block-gap);
}

.erp-journey-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.erp-journey-card__head strong {
  display: block;
  color: var(--erp-ui-text, #111827);
  font-size: 18px;
  line-height: 1.2;
  font-weight: 900;
}

.erp-journey-card__head span {
  display: block;
  margin-top: 5px;
  color: var(--erp-ui-muted, #64748b);
  font-size: 13px;
  font-weight: 700;
}

.erp-journey-card__states {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}

.erp-route {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 1.35fr) minmax(0, 1fr);
  position: relative;
  align-items: center;
  gap: 18px;
  min-height: 126px;
  padding: 20px;
  overflow: hidden;
  background: linear-gradient(180deg, var(--erp-ui-surface, #ffffff), var(--erp-ui-surface-muted, #f8fafc));
}

.erp-route--top {
  --erp-route-axis-y: 60px;
  min-height: 104px;
  margin-bottom: var(--erp-block-gap);
  padding: 12px 0 18px;
  background: transparent;
}

.erp-route::before {
  content: "";
  position: absolute;
  right: 78px;
  left: 78px;
  top: var(--erp-route-axis-y, 50%);
  height: 2px;
  background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--erp-ui-text, #111827) 16%, transparent), transparent);
  transform: translateY(-50%);
}

.erp-route::after {
  content: "";
  position: absolute;
  right: 74px;
  top: var(--erp-route-axis-y, 50%);
  width: 9px;
  height: 9px;
  border-top: 2px solid color-mix(in srgb, var(--erp-ui-text, #111827) 18%, transparent);
  border-right: 2px solid color-mix(in srgb, var(--erp-ui-text, #111827) 18%, transparent);
  transform: translateY(-50%) rotate(45deg);
}

.erp-route__point {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-rows: minmax(18px, auto) 44px minmax(18px, auto) minmax(16px, auto);
  justify-items: center;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 0;
  text-align: center;
}

.erp-route__marker,
.erp-route__truck {
  display: inline-grid;
  flex: 0 0 auto;
  place-items: center;
  color: var(--erp-ui-muted, #64748b);
  background: var(--erp-ui-surface, #ffffff);
  box-shadow: 0 10px 28px rgba(15, 23, 42, .08), inset 0 0 0 1px var(--erp-ui-border-soft, #e5e7eb);
}

.erp-route__marker {
  width: 42px;
  height: 42px;
  border-radius: 50%;
}

.erp-route__middle {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-rows: minmax(18px, auto) 44px minmax(18px, auto) minmax(16px, auto);
  align-items: center;
  justify-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  padding: 0;
  text-align: center;
}

.erp-route__truck {
  width: 44px;
  height: 44px;
  border-radius: 50%;
}

.erp-route__label,
.erp-route__text,
.erp-route__note {
  display: block;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.erp-route__label {
  color: var(--erp-ui-text, #111827);
  font-size: 14px;
  line-height: 1.2;
  font-weight: 900;
  white-space: nowrap;
}

.erp-route__text,
.erp-route__note {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  line-height: 1.25;
  font-weight: 700;
  white-space: nowrap;
}

.erp-route__note {
  color: color-mix(in srgb, var(--erp-ui-muted, #64748b) 82%, var(--erp-ui-text, #111827));
  font-size: 11px;
}

.erp-route__marker i,
.erp-route__marker svg,
.erp-route__marker .lucide,
.erp-route__truck i,
.erp-route__truck svg,
.erp-route__truck .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-route-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin: calc(var(--erp-block-gap) * -0.45) 0 var(--erp-block-gap);
  border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-route-metric {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 52px;
  padding: 9px 14px;
  border-left: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-route-metric:first-child {
  border-left: 0;
  padding-left: 0;
}

.erp-route-metric:last-child {
  padding-right: 0;
}

.erp-route-metric__icon {
  display: inline-grid;
  flex: 0 0 30px;
  place-items: center;
  width: 30px;
  height: 30px;
  color: var(--erp-ui-muted, #64748b);
}

.erp-route-metric__icon i,
.erp-route-metric__icon svg,
.erp-route-metric__icon .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-route-metric__body {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-route-metric__body span {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  line-height: 1.15;
  font-weight: 800;
}

.erp-route-metric__body strong {
  min-width: 0;
  overflow: hidden;
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  line-height: 1.25;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-route.is-active .erp-route__truck,
.erp-route.is-active .erp-route__point:first-child .erp-route__marker {
  color: var(--erp-ui-info, #0891b2);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--erp-ui-info, #0891b2) 36%, transparent);
}

.erp-route.is-done .erp-route__truck,
.erp-route.is-done .erp-route__marker {
  color: var(--erp-ui-success, #16a34a);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--erp-ui-success, #16a34a) 36%, transparent);
}

.erp-route.is-problem .erp-route__truck {
  color: var(--erp-ui-danger, #dc2626);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--erp-ui-danger, #dc2626) 36%, transparent);
}

.erp-route.is-active::before {
  background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--erp-ui-info, #0891b2) 32%, transparent), transparent);
}

.erp-route.is-done::before {
  background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--erp-ui-success, #16a34a) 34%, transparent), transparent);
}

.erp-route.is-problem::before {
  background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--erp-ui-danger, #dc2626) 30%, transparent), transparent);
}

.erp-document-overview {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 380px);
  gap: var(--erp-block-gap);
  align-items: start;
}

.erp-document-overview__main,
.erp-document-overview__side {
  display: grid;
  gap: var(--erp-block-gap);
  min-width: 0;
}

.erp-document-overview__side {
  position: sticky;
  top: calc(var(--erp-header-height, 58px) + var(--erp-toolbar-height, 48px) + var(--erp-block-gap));
}

.erp-document-overview--stacked {
  grid-template-columns: minmax(0, 1fr);
}

.erp-document-overview--stacked .erp-document-overview__side {
  position: static;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.erp-document-panel {
  margin: 0;
}

.erp-document-lines {
  display: grid;
  gap: 0;
}

.erp-document-lines > div {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  min-height: 38px;
  padding: 8px 0;
  border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-document-lines > div:first-child {
  border-top: 0;
}

.erp-document-lines span {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 700;
}

.erp-document-lines strong {
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 900;
  text-align: right;
}

.erp-document-lines--after-card {
  margin-top: 12px;
}

.erp-person-card {
  display: grid;
  gap: 12px;
  padding: 12px;
  background: var(--erp-ui-surface-soft, #f8fafc);
  border-radius: var(--erp-radius-sm, 8px);
}

.erp-person-card__identity {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.erp-person-card__body {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-person-card__body strong,
.erp-person-card__body span,
.erp-person-card__body small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-person-card__body strong {
  color: var(--erp-ui-text, #111827);
  font-size: 14px;
  font-weight: 900;
}

.erp-person-card__body span,
.erp-person-card__body small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 750;
}

.erp-person-card__actions {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  flex: 0 0 auto;
}

.erp-person-card__action {
  width: 34px;
  height: 34px;
  border-radius: var(--erp-radius-sm, 8px);
  color: var(--erp-ui-text, #111827);
}

.erp-person-card__action:hover,
.erp-person-card__action:focus-visible {
  background: var(--erp-ui-hover, #e5e7eb);
  color: var(--erp-ui-text, #111827);
}

.erp-person-card__action:disabled:hover,
.erp-person-card__action.is-disabled:hover {
  background: transparent;
}

.erp-person-card__stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  background: var(--erp-ui-surface, #ffffff);
  border-radius: var(--erp-radius-sm, 8px);
  overflow: hidden;
}

.erp-person-card__stat {
  display: grid;
  align-content: center;
  justify-items: center;
  min-height: 56px;
  padding: 8px 10px;
}

.erp-person-card__stat + .erp-person-card__stat {
  border-left: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-person-card__stat strong {
  color: var(--erp-ui-text, #111827);
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
}

.erp-person-card__stat span {
  margin-top: 4px;
  color: var(--erp-ui-muted, #64748b);
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
}

.erp-person-card__profile-link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 12px;
  border-radius: var(--erp-radius-sm, 8px);
  background: var(--erp-ui-surface, #ffffff);
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 850;
  text-align: center;
  text-decoration: none;
  transition: background .12s ease, color .12s ease;
}

.erp-person-card__profile-link:hover,
.erp-person-card__profile-link:focus-visible {
  background: var(--erp-ui-hover, #e5e7eb);
  color: var(--erp-ui-text, #111827);
}

.erp-person-card__profile-link.is-disabled {
  color: var(--erp-ui-muted, #64748b);
  opacity: .55;
  cursor: not-allowed;
}

.erp-person-card__profile-link.is-disabled:hover {
  background: var(--erp-ui-surface, #ffffff);
}

.erp-order-summary {
  display: grid;
  gap: 12px;
}

.erp-order-summary__list {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
}

.erp-order-summary__line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 34px;
  padding: 6px 0;
}

.erp-order-summary__line dt {
  margin: 0;
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 750;
}

.erp-order-summary__line dd {
  margin: 0;
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 900;
  text-align: right;
  white-space: nowrap;
}

.erp-order-summary__separator {
  height: 1px;
  margin: 6px 0;
  background: var(--erp-ui-border-soft, #e5e7eb);
}

.erp-order-summary__total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 50px;
  margin-top: 0;
  padding: 12px 0 0;
  border-top: 1px solid var(--erp-ui-text, #111827);
}

.erp-order-summary__total span {
  color: var(--erp-ui-text, #111827);
  font-size: 12px;
  font-weight: 900;
}

.erp-order-summary__total strong {
  color: var(--erp-ui-text, #111827);
  font-size: 18px;
  font-weight: 900;
  text-align: right;
  white-space: nowrap;
}

.erp-document-action-list {
  display: grid;
  gap: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border, #d1d5db);
  background: var(--erp-ui-surface, #ffffff);
}

.erp-document-action-list--attached {
  margin-top: 12px;
}

.erp-document-action-list form {
  margin: 0;
}

.erp-document-action-list form + form {
  border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-document-action-btn {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  width: 100%;
  min-height: 42px;
  padding: 0 12px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
  transition: background-color var(--erp-ui-transition, 150ms ease), color var(--erp-ui-transition, 150ms ease);
}

.erp-document-action-btn:hover,
.erp-document-action-btn:focus-visible {
  outline: none;
  background: var(--erp-ui-surface-soft, #f1f5f9);
}

.erp-document-action-btn.is-danger {
  color: var(--erp-ui-danger, #dc2626);
}

.erp-document-action-btn i,
.erp-document-action-btn svg,
.erp-document-action-btn .lucide {
  width: 15px !important;
  height: 15px !important;
}

@media (max-width: 980px) {
  .erp-document-overview {
    grid-template-columns: 1fr;
  }

  .erp-document-overview__side {
    position: static;
  }

  .erp-route {
    --erp-route-mobile-axis-x: 52px;
    grid-template-columns: 1fr;
    min-height: 0;
    padding: 16px;
  }

  .erp-route::before {
    top: 32px;
    bottom: 32px;
    left: var(--erp-route-mobile-axis-x);
    right: auto;
    width: 2px;
    height: auto;
    background: linear-gradient(180deg, transparent, color-mix(in srgb, var(--erp-ui-text, #111827) 16%, transparent), transparent);
    transform: none;
  }

  .erp-route::after {
    left: calc(var(--erp-route-mobile-axis-x) - 5px);
    right: auto;
    top: auto;
    bottom: 30px;
    transform: rotate(135deg);
  }

  .erp-route__point,
  .erp-route__middle {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    column-gap: 12px;
    row-gap: 4px;
    justify-items: start;
    justify-content: stretch;
    text-align: left;
  }

  .erp-route__marker,
  .erp-route__truck {
    grid-column: 1;
    grid-row: 1 / -1;
    align-self: center;
    justify-self: center;
  }

  .erp-route__label,
  .erp-route__text,
  .erp-route__note {
    grid-column: 2;
  }

  .erp-route-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 0;
  }

  .erp-route-metric {
    border-left: 0;
    border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  }

  .erp-route-metric:nth-child(-n + 2) {
    border-top: 0;
  }

  .erp-route-metric:nth-child(2n) {
    border-left: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  }

  .erp-route-metric:first-child {
    padding-left: 14px;
  }

  .erp-route-metric:last-child {
    padding-right: 14px;
  }

}

@media (max-width: 767.98px) {
  .erp-document-overview--stacked .erp-document-overview__side {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 760px) {
  .erp-journey-card__head {
    flex-direction: column;
  }

  .erp-journey-card__states {
    justify-content: flex-start;
  }

  .erp-route__point,
  .erp-route__middle {
    min-height: 76px;
    padding: 0;
  }

}

.erp-document-wizard {
  --erp-document-step-extra-offset: 0px;
  --erp-document-step-viewport-h: calc(100vh - var(--erp-header-h, 56px) - var(--erp-footer-h, 56px) - var(--erp-page-toolbar-h, 64px) - var(--erp-document-step-extra-offset) - 86px);
  display: grid;
  gap: var(--erp-document-wizard-gap);
  margin: 0;
  padding-bottom: 0;
}

.erp-feed-scenario-gate {
  display: grid;
  min-height: calc(100vh - var(--erp-header-h, 56px) - var(--erp-footer-h, 56px) - var(--erp-page-toolbar-h, 64px) - 32px);
  place-items: center;
  padding: 12px 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-workspace-radius);
  background: var(--erp-ui-surface);
  box-shadow: var(--erp-ui-shadow);
}

.erp-feed-scenario-gate[hidden],
.erp-feed-checkout-wizard[hidden] {
  display: none !important;
}

.erp-feed-scenario-gate__inner {
  display: grid;
  gap: 16px;
  width: min(620px, 100%);
}

.erp-feed-scenario-gate__head {
  display: grid;
  gap: 6px;
  text-align: center;
}

.erp-feed-scenario-gate__head span {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.erp-feed-scenario-gate__head h2 {
  margin: 0;
  color: var(--erp-ui-ink);
  font-size: 24px;
  font-weight: 950;
  line-height: 1.15;
}

.erp-feed-scenario-gate__head p {
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  font-weight: 750;
  line-height: 1.45;
}

.erp-feed-scenario-gate__actions,
.erp-wizard-choice-actions {
  --erp-wizard-choice-size: 220px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--erp-wizard-choice-size)), var(--erp-wizard-choice-size)));
  justify-content: center;
  gap: 12px;
}

.erp-wizard-choice-actions {
  width: min(calc(var(--erp-wizard-choice-size) + var(--erp-wizard-choice-size) + var(--erp-wizard-choice-size) + 24px), 100%);
  margin: 0 auto;
}

.erp-wizard-choice-actions--center {
  min-height: calc(var(--erp-wizard-choice-size) + 12px);
  align-content: center;
  justify-content: center;
  justify-items: center;
  margin: auto;
}

.erp-document-step.is-active > .erp-wizard-choice-actions--center,
.erp-document-step.is-active > .erp-document-groups:has(> .erp-wizard-choice-actions--center:not([hidden])) {
  min-height: 100%;
  align-content: center;
}

.erp-wizard-choice-actions--three {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--erp-wizard-choice-size)), var(--erp-wizard-choice-size)));
}

.erp-wizard-choice-actions--seasons {
  --erp-wizard-choice-size: 150px;
  width: min(100%, 798px);
  grid-template-columns: repeat(5, minmax(132px, 1fr));
  justify-content: center;
  overflow-x: auto;
  padding-bottom: 2px;
}

.erp-wizard-choice-actions--seasons .erp-wizard-choice-card {
  min-height: 150px;
  padding: 14px;
}

.erp-wizard-choice-actions--shoe-categories {
  --erp-wizard-choice-size: 148px;
  width: 100%;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
  justify-content: stretch;
  align-items: stretch;
}

.erp-choice-orb-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(116px, 132px));
  justify-content: center;
  align-content: center;
  gap: 22px;
  width: 100%;
  min-height: 0;
  margin: auto;
}

.erp-choice-orb-grid--compact {
  grid-template-columns: repeat(auto-fit, minmax(96px, 108px));
  align-content: start;
  gap: 18px 16px;
}

.erp-choice-orb {
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 10px;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--erp-ui-text, #111827);
  font: inherit;
  text-align: center;
  cursor: pointer;
  appearance: none;
  transition: color var(--erp-ui-transition), transform var(--erp-ui-transition);
}

.erp-choice-orb:hover,
.erp-choice-orb:focus-visible {
  color: var(--erp-ui-text, #111827);
  transform: translateY(-3px);
  outline: none;
}

.erp-choice-orb__media {
  display: grid;
  place-items: center;
  width: var(--erp-product-group-choice-size);
  height: var(--erp-product-group-choice-size);
  overflow: hidden;
  border: 3px solid transparent;
  border-radius: 50%;
  background: var(--erp-category-icon-bg, var(--erp-ui-surface, #fff));
  color: #5d8091;
  box-shadow: var(--erp-category-icon-glow), 0 14px 30px rgba(30, 64, 75, .14);
  transition: border-color var(--erp-ui-transition), box-shadow var(--erp-ui-transition), transform var(--erp-ui-transition);
}

.erp-choice-orb__media > :is(i, svg, .lucide) {
  width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
}

.erp-choice-orb__visual,
.erp-choice-orb__media > .erp-shoe-category-icon--choice {
  width: 100%;
  height: 100%;
  margin: 0;
  border-radius: inherit;
  background: transparent;
  box-shadow: none;
}

.erp-choice-orb__visual:is(.erp-category-visual--icon, .erp-category-visual--fallback) {
  padding: 20px;
}

.erp-choice-orb__media .erp-category-visual__image {
  object-fit: cover;
}

.erp-choice-orb:hover .erp-choice-orb__media,
.erp-choice-orb:focus-visible .erp-choice-orb__media {
  box-shadow: var(--erp-category-icon-glow), 0 18px 34px rgba(30, 64, 75, .2);
}

.erp-choice-orb:focus-visible .erp-choice-orb__media {
  box-shadow: var(--erp-category-icon-glow), var(--erp-ui-focus-ring), 0 18px 34px rgba(30, 64, 75, .18);
}

.erp-choice-orb.is-active .erp-choice-orb__media {
  border-color: var(--erp-ui-primary, #2563eb);
  box-shadow: var(--erp-category-icon-glow), 0 0 0 5px color-mix(in srgb, var(--erp-ui-primary, #2563eb) 13%, transparent), 0 18px 34px rgba(30, 64, 75, .18);
}

.erp-choice-orb__label {
  display: block;
  width: 100%;
  max-width: 132px;
  margin: 0;
  color: inherit;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.erp-choice-orb--compact .erp-choice-orb__media {
  width: var(--erp-product-group-choice-size);
  height: var(--erp-product-group-choice-size);
  border-width: 2px;
  box-shadow: var(--erp-category-icon-glow), 0 10px 22px rgba(30, 64, 75, .12);
}

.erp-choice-orb--compact .erp-choice-orb__visual:is(.erp-category-visual--icon, .erp-category-visual--fallback),
.erp-choice-orb--compact .erp-choice-orb__media > .erp-shoe-category-icon--choice:is(.erp-category-visual--icon, .erp-category-visual--fallback) {
  padding: 6px;
}

.erp-choice-orb--compact .erp-choice-orb__label {
  max-width: 96px;
  font-size: 13px;
}

.erp-choice-orb.is-disabled,
.erp-choice-orb:disabled {
  cursor: not-allowed;
  opacity: .5;
  transform: none;
}

.erp-page-hub {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: var(--erp-block-gap);
  min-height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h) - var(--erp-page-toolbar-h) - 32px);
}

.erp-page-hub > .erp-ui-section + .erp-ui-section {
  margin-top: 0;
}

.erp-page-hub .erp-kpis {
  margin-bottom: 0;
}

.erp-page-hub__center {
  align-content: center;
  min-height: 0;
}

.erp-page-hub__bottom {
  align-self: end;
}

.erp-choice-hub {
  min-height: clamp(280px, 38vh, 460px);
  align-content: center;
  justify-items: center;
}

.erp-feed-scenario-card,
.erp-wizard-choice-card {
  display: grid;
  align-content: center;
  justify-items: center;
  aspect-ratio: 1 / 1;
  min-height: 0;
  padding: 18px;
  border: 1px solid var(--erp-ui-border);
  border-radius: 0;
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text, #111827);
  cursor: pointer;
  text-align: center;
  appearance: none;
}

.erp-feed-scenario-card:hover,
.erp-feed-scenario-card:focus-visible,
.erp-wizard-choice-card:hover,
.erp-wizard-choice-card:focus-visible {
  background: var(--erp-ui-surface-muted);
  outline: none;
}

.erp-wizard-choice-card.is-active {
  border-color: var(--erp-ui-text, #111827);
  background: var(--erp-ui-text, #111827);
  color: #fff;
}

.erp-wizard-choice-card.is-active:hover,
.erp-wizard-choice-card.is-active:focus-visible {
  background: var(--erp-ui-text, #111827);
  color: #fff;
}

.erp-feed-scenario-card.is-disabled,
.erp-feed-scenario-card:disabled,
.erp-wizard-choice-card.is-disabled,
.erp-wizard-choice-card:disabled {
  cursor: not-allowed;
  opacity: .55;
}

.erp-feed-scenario-card i,
.erp-feed-scenario-card svg,
.erp-feed-scenario-card .lucide,
.erp-wizard-choice-card i,
.erp-wizard-choice-card svg,
.erp-wizard-choice-card .lucide {
  width: 30px !important;
  height: 30px !important;
  margin-bottom: 12px;
}

.erp-feed-scenario-card strong,
.erp-wizard-choice-card strong {
  margin-bottom: 6px;
  font-size: 16px;
  font-weight: 950;
  line-height: 1.2;
}

.erp-wizard-choice-card.is-active strong,
.erp-wizard-choice-card.is-active i,
.erp-wizard-choice-card.is-active svg,
.erp-wizard-choice-card.is-active .lucide {
  color: #fff;
  stroke: currentColor;
}

.erp-feed-scenario-card span,
.erp-wizard-choice-card span {
  max-width: 240px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 750;
  line-height: 1.4;
}

.erp-wizard-choice-card--compact {
  min-height: 108px;
  aspect-ratio: auto;
  padding: 12px;
  justify-items: start;
  text-align: left;
}

.erp-wizard-choice-card--compact strong {
  margin-bottom: 0;
  font-size: 13px;
  line-height: 1.25;
}

.erp-feed-payment-methods {
  --erp-wizard-choice-size: 180px;
  width: 100%;
  margin: 0;
  padding: 12px;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--erp-wizard-choice-size)), 220px));
  justify-content: start;
}

.erp-feed-payment-methods .erp-wizard-choice-card {
  min-height: 132px;
  aspect-ratio: auto;
}

.erp-wizard-choice-card--compact .erp-shoe-category-icon {
  margin-bottom: 8px;
  color: var(--erp-ui-muted);
}

.erp-wizard-choice-card .erp-shoe-category-icon--choice {
  width: var(--erp-category-icon-choice-size);
  height: var(--erp-category-icon-choice-size);
  margin-bottom: 12px;
}

.erp-wizard-choice-card .erp-shoe-category-icon--choice :is(i, svg, .lucide) {
  margin-bottom: 0;
}

.erp-wizard-choice-card--compact.is-active .erp-shoe-category-icon {
  color: #fff;
}

.erp-invoice-shoe-category-panel {
  display: grid;
  gap: 12px;
  width: 100%;
  margin: 0;
  padding: 12px;
  box-sizing: border-box;
}

.erp-invoice-shoe-category-panel[hidden],
.erp-invoice-shoe-category-group[hidden] {
  display: none !important;
}

.erp-invoice-shoe-category-group {
  width: 100%;
}

.shoe-categories-panel {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.shoe-category-selection-toolbar,
.shoe-category-selection-toolbar__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.shoe-category-selection-toolbar {
  justify-content: flex-end;
  min-height: 36px;
}

.shoe-category-selection-toolbar__actions {
  justify-content: flex-end;
}

.shoe-category-selection-toolbar__actions strong {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
}

.shoe-category-step {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.shoe-category-step[hidden] {
  display: none !important;
}

.shoe-category-main-heading {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 10px;
}

.shoe-category-main-heading__back {
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  margin-left: -4px;
}

.shoe-category-main-heading__divider {
  flex: 0 0 auto;
  width: 1px;
  height: 22px;
  background: #dbe3ee;
}

.shoe-category-main-heading__breadcrumb {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  min-width: 0;
  gap: 7px;
  overflow: hidden;
  color: var(--erp-ui-muted, #64748b);
}

.shoe-category-main-heading__crumb {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.shoe-category-main-heading__crumb.is-current {
  color: var(--erp-ui-text, #111827);
}

.shoe-category-main-heading__separator {
  flex: 0 0 auto;
  color: #cbd5e1;
}

.shoe-category-main-heading__count {
  flex: 0 0 auto;
}

.shoe-category-tile-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.shoe-category-tile {
  position: relative;
  display: grid;
  align-content: center;
  justify-items: center;
  flex: 0 0 116px;
  width: 116px;
  height: 116px;
  min-height: 116px;
  padding: 10px;
  overflow: hidden;
  text-align: center;
}

.shoe-category-tile.erp-wizard-choice-card--compact {
  justify-items: center;
  text-align: center;
}

.shoe-category-tile--actionable {
  cursor: pointer;
  overflow: visible;
  z-index: 1;
}

.shoe-category-tile__selector {
  position: absolute;
  top: 7px;
  left: 7px;
  z-index: 5;
  display: none;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  padding: 0;
  border: 1px solid var(--erp-ui-border, #dbe3ee);
  border-radius: 8px;
  background: var(--erp-ui-surface, #fff);
  color: var(--erp-ui-muted, #64748b);
  cursor: pointer;
}

.shoe-category-tile__selector :is(i, svg, .lucide) {
  width: 15px !important;
  height: 15px !important;
  margin: 0 !important;
}

.shoe-categories-panel.is-selection-mode .shoe-category-tile__selector {
  display: inline-flex;
}

.shoe-categories-panel.is-selection-mode .shoe-category-tile__overlay {
  display: none;
}

.shoe-category-tile.is-selected {
  border-color: var(--erp-ui-text, #111827);
  background: var(--erp-ui-surface-muted, #f3f4f6);
  box-shadow: inset 0 0 0 1px var(--erp-ui-text, #111827);
}

.shoe-category-tile.is-selected .shoe-category-tile__selector {
  border-color: var(--erp-ui-text, #111827);
  background: var(--erp-ui-text, #111827);
  color: #fff;
}

.shoe-category-tile--actionable .shoe-category-tile__content {
  display: grid;
  width: 100%;
  height: 100%;
  align-content: center;
  justify-items: center;
  gap: 6px;
  position: relative;
  z-index: 1;
  text-align: center;
}

.shoe-category-tile--actionable .shoe-category-tile__overlay {
  position: absolute;
  inset: 0;
  display: block;
  border-radius: inherit;
  padding: 10px;
  z-index: 2;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.14s ease;
}

.shoe-category-tile--actionable:hover .shoe-category-tile__overlay,
.shoe-category-tile--actionable:focus-within .shoe-category-tile__overlay {
  opacity: 1;
  pointer-events: auto;
}

.shoe-category-tile--actionable.is-actions-open .shoe-category-tile__overlay {
  opacity: 1;
  pointer-events: auto;
}

.shoe-category-tile--actionable.is-actions-open {
  z-index: 8;
}

.shoe-category-tile__quick-action {
  position: absolute;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  min-width: 0;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: color-mix(in srgb, var(--erp-ui-surface, #ffffff) 76%, transparent);
  color: var(--erp-ui-text, #0f172a);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.10);
  cursor: pointer;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.14s ease, color 0.14s ease, box-shadow 0.14s ease;
}

.shoe-category-tile__quick-action:hover,
.shoe-category-tile__quick-action:focus-visible {
  background: var(--erp-ui-surface, #ffffff);
  outline: none;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14);
}

.shoe-category-tile__quick-action i,
.shoe-category-tile__quick-action svg,
.shoe-category-tile__quick-action .lucide {
  display: block;
  flex: 0 0 16px;
  width: 16px !important;
  height: 16px !important;
}

.shoe-category-tile__actions {
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 4;
  width: 32px;
  height: 32px;
}

.shoe-category-tile__overlay .shoe-category-tile__actions {
  position: absolute;
  top: 6px;
  right: 6px;
  display: block;
}

.shoe-category-tile__kebab {
  position: static;
}

.shoe-category-tile__actions .erp-dropdown {
  top: calc(100% + 6px);
  right: 0;
}

.shoe-category-tile strong {
  display: -webkit-box;
  max-width: 100%;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: 12px;
  line-height: 1.25;
  text-align: center;
  text-overflow: ellipsis;
}

.shoe-category-tile > span:not(.shoe-category-tile__content):not(.shoe-category-tile__overlay),
.shoe-category-tile__content > span {
  display: -webkit-box;
  max-width: 100%;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: 11px;
  line-height: 1.25;
  text-align: center;
  text-overflow: ellipsis;
}

.shoe-category-tile--add {
  border-style: dashed;
}

.shoe-category-tile--add i,
.shoe-category-tile--add svg,
.shoe-category-tile--add .lucide {
  color: var(--erp-ui-muted, #64748b);
}

.shoe-category-tile .erp-shoe-category-icon--tile {
  width: var(--erp-category-icon-tile-size);
  height: var(--erp-category-icon-tile-size);
  margin-bottom: 8px;
  color: var(--erp-ui-muted, #64748b);
}

.shoe-category-tile .erp-shoe-category-icon--tile svg,
.shoe-category-tile .erp-shoe-category-icon--tile .lucide,
.shoe-category-tile .erp-shoe-category-icon--tile .erp-shoe-category-icon__svg {
  width: 100% !important;
  height: 100% !important;
  margin-bottom: 0;
}

.shoe-category-tile.is-active .erp-shoe-category-icon--tile,
.shoe-category-tile:focus-visible .erp-shoe-category-icon--tile,
.shoe-category-tile:hover .erp-shoe-category-icon--tile {
  color: currentColor;
}

.shoe-category-modal[hidden] {
  display: none !important;
}

.shoe-category-modal {
  position: fixed;
  inset: 0;
  z-index: 1260;
  display: grid;
  place-items: center;
  padding: 20px;
}

.shoe-category-modal__backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(15, 23, 42, .48);
  cursor: pointer;
}

.shoe-category-modal__dialog {
  position: relative;
  width: min(560px, 94vw);
  max-height: min(86vh, 720px);
  transform: none;
}

.shoe-category-modal__dialog .erp-modal__content {
  padding: 14px 16px;
}

.shoe-category-modal .settings-field--wide {
  grid-column: 1 / -1;
}

.shoe-category-modal__delete {
  margin-right: auto;
}

.shoe-category-media-uploader__preview {
  grid-template-columns: minmax(118px, 180px);
}

.shoe-category-media-uploader .media-photo-uploader__tile {
  min-height: 132px;
}

.shoe-category-parent-context {
  display: grid;
  gap: 6px;
  padding: 10px 12px;
  border-radius: var(--erp-ui-radius-sm, 8px);
  background: var(--erp-ui-surface-soft, #f8fafc);
}

.shoe-category-parent-context strong {
  font-size: 14px;
}

@media (max-width: 720px) {
  .shoe-category-tile {
    flex-basis: calc(50% - 4px);
    width: calc(50% - 4px);
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .shoe-category-modal {
    align-items: end;
    padding: 12px;
  }

  .shoe-category-modal__dialog {
    width: 100%;
    max-height: 90vh;
  }
}

.erp-wizard-choice-card__logo {
  display: grid;
  place-items: center;
  width: min(126px, 100%);
  height: 42px;
  margin-bottom: 12px;
}

.erp-wizard-choice-card__logo img {
  display: block;
  width: 100%;
  max-height: 42px;
  object-fit: contain;
}

.erp-wizard-choice-card--logo-only .erp-wizard-choice-card__logo {
  width: min(156px, 100%);
  height: 72px;
  margin-bottom: 0;
}

.erp-wizard-choice-card--logo-only .erp-wizard-choice-card__logo img {
  max-height: 72px;
}

.erp-wizard-choice-card.is-active .erp-wizard-choice-card__logo {
  filter: brightness(0) invert(1);
}

.erp-wizard-choice-card.is-active span {
  color: rgba(255, 255, 255, 0.72);
}

.erp-wizard-choice-card.is-danger {
  border-color: #fecaca;
  background: #fef2f2;
  color: #991b1b;
}

.erp-wizard-choice-card.is-danger:hover,
.erp-wizard-choice-card.is-danger:focus-visible {
  background: #fee2e2;
}

.erp-wizard-choice-card.is-danger i,
.erp-wizard-choice-card.is-danger svg,
.erp-wizard-choice-card.is-danger .lucide,
.erp-wizard-choice-card.is-danger strong {
  color: #991b1b;
  stroke: currentColor;
}

.erp-wizard-choice-card.is-danger span {
  color: #b91c1c;
}

.erp-wizard-choice-card.is-danger.is-disabled,
.erp-wizard-choice-card.is-danger:disabled {
  opacity: 1;
}

.erp-feed-scenario-gate__warning {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin: 0;
}

.erp-feed-scenario-gate__warning[hidden] {
  display: none !important;
}

.erp-feed-checkout-wizard {
  display: grid;
  gap: 12px;
  min-height: calc(100vh - var(--erp-header-h, 56px) - var(--erp-footer-h, 56px) - var(--erp-page-toolbar-h, 64px) - 32px);
  align-content: start;
}

.erp-invoice-feed-checkout-form {
  grid-template-rows: minmax(0, 1fr);
  width: 100%;
  min-width: 0;
}

.erp-invoice-feed-checkout-form > .erp-feed-scenario-gate {
  height: 100%;
  min-height: 0;
}

.erp-invoice-feed-checkout-form .erp-feed-checkout-wizard {
  grid-template-rows: auto auto minmax(0, 1fr);
  width: 100%;
  height: 100%;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  align-content: stretch;
}

.erp-invoice-feed-checkout-form .erp-document-progress {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.erp-invoice-feed-checkout-form .erp-feed-checkout-wizard > .erp-document-step.is-active {
  height: 100%;
  min-height: 0;
  max-height: none;
}

.erp-invoice-feed-checkout-form .erp-feed-checkout-wizard > .erp-document-step.is-active > :not(.erp-document-step__head):not(.erp-document-step__actions) {
  overflow: auto;
  scrollbar-gutter: stable;
  overscroll-behavior: contain;
}

.erp-document-feed-context {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, auto);
  gap: 0;
  overflow: hidden;
  border: 1px solid #d1d5db;
  background: #fff;
}

.erp-document-feed-context__main {
  min-width: 0;
  display: grid;
  gap: 3px;
  padding: 12px 14px;
}

.erp-document-feed-context__main span,
.erp-document-feed-context__main small {
  overflow: hidden;
  color: #64748b;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-feed-context__main > span {
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.erp-document-feed-context__main strong {
  overflow: hidden;
  color: #111827;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-feed-context__actions {
  min-width: 0;
  display: flex;
  align-items: stretch;
  padding: 0;
  border-left: 1px solid #d1d5db;
}

.erp-document-feed-context__actions .erp-segmented {
  width: 100%;
  height: 100%;
  border: 0;
  background: transparent;
}

.erp-document-feed-context__actions .erp-segmented__btn {
  min-height: 100%;
}

.erp-document-progress {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--erp-button-group-border);
  border-radius: var(--erp-button-group-radius);
  background: var(--erp-button-group-bg);
  box-shadow: var(--erp-ui-shadow-sm);
}

.erp-document-progress__item {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  column-gap: 12px;
  min-height: 46px;
  padding: 11px 14px;
  border: 0;
  border-right: 1px solid var(--erp-button-group-divider);
  border-radius: 0;
  background: var(--erp-button-group-bg);
  color: var(--erp-button-group-text);
  text-align: left;
  cursor: default;
}

.erp-document-progress__item:last-child {
  border-right: 0;
}

.erp-document-progress__item span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-text);
  font-size: 12px;
  font-weight: 800;
  flex-shrink: 0;
}

.erp-document-progress__item strong {
  min-width: 0;
  overflow: hidden;
  color: inherit;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-progress__item.is-active {
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.erp-document-progress__item.is-active span {
  background: var(--erp-button-group-active-text);
  color: var(--erp-button-group-active-bg);
}

.erp-document-progress__item.is-complete {
  color: var(--erp-button-group-hover-text);
  cursor: pointer;
}

.erp-document-progress__item.is-complete:hover,
.erp-document-progress__item.is-complete:focus-visible {
  background: var(--erp-button-group-hover-bg);
  outline: none;
}

.erp-document-progress__item.is-complete span {
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.erp-document-progress__item.is-locked {
  color: var(--erp-ui-muted-soft);
}

.erp-document-step {
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-workspace-radius);
  background: var(--erp-ui-surface);
  box-shadow: var(--erp-ui-shadow);
  overflow: hidden;
}

.erp-document-step[hidden] {
  display: none;
}

.erp-document-step.is-active {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  height: var(--erp-document-step-viewport-h);
  min-height: 0;
  max-height: var(--erp-document-step-viewport-h);
}

body:not(.erp-embedded-page) #mainContent:has(.erp-document-wizard) .erp-document-form.erp-document-wizard:not(.erp-account-editor) > .erp-document-step.is-active {
  height: 100%;
  max-height: none;
}

.erp-document-step.is-active > :not(.erp-document-step__head):not(.erp-document-step__actions) {
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
  align-content: start;
}

.erp-document-step.is-active > .erp-document-step__actions {
  align-self: stretch;
}

.erp-document-step__head {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-height: 58px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.erp-document-step__title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.erp-document-step__entry {
  flex: 1 1 auto;
  min-width: 0;
}

.erp-document-step__entry[hidden] {
  display: none;
}

.erp-document-step__entry .erp-field-control {
  height: 46px;
  min-height: 46px;
  border-radius: var(--erp-field-radius);
}

.erp-document-step__entry .erp-field-control input {
  min-height: 44px;
  font-size: 14px;
  font-weight: 800;
}

.erp-document-step__entry .erp-field-control input::placeholder {
  color: var(--erp-ui-muted);
  font-weight: 700;
}

.erp-document-step__entry .erp-suggestions {
  top: calc(100% + 6px);
}

.erp-document-step__index [data-order-items-step-icon] {
  display: none;
  width: var(--erp-toolbar-btn-icon-size);
  height: var(--erp-toolbar-btn-icon-size);
}

.erp-document-step--items.is-entry-active .erp-document-step__index [data-order-items-step-number] {
  display: none;
}

.erp-document-step--items.is-entry-active .erp-document-step__index [data-order-items-step-icon] {
  display: block;
}

.erp-document-step--items.is-entry-active .erp-document-step__title {
  align-items: stretch;
}

.erp-document-step--items.is-entry-active [data-order-items-title] {
  display: none;
}

.erp-document-step--items.is-entry-active > .erp-document-step__head .erp-document-step__head-actions {
  display: none;
}

.erp-document-step__title > div:first-child {
  min-width: 0;
}

.erp-document-step__head-actions {
  display: inline-flex;
  align-items: stretch;
  justify-content: flex-end;
  flex-shrink: 0;
  align-self: stretch;
  min-height: 100%;
  margin: -10px -12px -10px 0;
  border-left: 1px solid #d1d5db;
}

.erp-document-step__head-actions .erp-icon-btn,
.erp-document-step__head-actions .erp-icon-btn--table-action {
  width: 46px;
  min-width: 46px;
  height: auto;
  min-height: 58px;
  border: 0;
  border-radius: 0;
}

.erp-document-step__head-actions .erp-icon-btn + .erp-icon-btn,
.erp-document-step__head-actions .erp-icon-btn + .erp-icon-btn--table-action,
.erp-document-step__head-actions .erp-icon-btn--table-action + .erp-icon-btn,
.erp-document-step__head-actions .erp-icon-btn--table-action + .erp-icon-btn--table-action {
  border-left: 1px solid var(--erp-button-group-divider);
}

.erp-document-step__head-actions .erp-icon-btn:hover,
.erp-document-step__head-actions .erp-icon-btn:focus-visible,
.erp-document-step__head-actions .erp-icon-btn--table-action:hover,
.erp-document-step__head-actions .erp-icon-btn--table-action:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-document-step__pending {
  display: none;
  align-items: center;
  justify-content: flex-end;
  min-width: 22px;
}

.erp-document-step__pending.has-pending-action {
  display: inline-flex;
}

.erp-document-step__pending .erp-action-spinner {
  margin: 0;
}

.erp-document-step__index {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
  font-size: 13px;
  font-weight: 800;
}

.erp-document-step__head h2,
.erp-document-step__head p {
  margin: 0;
}

.erp-document-step__head h2 {
  color: #111827;
  font-size: 14px;
  line-height: 1.25;
}

.erp-document-step__head p {
  margin-top: 3px;
  color: #64748b;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
}

.erp-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  white-space: nowrap !important;
}

.erp-document-step__grid {
  padding: 12px;
}

.erp-invoice-product-layout {
  display: grid;
  grid-template-columns: minmax(320px, 420px) minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 12px;
}

.erp-invoice-product-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-content: start;
  min-width: 0;
}

.erp-invoice-product-fields .erp-field--wide {
  grid-column: 1 / -1;
}

.erp-invoice-product-media {
  align-self: start;
  min-width: 0;
}

.erp-invoice-product-media .invoice-photo-grid--product {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.erp-invoice-product-photo-main {
  position: relative;
  display: grid;
  place-items: center;
  min-height: clamp(260px, 34vh, 420px);
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border: 0;
  border-radius: 8px;
  background: transparent;
}

.erp-invoice-product-photo-main img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: center;
  border: 0;
  outline: 0;
  background: transparent;
  box-shadow: none;
}

.erp-invoice-product-photo-main.is-empty {
  background: #f8fafc;
}

.erp-invoice-product-media .invoice-photo-thumbs {
  margin-top: 0;
}

.erp-invoice-product-media .invoice-photo-thumbs .invoice-photo-tile {
  flex: 0 0 auto;
  width: 68px;
  height: 68px;
  min-height: 0;
  border-radius: 8px;
}

.erp-invoice-product-media .invoice-photo-thumbs .invoice-photo-tile img {
  min-height: 0;
  object-fit: contain;
  object-position: center;
  background: transparent;
}

.erp-invoice-product-media .invoice-photo-thumbs .invoice-photo-tile:not(.invoice-photo-tile--add) {
  border: 0;
  background: transparent;
  box-shadow: none;
}

.erp-invoice-product-media .invoice-photo-thumb-add {
  order: -1;
}

.erp-document-groups {
  display: grid;
  gap: 0;
}

.erp-document-group {
  border-bottom: 1px solid #e5e7eb;
}

.erp-document-group:last-child {
  border-bottom: 0;
}

.erp-document-group .erp-section-head {
  min-height: 42px;
  margin: 0;
  padding: 8px 12px 0;
}

.erp-document-group .erp-section-head__main {
  display: grid;
  gap: 2px;
  align-items: start;
}

.erp-document-group .erp-section-head__main > span:last-child {
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
}

.erp-document-disclosure {
  border-top: 1px solid #e5e7eb;
}

.erp-document-disclosure summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 42px;
  padding: 0 12px;
  color: #334155;
  font-size: 13px;
  font-weight: 800;
  list-style: none;
  cursor: pointer;
  user-select: none;
}

.erp-document-disclosure summary::-webkit-details-marker {
  display: none;
}

.erp-document-disclosure summary:hover,
.erp-document-disclosure summary:focus-visible {
  background: #f8fafc;
  outline: none;
}

.erp-document-disclosure summary i,
.erp-document-disclosure summary svg,
.erp-document-disclosure summary .lucide {
  width: var(--erp-toolbar-btn-icon-size) !important;
  height: var(--erp-toolbar-btn-icon-size) !important;
  color: #64748b;
  transition: transform 0.16s ease, color 0.16s ease;
}

.erp-document-disclosure[open] summary i,
.erp-document-disclosure[open] summary svg,
.erp-document-disclosure[open] summary .lucide {
  color: #111827;
  transform: rotate(180deg);
}

.erp-document-step--prices .erp-document-step__grid {
  padding: 0;
}

.erp-document-step__grid--media {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.erp-price-panel {
  padding: 12px;
  background: #fff;
}

.erp-inline-help {
  width: 16px;
  height: 16px;
  border: 0;
  border-radius: 0;
  padding: 0;
  color: #64748b;
  background: transparent;
  cursor: help;
  transition: color 0.15s ease;
  position: relative;
  text-align: center;
}

.erp-inline-help:hover,
.erp-inline-help:focus-visible {
  color: #111827;
  background: transparent;
}

.erp-inline-help .lucide,
.erp-inline-help i,
.erp-inline-help svg {
  width: 16px !important;
  height: 16px !important;
}

.erp-inline-help {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.erp-inline-help:focus-visible {
  outline: 2px solid #bfdbfe;
  outline-offset: 1px;
}

.erp-price-columns {
  display: grid;
  gap: 10px;
  margin: 9px 0 8px;
  padding: 0 0 8px;
  border-bottom: 1px solid #e5e7eb;
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}

.erp-price-columns--general {
  grid-template-columns: minmax(140px, 1.4fr) repeat(4, minmax(0, 1fr));
}

.erp-price-columns--groups {
  grid-template-columns: minmax(140px, 1.4fr) repeat(4, minmax(0, 1fr));
}

.erp-price-columns--sale,
.erp-price-row--sale {
  grid-template-columns: minmax(140px, 1.4fr) repeat(3, minmax(0, 1fr));
}

.erp-price-grid {
  display: block;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.erp-price-grid--common {
  grid-template-columns: minmax(140px, 1.4fr) repeat(4, minmax(0, 1fr));
}

.erp-price-grid .erp-field--readonly input {
  border: 1px dashed #cbd5e1;
  background: #f8fafc;
  color: #64748b;
}

.erp-price-grid .erp-field--readonly input:focus {
  outline: none;
}

.erp-price-grid .erp-field input {
  border-radius: 8px;
  min-height: 36px;
}

@media (max-width: 1200px) {
  .erp-price-columns--general,
  .erp-price-columns--groups,
  .erp-price-columns--sale {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .erp-form-grid--two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.media-photo-uploader,
.invoice-photo-uploader {
  gap: 8px;
}

.media-photo-uploader__grid,
.invoice-photo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(118px, 1fr));
  gap: 8px;
  margin-top: 2px;
}

.media-photo-uploader__tile,
.invoice-photo-tile {
  position: relative;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 4px;
  min-height: 118px;
  overflow: hidden;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  background: #f8fafc;
  color: #334155;
  text-align: center;
}

.media-photo-uploader__tile--add,
.invoice-photo-tile--add {
  cursor: pointer;
}

.media-photo-uploader__tile--add:hover,
.media-photo-uploader__tile--add:focus-visible,
.invoice-photo-tile--add:hover,
.invoice-photo-tile--add:focus-visible {
  background: #e5e7eb;
  color: #111827;
  outline: none;
}

.media-photo-uploader__tile img,
.media-photo-uploader__tile video,
.invoice-photo-tile img,
.invoice-photo-tile video {
  width: 100%;
  height: 100%;
  min-height: 118px;
  object-fit: cover;
  object-position: center;
  border: 0;
  outline: 0;
  box-shadow: none;
}

.media-photo-uploader__tile:not(.media-photo-uploader__tile--add),
.invoice-photo-tile:not(.invoice-photo-tile--add) {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

.media-photo-uploader__tile i,
.media-photo-uploader__tile svg,
.media-photo-uploader__tile .lucide,
.invoice-photo-tile i,
.invoice-photo-tile svg,
.invoice-photo-tile .lucide {
  width: 20px;
  height: 20px;
}

.media-photo-uploader__tile img,
.media-photo-uploader__tile video,
.invoice-photo-tile img,
.invoice-photo-tile video {
  border-radius: inherit;
}

.media-photo-uploader__video-badge {
  z-index: 1;
}

.erp-product-thumb__delete-form {
  position: absolute;
  z-index: 2;
  top: var(--erp-ui-space-1, 4px);
  right: var(--erp-ui-space-1, 4px);
  margin: 0;
}

.media-photo-uploader__tile strong,
.invoice-photo-tile strong {
  color: inherit;
  font-size: 13px;
  font-weight: 800;
}

.media-photo-uploader__tile span,
.invoice-photo-tile span {
  color: #64748b;
  font-size: 11px;
  font-weight: 700;
}

.erp-invoice-document-uploader .media-photo-uploader__grid {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

.erp-invoice-document-uploader .media-photo-uploader__tile--add {
  grid-column: 1 / -1;
}

.media-photo-uploader__tile--document {
  grid-template-columns: 40px minmax(0, 1fr);
  place-items: center stretch;
  align-content: center;
  min-height: 92px;
  padding: 14px 42px 14px 14px;
  text-align: left;
}

.media-photo-uploader__document-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: var(--erp-ui-surface-muted, #f1f5f9);
  color: var(--erp-ui-muted, #64748b);
}

.media-photo-uploader__document-icon i,
.media-photo-uploader__document-icon svg,
.media-photo-uploader__document-icon .lucide {
  width: 20px;
  height: 20px;
}

.media-photo-uploader__document-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.media-photo-uploader__document-copy strong {
  min-width: 0;
  overflow: hidden;
  color: var(--erp-ui-text, #111827);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.media-photo-uploader__document-copy small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 800;
}

.media-photo-uploader-modal,
.invoice-photo-modal {
  display: grid;
  gap: 12px;
  padding: 14px 16px;
}

.media-photo-uploader-modal__mode-panels {
  display: grid;
  gap: 8px;
}

.media-photo-uploader-modal__mode-panel {
  display: none;
}

.media-photo-uploader-modal__mode-panel.is-active {
  display: block;
}

.media-photo-uploader-modal__dropzone {
  min-height: 132px;
  padding: 16px 14px;
  border: 2px dashed #cbd5e1;
  border-radius: 10px;
  background: #fafafa;
  color: #64748b;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 6px;
  text-align: center;
  cursor: pointer;
  outline: none;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}

.media-photo-uploader-modal__dropzone:hover,
.media-photo-uploader-modal__dropzone:focus-visible {
  border-color: #9ca3af;
  background: #f3f4f6;
}

.media-photo-uploader-modal__dropzone.is-dragover {
  border-color: #334155;
  background: #f1f5f9;
}

.media-photo-uploader-modal__dropzone .erp-modal__action-icon {
  color: #64748b;
  display: inline-flex;
}

.media-photo-uploader-modal__dropzone .erp-modal__action-icon i,
.media-photo-uploader-modal__dropzone .erp-modal__action-icon svg,
.media-photo-uploader-modal__dropzone .erp-modal__action-icon .lucide {
  width: 24px;
  height: 24px;
}

.media-photo-uploader-modal__dropzone p {
  margin: 0;
  color: #64748b;
  font-size: 13px;
  line-height: 1.25;
}

.media-photo-uploader-modal__dropzone small {
  color: #94a3b8;
  font-size: 11px;
}

.media-photo-uploader-modal textarea,
.invoice-photo-modal textarea {
  width: 100%;
  min-height: 118px;
  resize: vertical;
  border: 1px solid #d1d5db;
  padding: 10px 12px;
  color: #111827;
}

.media-photo-uploader-modal__preview,
.invoice-photo-modal__preview {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(118px, 1fr));
  gap: 8px;
}

.media-photo-uploader-modal__url-row,
.invoice-photo-modal__url-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px;
  gap: 0;
  align-items: center;
  overflow: hidden;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  background: #fff;
}

.media-photo-uploader-modal__url-row-input,
.invoice-photo-modal__url-row-input {
  width: 100%;
  min-height: 42px;
  border: 0;
  border-radius: 0;
  padding: 0 12px;
  background: transparent;
  color: #111827;
  outline: none;
}

.media-photo-uploader-modal__url-row-input:focus,
.invoice-photo-modal__url-row-input:focus {
  outline: none;
}

.media-photo-uploader-modal__url-row:focus-within,
.invoice-photo-modal__url-row:focus-within {
  border-color: #94a3b8;
  box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.media-photo-uploader-modal__url-row-action,
.invoice-photo-modal__url-row-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  min-width: 42px;
  min-height: 42px;
  padding: 0;
  border: 0;
  border-left: 1px solid #d1d5db;
  border-radius: 0;
  background: transparent;
  color: #111827;
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
  appearance: none;
}

.media-photo-uploader-modal__url-row-action:hover,
.media-photo-uploader-modal__url-row-action:focus-visible,
.invoice-photo-modal__url-row-action:hover,
.invoice-photo-modal__url-row-action:focus-visible {
  background: #e5e7eb;
  outline: none;
}

.media-photo-uploader-modal__url-list,
.invoice-photo-modal__url-list {
  display: grid;
  gap: 8px;
}

.media-photo-uploader-modal__url-item,
.invoice-photo-modal__url-item {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: center;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  padding: 9px 10px;
  background: #fff;
}

.media-photo-uploader-modal__url-link,
.invoice-photo-modal__url-link {
  min-width: 0;
  overflow: hidden;
  color: #334155;
  text-decoration: none;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.media-photo-uploader-modal__url-link:hover,
.media-photo-uploader-modal__url-link:focus-visible,
.invoice-photo-modal__url-link:hover,
.invoice-photo-modal__url-link:focus-visible {
  color: #111827;
  outline: none;
  text-decoration: underline;
}

.media-photo-uploader-modal__hint,
.invoice-photo-modal__hint {
  margin: 0;
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
}

.invoice-item-added-modal {
  display: grid;
  gap: 8px;
}

.invoice-item-added-modal p {
  margin: 0;
  color: #64748b;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.45;
}

.erp-document-step__actions {
  display: flex;
  align-items: stretch;
  justify-content: flex-end;
  gap: 0;
  min-height: 46px;
  padding: 0;
  border-top: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.erp-document-step__actions .erp-step-action-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  min-width: 46px;
  height: 46px;
  padding: 0;
  border: 0;
  border-left: 1px solid var(--erp-button-group-divider);
  border-radius: 0;
  background: var(--erp-button-group-bg);
  color: var(--erp-button-group-text);
}

.erp-document-step__actions .erp-step-action-btn:hover,
.erp-document-step__actions .erp-step-action-btn:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
}

.erp-document-step__actions .erp-step-action-btn .lucide,
.erp-document-step__actions .erp-step-action-btn > i,
.erp-document-step__actions .erp-step-action-btn > svg {
  width: var(--erp-toolbar-btn-icon-size) !important;
  height: var(--erp-toolbar-btn-icon-size) !important;
  stroke-width: 2.25;
}

.erp-size-entry-list {
  --erp-size-entry-cols: 72px minmax(150px, 1.25fr) minmax(104px, .9fr) minmax(104px, .9fr) 150px;
  --erp-size-entry-min-width: 680px;
  --erp-size-entry-row-height: 48px;
  --erp-size-entry-head-height: 42px;
  --erp-size-entry-head-bg: var(--erp-ui-surface-soft, #f1f5f9);
  display: block;
  overflow: auto;
  background: var(--erp-ui-surface, #fff);
}

.erp-size-entry-head {
  position: sticky;
  top: 0;
  z-index: 2;
  display: grid;
  grid-template-columns: var(--erp-size-entry-cols);
  align-items: center;
  min-width: var(--erp-size-entry-min-width);
  min-height: var(--erp-size-entry-head-height);
  background: var(--erp-size-entry-head-bg);
  color: var(--erp-ui-text-soft, #334155);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.1;
}

.erp-size-entry-head span {
  overflow: hidden;
  min-width: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-size-entry-head__label {
  padding: 0 10px;
  text-align: center;
}

.erp-size-entry-head__measurements {
  display: contents;
}

.erp-size-entry-head__measurements span {
  padding: 0 10px;
  text-align: center;
}

.erp-size-entry-head__quantity {
  padding: 0 10px;
  text-align: center;
}

.erp-size-entry {
  position: relative;
  display: grid;
  grid-template-columns: var(--erp-size-entry-cols);
  align-items: center;
  min-width: var(--erp-size-entry-min-width);
  min-height: var(--erp-size-entry-row-height);
  background: var(--erp-ui-surface, #fff);
  color: var(--erp-ui-text, #111827);
}

.erp-size-entry::after {
  content: "";
  position: absolute;
  right: 12px;
  bottom: 0;
  left: 12px;
  height: 1px;
  background: var(--erp-ui-border-soft, #e5e7eb);
  pointer-events: none;
}

.erp-size-entry:last-child::after {
  content: none;
}

.erp-size-entry__label {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: var(--erp-size-entry-row-height);
  padding: 0 10px;
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-size-entry__label span {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 850;
  line-height: 1.1;
}

.erp-size-entry__label strong {
  color: var(--erp-ui-text, #111827);
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
}

.erp-size-entry__quantity {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: var(--erp-size-entry-row-height);
  padding: 0 10px;
}

.erp-size-entry__quantity > span {
  color: var(--erp-ui-muted, #64748b);
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

.erp-size-entry__quantity .erp-field-control {
  min-height: 38px;
}

.erp-size-entry__measurements {
  display: contents;
}

.erp-size-measure-field {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: var(--erp-size-entry-row-height);
  padding: 0 10px;
  color: var(--erp-ui-text, #111827);
}

.erp-size-measure-field + .erp-size-measure-field {
  border-left: 0;
}

.erp-size-measure-field span {
  overflow: hidden;
  color: var(--erp-ui-muted, #64748b);
  font-size: 10px;
  font-weight: 900;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-size-measure-field input {
  appearance: none;
  width: 100%;
  min-width: 0;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 850;
  line-height: 32px;
  outline: none;
  text-align: center;
}

.erp-size-measure-field input:focus {
  box-shadow: none;
}

.erp-size-measure-field input::placeholder {
  color: var(--erp-ui-muted-soft, #94a3b8);
  opacity: 1;
}

.erp-size-measure-field--readonly input {
  color: var(--erp-ui-muted, #64748b);
}

.erp-size-measure-field input::-webkit-outer-spin-button,
.erp-size-measure-field input::-webkit-inner-spin-button {
  margin: 0;
  appearance: none;
}

.erp-price-groups {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 0;
}

.erp-price-groups[hidden] {
  display: none;
}

.erp-price-row {
  display: grid;
  grid-template-columns: minmax(140px, 1.4fr) repeat(4, minmax(0, 1fr));
  gap: 10px;
  align-items: start;
}

[data-invoice-age-row][hidden],
[data-invoice-general-price-field][hidden] {
  display: none;
}

[data-invoice-general-price-panel][hidden],
[data-invoice-age-prices][hidden],
[data-invoice-general-price-row][hidden] {
  display: none !important;
}

.erp-price-row__field {
  display: flex;
  flex-direction: column;
  color: #64748b;
  font-size: 11px;
  font-weight: 700;
}

.erp-price-row__group {
  display: flex;
  flex-direction: column;
  color: #111827;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.25;
}

.erp-price-groups .erp-field--readonly input {
  border: 1px dashed #cbd5e1;
  background: #f8fafc;
  color: #64748b;
}

.erp-price-groups .erp-field--readonly input:focus {
  outline: none;
}

.erp-document-step--prices .erp-price-panel {
  --erp-price-row-cols: minmax(150px, 1.2fr) repeat(4, minmax(104px, 1fr));
  --erp-price-row-min-width: 680px;
  --erp-price-row-height: 48px;
  --erp-price-head-height: 42px;
  --erp-price-head-bg: var(--erp-ui-surface-soft, #f1f5f9);
  padding: 0;
  overflow: auto;
  background: var(--erp-ui-surface, #fff);
}

.erp-document-step--prices .erp-price-columns {
  position: sticky;
  top: 0;
  z-index: 2;
  align-items: center;
  gap: 0;
  min-height: var(--erp-price-head-height);
  margin: 0;
  padding: 0;
  border-bottom: 0;
  background: var(--erp-price-head-bg);
  color: var(--erp-ui-text-soft, #334155);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.1;
}

.erp-document-step--prices .erp-price-columns--general,
.erp-document-step--prices .erp-price-columns--groups {
  grid-template-columns: var(--erp-price-row-cols);
  min-width: var(--erp-price-row-min-width);
}

.erp-document-step--prices .erp-price-columns span {
  overflow: hidden;
  min-width: 0;
  padding: 0 10px;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-step--prices .erp-price-grid,
.erp-document-step--prices .erp-price-groups {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  width: 100%;
  min-width: var(--erp-price-row-min-width);
}

.erp-document-step--prices .erp-price-row {
  position: relative;
  display: grid;
  grid-template-columns: var(--erp-price-row-cols);
  align-items: center;
  gap: 0;
  width: 100%;
  min-width: var(--erp-price-row-min-width);
  min-height: var(--erp-price-row-height);
  background: var(--erp-ui-surface, #fff);
}

.erp-document-step--prices .erp-price-row::after {
  content: "";
  position: absolute;
  right: 12px;
  bottom: 0;
  left: 12px;
  height: 1px;
  background: var(--erp-ui-border-soft, #e5e7eb);
  pointer-events: none;
}

.erp-document-step--prices .erp-price-row:last-child::after {
  content: none;
}

.erp-document-step--prices .erp-price-row__group,
.erp-document-step--prices .erp-price-row__field {
  display: flex;
  align-items: center;
  gap: 0;
  justify-content: center;
  min-width: 0;
  min-height: var(--erp-price-row-height);
  padding: 0 10px;
}

.erp-document-step--prices .erp-price-row__group {
  flex-direction: row;
  align-items: center;
  grid-column: auto;
  justify-content: flex-start;
  color: var(--erp-ui-text, #111827);
  font-size: 15px;
  font-weight: 850;
  line-height: 1;
  text-align: left;
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-document-step--prices .erp-price-row__field input {
  appearance: none;
  width: 100%;
  min-width: 0;
  height: 32px;
  min-height: 32px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 850;
  line-height: 32px;
  text-align: center;
  outline: none;
}

.erp-document-step--prices .erp-price-row__group strong {
  display: block;
  overflow: hidden;
  min-width: 0;
  max-width: 100%;
  color: inherit;
  font: inherit;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-step--prices .erp-price-row__field input:focus {
  border-color: transparent;
  box-shadow: none;
}

.erp-document-step--prices .erp-price-row__field input::-webkit-outer-spin-button,
.erp-document-step--prices .erp-price-row__field input::-webkit-inner-spin-button {
  margin: 0;
  appearance: none;
}

.erp-table-meta {
  margin-top: 3px;
  color: #64748b;
  font-size: 12px;
  line-height: 1.25;
}

@media (max-width: 900px) {
  .erp-form-grid,
  .erp-invoice-filters,
  .erp-kpis,
  .erp-form-grid--two,
  .erp-detail-grid,
  .erp-info-strip,
  .erp-filters {
    grid-template-columns: 1fr;
  }

  .erp-info-strip__item {
    border-left: 0;
    border-top: 1px solid #e5e7eb;
  }

  .erp-info-strip__item:first-child {
    border-top: 0;
  }

  .erp-form-grid--two {
    gap: 12px;
  }

  .erp-field--actions {
    justify-content: stretch;
  }

  .erp-field--actions .erp-btn {
    width: 100%;
  }

  .erp-kpis,
  .erp-kpis--three {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .erp-kpis .detail-card + .detail-card {
    border-left: 0;
  }

  .erp-kpis:not(.erp-kpis--three) .detail-card:nth-child(2n) {
    border-left: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  }

  .erp-kpis:not(.erp-kpis--three) .detail-card:nth-child(n + 3) {
    border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  }

  .erp-document-step__grid--media {
    grid-template-columns: 1fr;
  }

  .erp-document-progress {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
  }

  .erp-document-progress__item {
    flex: 1 0 148px;
    border-bottom: 0;
  }

  .erp-document-progress__item:nth-child(2n) {
    border-right: 1px solid var(--erp-button-group-divider);
  }

  .erp-document-progress__item:last-child {
    border-right: 0;
  }

  .erp-document-step__actions {
    justify-content: flex-end;
  }

  .erp-document-step__actions .erp-btn {
    flex: 0 0 46px;
  }

  .erp-document-step__title {
    align-items: flex-start;
    flex-direction: column;
  }

  .erp-document-step__head-actions {
    width: 100%;
    justify-content: flex-start;
  }

  .erp-document-step__head-actions .erp-segmented {
    width: 100%;
  }

  .erp-document-step__head-actions .erp-segmented__btn {
    flex: 1 1 0;
  }

  .erp-price-row {
    grid-template-columns: 1fr;
  }

  .erp-invoice-product-layout,
  .erp-invoice-product-fields {
    grid-template-columns: 1fr;
  }

  .erp-invoice-product-media .invoice-photo-tile--add {
    min-height: 240px;
  }

  .erp-price-columns--general,
  .erp-price-columns--groups,
  .erp-price-columns--sale,
  .erp-price-row--sale {
    grid-template-columns: 1fr;
  }

  .erp-size-entry {
    grid-template-columns: var(--erp-size-entry-cols);
  }

  .erp-size-entry-head {
    grid-template-columns: var(--erp-size-entry-cols);
  }

  .erp-size-entry-head__measurements {
    display: contents;
  }

  .erp-size-entry__measurements {
    display: contents;
  }

  .erp-size-entry__quantity {
    border-left: 0;
  }

  .erp-price-row__group {
    grid-column: 1 / -1;
  }

  .erp-record-summary {
    align-items: stretch;
    flex-direction: column;
  }

  .erp-record-summary__right {
    align-items: stretch;
    text-align: left;
  }

  .erp-record-summary__side {
    justify-content: space-between;
  }

  .erp-record-summary__actions {
    justify-content: flex-start;
  }

  .invoice-form-context {
    align-items: stretch;
    flex-direction: column;
  }

  .invoice-form-context__link {
    justify-content: center;
  }
}

@media (max-width: 560px) {
  .erp-kpis,
  .erp-kpis--three {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 640px) {
  .erp-document-step--prices .erp-price-columns--general,
  .erp-document-step--prices .erp-price-columns--groups,
  .erp-document-step--prices .erp-price-row {
    grid-template-columns: var(--erp-price-row-cols);
  }

  .erp-document-step--prices .erp-price-columns span,
  .erp-document-step--prices .erp-price-row__group,
  .erp-document-step--prices .erp-price-row__field {
    padding-right: 8px;
    padding-left: 8px;
  }

  .erp-size-entry-head {
    grid-template-columns: var(--erp-size-entry-cols);
  }

  .erp-size-entry-head__label {
    grid-column: auto;
    grid-row: auto;
  }

  .erp-size-entry-head__quantity {
    grid-column: auto;
    grid-row: auto;
    width: auto;
    justify-self: auto;
    padding: 0 8px;
  }

  .erp-size-entry-head__measurements {
    display: contents;
  }

  .erp-size-entry {
    grid-template-columns: var(--erp-size-entry-cols);
  }

  .erp-size-entry__measurements {
    display: contents;
  }

  .erp-size-entry__quantity {
    grid-column: auto;
    grid-row: auto;
    justify-content: center;
    padding-right: 8px;
  }

  .erp-size-entry__quantity .erp-field-control {
    max-width: none;
  }

  .erp-size-measure-field {
    padding: 0 8px;
  }
}

.erp-comment-panel {
  position: fixed;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  pointer-events: none;
  z-index: var(--erp-layer-modal-child);
}

.erp-comment-panel__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.24);
  opacity: 0;
  transition: opacity 0.2s ease;
  pointer-events: none;
}

.erp-comment-panel__sheet {
  position: relative;
  width: min(560px, 100%);
  max-height: min(720px, calc(100vh - 48px));
  background: var(--erp-ui-surface, #fff);
  border: 1px solid var(--erp-ui-border-soft, #e2e8f0);
  border-radius: var(--erp-modal-radius);
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.26);
  transform: translateY(12px) scale(.98);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  pointer-events: auto;
  overflow: hidden;
}

.erp-comment-panel--open {
  pointer-events: auto;
}

.erp-comment-panel--open .erp-comment-panel__backdrop {
  opacity: 1;
  pointer-events: auto;
}

.erp-comment-panel--open .erp-comment-panel__sheet {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.erp-comment-panel__header {
  min-height: 66px;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e2e8f0);
  background: var(--erp-ui-surface, #fff);
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 12px 12px 14px;
}

.erp-comment-panel__media {
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 12px;
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-ui-ink, #0f172a);
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
}

.erp-comment-panel__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-comment-panel__media-fallback {
  width: 100%;
  height: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.erp-comment-panel__media-fallback[hidden] {
  display: none;
}

.erp-comment-panel__media-fallback i,
.erp-comment-panel__media-fallback svg,
.erp-comment-panel__media-fallback .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-comment-panel__title {
  margin: 0;
  color: #111827;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 800;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.erp-comment-panel__header-title {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  min-height: 34px;
  justify-content: center;
  flex: 1 1 auto;
}

.erp-comment-panel__subtitle {
  color: #64748b;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  white-space: nowrap;
}

.erp-comment-panel__close {
  flex: 0 0 auto;
  margin: 0 0 0 auto;
  border: 0;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: transparent;
  color: #334155;
}

.erp-comment-panel__close:hover,
.erp-comment-panel__close:focus-visible {
  background: #f1f5f9;
  color: #0f172a;
}

.erp-comment-panel__close i,
.erp-comment-panel__close svg,
.erp-comment-panel__close .lucide {
  width: 16px !important;
  height: 16px !important;
}

.erp-comment-panel__list {
  min-height: 0;
  overflow: auto;
  padding: 0 14px;
  display: grid;
  align-content: start;
  gap: 0;
}

.erp-comment-panel__empty {
  margin: 0;
  padding: 34px 12px;
  color: var(--erp-ui-muted, #64748b);
  font-size: 13px;
  font-weight: 700;
  text-align: center;
}

.erp-comment-panel__loading {
  min-height: 180px;
  display: grid;
  place-items: center;
}

.erp-comment-item {
  position: relative;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: start;
  column-gap: 8px;
  row-gap: 8px;
  border: 0;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e2e8f0);
  background: #fff;
  border-radius: 0;
  margin: 0 -14px;
  padding: 10px 14px;
}

.erp-comment-item:last-child {
  border-bottom: 0;
}

.erp-comment-item.is-focused {
  border-color: var(--erp-ui-accent, #2563eb);
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.12);
}

.erp-lightbox-comment.is-focused {
  border-color: var(--erp-ui-accent, #2563eb);
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.12);
}

.erp-comment-item__avatar {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 999px;
  background: var(--erp-ui-surface-soft, #eef2f7);
  color: var(--erp-ui-ink, #0f172a);
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
}

.erp-comment-item__avatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-comment-item__content {
  min-width: 0;
  display: grid;
  gap: 7px;
}

.erp-comment-item__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  color: #0f172a;
  min-height: 32px;
}

.erp-comment-item__identity {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 2px;
}

.erp-comment-item__user {
  color: #0f172a;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-comment-item__avatar[data-user-profile-id],
.erp-comment-item__user[data-user-profile-id],
.erp-lightbox-comment__liked-avatar[data-user-profile-id] {
  cursor: pointer;
}

.erp-comment-item__time {
  color: #64748b;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.2;
  white-space: nowrap;
}

.erp-comment-item__menu-wrap {
  flex: 0 0 auto;
}

.erp-comment-item__menu-button {
  width: 32px;
  min-width: 32px;
  height: 32px;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: var(--erp-ui-radius-pill);
  background: transparent;
  color: var(--erp-ui-muted, #64748b);
  cursor: pointer;
  transition: background-color .14s ease, color .14s ease;
}

.erp-comment-item__menu-button:hover,
.erp-comment-item__menu-button:focus-visible,
.erp-comment-item__menu-button[aria-expanded="true"] {
  background: var(--erp-ui-surface-muted, #f1f5f9);
  color: var(--erp-ui-ink, #0f172a);
  outline: none;
}

.erp-comment-item__menu-button i,
.erp-comment-item__menu-button svg,
.erp-comment-item__menu-button .lucide {
  width: 18px !important;
  height: 18px !important;
  flex-shrink: 0;
}

.erp-comment-item__text {
  grid-column: 1 / -1;
  margin: 0;
  color: #1f2937;
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.35;
}

.erp-comment-item__actions {
  grid-column: 1 / -1;
  margin-top: 0;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  width: auto;
  justify-self: end;
  min-height: 30px;
  white-space: nowrap;
}

.erp-comment-item__action {
  flex: 0 0 auto;
  min-width: 30px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--erp-ui-muted, #64748b);
  padding: 0 8px;
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1;
  cursor: pointer;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.erp-comment-item__action i,
.erp-comment-item__action svg,
.erp-comment-item__action .lucide {
  width: 14px !important;
  height: 14px !important;
}

.erp-comment-item__action:hover,
.erp-comment-item__action:focus-visible {
  background: var(--erp-ui-surface-muted, #f1f5f9);
  color: var(--erp-ui-ink, #0f172a);
  outline: none;
}

.erp-comment-item__action.is-active {
  background: rgba(225, 29, 72, .08);
  color: #e11d48;
}

.erp-comment-panel__composer {
  position: sticky;
  bottom: 0;
  z-index: 3;
  border-top: 1px solid var(--erp-ui-border-soft, #e2e8f0);
  background: var(--erp-ui-surface, #fff);
  padding: 12px 14px;
}

.erp-comment-panel__compose-bar {
  position: relative;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 38px;
  align-items: end;
  min-height: 38px;
  overflow: visible;
  border: 1px solid var(--erp-ui-border-soft, #d1d5db);
  background: var(--erp-ui-surface, #fff);
}

.erp-comment-panel__field {
  min-width: 0;
  display: block;
}

.erp-comment-panel__emoji-wrap {
  position: relative;
  min-width: 0;
}

.erp-comment-panel__icon-btn {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #475569;
  cursor: pointer;
}

.erp-comment-panel__icon-btn:hover,
.erp-comment-panel__icon-btn:focus-visible,
.erp-comment-panel__icon-btn.is-active {
  background: var(--erp-ui-surface-muted, #f1f5f9);
  color: var(--erp-ui-ink, #0f172a);
  outline: none;
}

.erp-comment-panel__send-btn {
  border-left: 1px solid var(--erp-ui-border-soft, #e2e8f0);
  color: var(--erp-ui-ink, #111827);
}

.erp-comment-panel__icon-btn i,
.erp-comment-panel__icon-btn svg,
.erp-comment-panel__icon-btn .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-comment-panel__textarea {
  width: 100%;
  min-height: 38px;
  max-height: 140px;
  resize: none;
  border: 0;
  border-left: 1px solid var(--erp-ui-border-soft, #e2e8f0);
  background: transparent;
  color: var(--erp-ui-ink, #0f172a);
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  line-height: 20px;
  padding: 9px 12px;
  outline: 0;
}

.erp-comment-panel__textarea::placeholder {
  color: var(--erp-ui-muted, #64748b);
}

.erp-comment-panel__textarea:focus {
  box-shadow: none;
}

@media (max-width: 900px) {
  body.erp-comment-panel-open {
    overflow: hidden;
  }

  .erp-comment-panel {
    display: block;
    padding: 0;
  }

  .erp-comment-panel__backdrop {
    background: rgba(15, 23, 42, .36);
  }

  .erp-comment-panel__sheet {
    position: fixed;
    inset: auto 0 0;
    width: 100%;
    height: min(82dvh, 720px);
    max-height: calc(100dvh - var(--erp-ui-space-2, 8px));
    border-bottom: 0;
    border-radius: var(--erp-ui-radius-lg, 20px) var(--erp-ui-radius-lg, 20px) 0 0;
    box-shadow: var(--erp-ui-shadow-lg);
    opacity: 1;
    transform: translateY(100%);
    transition: transform var(--erp-ui-transition, 180ms ease);
  }

  .erp-comment-panel__sheet::before {
    content: "";
    position: absolute;
    top: var(--erp-ui-space-2, 8px);
    left: 50%;
    z-index: 4;
    width: 40px;
    height: 4px;
    border-radius: var(--erp-ui-radius-pill);
    background: var(--erp-ui-border);
    transform: translateX(-50%);
    pointer-events: none;
  }

  .erp-comment-panel--open .erp-comment-panel__backdrop {
    animation: erp-mobile-bottom-sheet-backdrop-in var(--erp-ui-transition, 180ms ease);
  }

  .erp-comment-panel--open .erp-comment-panel__sheet {
    transform: translateY(0);
    animation: erp-mobile-bottom-sheet-in var(--erp-ui-transition, 180ms ease);
  }

  .erp-comment-panel__header {
    min-height: 60px;
    padding-top: 24px;
    touch-action: pan-x;
  }

  .erp-comment-panel__composer {
    padding-bottom: max(12px, env(safe-area-inset-bottom));
  }
}

@media (max-width: 900px) and (prefers-reduced-motion: reduce) {
  .erp-comment-panel--open .erp-comment-panel__backdrop,
  .erp-comment-panel--open .erp-comment-panel__sheet {
    animation: none;
  }
}

.erp-modal-overlay.erp-auth-required-modal-overlay {
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

.erp-auth-required-modal {
  width: min(440px, 95vw);
}

.erp-product-choice-popover {
  position: fixed;
  z-index: var(--erp-layer-modal-child);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 10px;
  max-height: min(430px, calc(100vh - 24px));
  padding: 12px;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border, #dfe5ec);
  border-radius: var(--erp-ui-radius-lg, 16px);
  background: var(--erp-ui-surface, #fff);
  box-shadow: var(--erp-shadow-popover, 0 16px 34px rgba(15, 23, 42, .14));
}

.erp-product-choice-popover__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 30px;
  align-items: start;
  gap: 8px;
  padding: 2px 2px 0;
}

.erp-product-choice-popover__header > span {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-product-choice-popover__header strong {
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.25;
}

.erp-product-choice-popover__header small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 650;
  line-height: 1.35;
}

.erp-popover-header-action,
.erp-media-remove {
  --erp-close-action-size: 30px;
  --erp-close-action-icon-size: 15px;
  width: var(--erp-close-action-size);
  min-width: 0;
  height: var(--erp-close-action-size);
  min-height: 0;
  display: inline-grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: var(--erp-ui-surface-muted, #f7f9fc);
  color: var(--erp-ui-muted, #64748b);
  cursor: pointer;
  appearance: none;
  line-height: 1;
  transition:
    color var(--erp-ui-transition, .16s ease),
    background var(--erp-ui-transition, .16s ease),
    border-color var(--erp-ui-transition, .16s ease),
    box-shadow var(--erp-ui-transition, .16s ease);
}

.erp-popover-header-action:hover,
.erp-popover-header-action:focus-visible,
.erp-media-remove:hover,
.erp-media-remove:focus-visible {
  background: var(--erp-ui-surface-soft, #eef2f7);
  color: var(--erp-ui-text, #111827);
  outline: none;
}

.erp-popover-header-action :is(i, svg, .lucide),
.erp-media-remove :is(i, svg, .lucide) {
  width: var(--erp-close-action-icon-size) !important;
  height: var(--erp-close-action-icon-size) !important;
}

.erp-popover.erp-form-popover {
  position: fixed;
  z-index: var(--erp-layer-modal-child);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  width: min(360px, calc(100vw - 16px));
  max-width: calc(100vw - 16px);
  max-height: min(520px, calc(100vh - 16px));
  padding: 0;
  overflow: hidden;
}

.erp-popover.erp-form-popover--wide {
  width: min(560px, calc(100vw - 16px));
}

.erp-form-popover__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: var(--erp-ui-space-2, 8px);
  padding: var(--erp-ui-space-3, 12px);
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface, #fff);
}

.erp-form-popover__header > span {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-form-popover__header strong {
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.25;
}

.erp-form-popover__header small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 650;
  line-height: 1.35;
}

.erp-form-popover__body {
  min-width: 0;
  overflow: auto;
  overscroll-behavior: contain;
  padding: var(--erp-ui-space-3, 12px);
}

.erp-media-remove {
  --erp-close-action-size: 28px;
  --erp-close-action-icon-size: 14px;
  z-index: 3;
  border: 1px solid color-mix(in srgb, var(--erp-ui-text, #111827) 14%, transparent);
  background: color-mix(in srgb, var(--erp-ui-surface, #fff) 94%, transparent);
  color: var(--erp-ui-muted, #64748b);
  box-shadow: var(--erp-ui-shadow-sm, 0 4px 12px rgba(15, 23, 42, .08));
  backdrop-filter: blur(8px);
}

.erp-media-remove:hover,
.erp-media-remove:focus-visible {
  border-color: color-mix(in srgb, var(--erp-ui-danger, #dc2626) 34%, transparent);
  background: var(--erp-ui-surface, #fff);
  color: var(--erp-ui-danger, #dc2626);
}

.erp-media-remove:focus-visible {
  box-shadow: var(--erp-ui-focus-ring), var(--erp-ui-shadow-sm, 0 4px 12px rgba(15, 23, 42, .08));
}

.erp-media-remove--sm {
  --erp-close-action-size: 24px;
  --erp-close-action-icon-size: 13px;
}

.erp-media-remove--lg {
  --erp-close-action-size: 30px;
  --erp-close-action-icon-size: 15px;
}

.erp-media-remove--corner {
  position: absolute;
  top: var(--erp-media-remove-offset, var(--erp-ui-space-2, 8px));
  right: var(--erp-media-remove-offset, var(--erp-ui-space-2, 8px));
}

.erp-media-remove--badge {
  position: absolute;
  top: calc(var(--erp-ui-space-1, 4px) * -1);
  right: calc(var(--erp-ui-space-1, 4px) * -1);
  border-width: 2px;
  border-color: var(--erp-ui-surface, #fff);
  border-radius: var(--erp-ui-radius-pill, 999px);
  box-shadow: var(--erp-ui-shadow, 0 10px 24px rgba(15, 23, 42, .12));
}

.erp-media-action-frame {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.erp-product-choice-popover__options {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
  grid-auto-rows: max-content;
  align-content: start;
  gap: 12px 8px;
  min-height: 0;
  padding: 4px 2px 6px;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}

.erp-product-choice-popover__option {
  position: relative;
  min-width: 0;
  min-height: calc(var(--erp-product-group-choice-size) + 24px);
  display: grid;
  grid-template-rows: var(--erp-product-group-choice-size) auto;
  align-self: start;
  justify-items: center;
  align-content: start;
  gap: 7px;
  padding: 2px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-text, #111827);
  text-align: center;
  cursor: pointer;
  transition: color var(--erp-ui-transition), transform var(--erp-ui-transition);
}

.erp-product-choice-popover__option:hover,
.erp-product-choice-popover__option:focus-visible {
  background: transparent;
  color: var(--erp-ui-text, #111827);
  transform: translateY(-2px);
  outline: none;
}

.erp-product-choice-popover__option.is-active {
  background: transparent;
}

.erp-product-choice-popover__visual {
  position: relative;
  width: var(--erp-product-group-choice-size);
  height: var(--erp-product-group-choice-size);
  display: grid;
  place-items: center;
}

.erp-product-choice-popover__media {
  width: var(--erp-product-group-choice-size);
  height: var(--erp-product-group-choice-size);
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 2px solid transparent;
  border-radius: 50%;
  background: var(--erp-category-icon-bg, var(--erp-ui-surface-muted, #f7f9fc));
  color: #5d8091;
  box-shadow: var(--erp-category-icon-glow), 0 9px 20px rgba(30, 64, 75, .12);
  transition: border-color var(--erp-ui-transition), box-shadow var(--erp-ui-transition), transform var(--erp-ui-transition);
}

.erp-product-choice-popover__option:hover .erp-product-choice-popover__media,
.erp-product-choice-popover__option:focus-visible .erp-product-choice-popover__media {
  box-shadow: var(--erp-category-icon-glow), 0 14px 26px rgba(30, 64, 75, .18);
}

.erp-product-choice-popover__option.is-active .erp-product-choice-popover__media {
  border-color: var(--erp-ui-primary, #2563eb);
  box-shadow: var(--erp-category-icon-glow), 0 0 0 4px color-mix(in srgb, var(--erp-ui-primary, #2563eb) 13%, transparent), 0 12px 24px rgba(30, 64, 75, .16);
}

.erp-product-choice-popover__media > .erp-shoe-category-icon--picker {
  width: 100%;
  height: 100%;
  margin: 0;
  border-radius: inherit;
  background: transparent;
  box-shadow: none;
}

.erp-product-choice-popover__media > .erp-shoe-category-icon--picker .erp-category-visual__image {
  object-fit: cover;
}

.erp-product-choice-popover__media > :is(i, svg, .lucide) {
  width: 23px !important;
  height: 23px !important;
  margin: 0;
}

.erp-product-choice-popover__media > .erp-product-choice-emoji {
  font-size: 27px;
  line-height: 1;
}

.erp-product-choice-popover__label {
  display: block;
  width: 100%;
  max-width: 78px;
  min-width: 0;
  color: inherit;
  font-size: 11px;
  font-weight: 820;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.erp-product-choice-popover--categories .erp-product-choice-popover__options {
  grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
}

.erp-product-choice-popover--categories .erp-product-choice-popover__label {
  max-width: 100px;
}

.erp-product-choice-popover__marker {
  position: absolute;
  z-index: 2;
  top: -3px;
  right: -3px;
  width: 20px;
  height: 20px;
  display: inline-grid;
  place-items: center;
  padding: 0 5px;
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: var(--erp-ui-text, #111827);
  color: #fff;
  opacity: 0;
  transform: scale(.76);
  transition: opacity .15s ease, transform .15s ease;
}

.erp-product-choice-popover__option.has-badge .erp-product-choice-popover__marker,
.erp-product-choice-popover__option.is-active .erp-product-choice-popover__marker {
  opacity: 1;
  transform: scale(1);
}

.erp-product-choice-popover__option.is-active .erp-product-choice-popover__marker {
  width: 20px;
  min-width: 20px;
  padding: 0;
  background: var(--erp-ui-primary, #2563eb);
}

.erp-product-choice-popover__count {
  font-size: 9px;
  font-weight: 900;
  line-height: 1;
}

.erp-product-choice-popover__selected {
  display: none;
}

.erp-product-choice-popover__option.is-active .erp-product-choice-popover__count {
  display: none;
}

.erp-product-choice-popover__option.is-active .erp-product-choice-popover__selected {
  display: block;
}

.erp-product-choice-popover__selected:is(i, svg, .lucide) {
  width: 12px !important;
  height: 12px !important;
}

.erp-product-choice-popover__empty {
  grid-column: 1 / -1;
  min-height: 88px;
  display: grid;
  place-items: center;
  gap: 6px;
  padding: 14px;
  border-radius: var(--erp-ui-radius-lg, 16px);
  background: var(--erp-ui-surface-muted, #f7f9fc);
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 750;
  text-align: center;
}

.erp-product-choice-popover__empty :is(i, svg, .lucide) {
  width: 20px;
  height: 20px;
}

.erp-product-variant-price-popover__items {
  display: grid;
  grid-template-columns: repeat(4, minmax(72px, 1fr));
  align-content: start;
  gap: 10px 8px;
  min-height: 0;
  padding: 4px 2px 6px;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}

.erp-product-variant-price-popover__item {
  min-width: 0;
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 7px;
  text-align: center;
}

.erp-product-variant-price-popover__item.is-empty .erp-product-choice-popover__media {
  box-shadow: none;
  color: var(--erp-ui-muted, #64748b);
  opacity: .66;
}

.erp-product-variant-price-popover__value {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  min-height: 22px;
  padding: 4px 7px;
  border: 1px solid var(--erp-ui-border-soft, #e8edf3);
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: var(--erp-ui-surface-muted, #f7f9fc);
  color: var(--erp-ui-text, #111827);
  font-size: 10px;
  font-weight: 850;
  line-height: 1;
  white-space: nowrap;
}

.erp-product-variant-price-popover__item.is-empty .erp-product-variant-price-popover__value {
  color: var(--erp-ui-muted, #64748b);
  font-size: 9px;
}

@media (max-width: 480px) {
  .erp-product-variant-price-popover__items {
    grid-template-columns: repeat(2, minmax(72px, 1fr));
  }
}

.erp-modal.erp-auth-login-modal {
  --auth-accent: #2563eb;
  --auth-accent-strong: #1d4ed8;
  --auth-accent-soft: #eff6ff;
  width: min(430px, calc(100vw - 32px));
  max-height: min(92vh, 760px);
  overflow: visible;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.erp-auth-login-modal .erp-modal__header {
  position: absolute;
  z-index: 3;
  top: 10px;
  right: 10px;
  width: 34px;
  min-height: 34px;
  padding: 0;
  border: 0;
  background: transparent;
}

.erp-auth-login-modal .erp-modal__title {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.erp-auth-login-modal .erp-modal__content {
  padding: 0;
  border-radius: 28px;
  background: transparent;
}

.erp-auth-login-modal__shell {
  width: 100%;
}

.erp-auth-login-modal .auth-card {
  width: 100%;
}

@media (max-width: 520px) {
  .erp-modal-overlay.erp-auth-required-modal-overlay {
    padding: 12px;
  }

  .erp-modal.erp-auth-login-modal {
    width: min(430px, calc(100vw - 24px));
    max-height: calc(100vh - 24px);
  }

  .erp-auth-login-modal .auth-card {
    padding: 20px;
    border-radius: 24px;
  }

  .erp-auth-login-modal .erp-modal__content {
    border-radius: 24px;
  }
}

.erp-receipt-preview--compact {
  gap: var(--erp-ui-space-2);
}

.erp-receipt-preview--compact .erp-receipt-preview__summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--erp-ui-space-2);
}

.erp-receipt-preview--compact .erp-receipt-preview__summary > div {
  padding: 9px 10px;
}

.erp-receipt-preview--compact .erp-receipt-preview__fiscal {
  padding: 10px;
}

.erp-receipt-preview__head {
  border-radius: var(--erp-ui-radius-sm);
}

.erp-receipt-preview__head strong {
  font-size: 18px;
}

.erp-receipt-preview__items {
  margin-top: 2px;
}

.erp-receipt-preview__items .erp-table {
  min-width: 0;
}

.erp-receipt-preview__items .erp-table th,
.erp-receipt-preview__items .erp-table td {
  white-space: nowrap;
}


.erp-label-print-modal-dialog .erp-modal__content {
  padding: 0;
}

.erp-label-print-form {
  display: grid;
  gap: 0;
}

.erp-label-print-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 18px;
  border-bottom: 1px solid #e5e7eb;
  background: #f8fafc;
}

.erp-label-print-summary strong,
.erp-label-print-summary span {
  display: block;
}

.erp-label-print-summary strong {
  color: #111827;
  font-size: 14px;
  line-height: 1.25;
}

.erp-label-print-summary span {
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}

.erp-label-print-table-wrap {
  padding: 14px 18px 18px;
}

.erp-label-print-table-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.erp-label-print-table-head strong {
  color: #111827;
  font-size: 14px;
}

.erp-label-print-select-all {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid #d1d5db;
  border-radius: 0;
  background: #fff;
  color: #334155;
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  cursor: pointer;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

.erp-label-print-select-all:hover {
  border-color: var(--erp-button-group-border);
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
}

.erp-label-print-select-all.is-active {
  border-color: var(--erp-button-group-active-bg);
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.erp-label-print-select-all .lucide {
  width: var(--erp-icon-size);
  height: var(--erp-icon-size);
  flex: 0 0 auto;
}

.erp-check-inline {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #334155;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.erp-check-inline input {
  width: 16px;
  height: 16px;
  accent-color: #111827;
}

.erp-label-print-table {
  max-height: min(52vh, 560px);
  overflow: auto;
}

.erp-label-print-table .erp-table {
  min-width: 860px;
}

.erp-label-print-product {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.erp-label-print-product__thumb {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  background: #eef2f7;
  object-fit: cover;
  color: #64748b;
}

.erp-label-print-product__thumb--empty {
  border: 1px solid #e5e7eb;
}

.erp-label-print-product__thumb .lucide {
  width: 18px;
  height: 18px;
}

.erp-label-print-product__body {
  min-width: 0;
}

.erp-label-print-table .erp-table td small {
  display: block;
  margin-top: 2px;
  color: #64748b;
  font-size: 11px;
  font-weight: 700;
}

.erp-label-print-stepper {
  width: 132px;
  grid-template-columns: 36px 60px 36px;
  min-height: 36px;
  margin-left: auto;
}

.erp-label-print-stepper .erp-stepper__btn,
.erp-label-print-stepper .erp-stepper__input {
  width: 36px;
  min-width: 36px;
  height: 36px;
}

.erp-label-print-stepper .erp-stepper__input {
  width: 60px;
  min-width: 60px;
}

@media (max-width: 900px) {
  .erp-label-print-summary {
    align-items: flex-start;
    flex-direction: column;
    padding: 12px;
  }

  .erp-label-print-table-wrap {
    padding: 12px;
  }
}

@media (max-width: 900px) {
  .app-sidebar {
    top: 0;
    right: auto;
    bottom: 0;
    width: var(--erp-sidebar-mobile-w);
    max-width: var(--erp-sidebar-mobile-w);
    height: 100vh;
    height: 100dvh;
    max-height: 100dvh;
    transform: translateX(-100%);
    left: 0;
    border-right: none;
    border-bottom: 1px solid #d1d5db;
    z-index: var(--erp-layer-navigation);
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.22);
    border-right: 1px solid #d1d5db;
  }

  .app-sidebar .sidebar-home-bar {
    padding-top: max(8px, env(safe-area-inset-top));
  }

  body.sidebar-mobile-open .app-sidebar {
    transform: translateX(0);
    --erp-sidebar-current-w: var(--erp-sidebar-mobile-w);
  }

  body.sidebar-mobile-open {
    --erp-sidebar-current-w: var(--erp-sidebar-mobile-w);
    overflow: hidden;
  }

  body:not(.sidebar-mobile-open) {
    --erp-sidebar-current-w: 0px;
  }

  .app-sidebar-backdrop {
    display: block;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.42);
    z-index: var(--erp-layer-navigation-backdrop);
    transition: opacity 0.2s ease;
  }

  body.sidebar-mobile-open .app-sidebar-backdrop {
    opacity: 1;
    pointer-events: auto;
  }

  .sidebar-menu-toggle__icon-layer--collapse {
    opacity: 0;
    transform: translateX(8px) scale(.84) rotate(8deg);
  }

  .sidebar-menu-toggle__icon-layer--expand {
    opacity: 1;
    transform: translateX(0) scale(1) rotate(0deg);
  }

  body.sidebar-mobile-open .sidebar-menu-toggle__icon-layer--collapse {
    opacity: 1;
    transform: translateX(0) scale(1) rotate(0deg);
  }

  body.sidebar-mobile-open .sidebar-menu-toggle__icon-layer--expand {
    opacity: 0;
    transform: translateX(-8px) scale(.84) rotate(-8deg);
  }

  body.sidebar-mobile-open .app-sidebar .sidebar-title,
  body.sidebar-mobile-open .app-sidebar .sidebar-group-title span,
  body.sidebar-mobile-open .app-sidebar .sidebar-item-label {
    display: initial;
  }

  #mainContent,
  .app-footer {
    left: 0;
    width: auto;
    margin-left: 0;
  }

  .app-footer {
    display: none;
  }

  .app-mobile-bottom-menu {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: var(--erp-footer-h);
    z-index: 1199;
    background: #fff;
    border-top: 1px solid #d1d5db;
    display: block;
  }

  .app-mobile-bottom-menu-list {
    display: grid;
    grid-template-columns: repeat(var(--app-mobile-nav-columns), 1fr);
    align-items: stretch;
    height: var(--erp-footer-h);
  }
}

/* == Reusable empty state == */
.erp-empty-state {
  padding: 16px;
  border: 1px dashed var(--erp-border, #d1d5db);
  border-radius: var(--erp-radius, 8px);
  color: var(--erp-text-muted, #6b7280);
}

.erp-empty-state__icon {
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  margin-bottom: 8px;
  color: var(--erp-ui-muted);
}

.erp-empty-state__icon i,
.erp-empty-state__icon svg,
.erp-empty-state__icon .lucide {
  width: 18px !important;
  height: 18px !important;
}

.erp-empty-state strong {
  display: block;
  color: var(--erp-text-strong, #111827);
  margin-bottom: 4px;
}

.erp-empty-state h3 {
  margin: 0 0 4px;
  color: var(--erp-text-strong, #111827);
  font-size: 15px;
  line-height: 1.25;
  font-weight: 900;
}

.erp-empty-state p {
  margin: 0;
}

.erp-empty-state--page {
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 8px;
  min-height: min(460px, calc(100vh - var(--erp-header-h, 56px) - var(--erp-footer-h, 56px) - var(--erp-page-toolbar-h, 64px) - 180px));
  padding: 28px 16px;
  border: 0;
  border-radius: 0;
  background: transparent;
  text-align: center;
}

.erp-empty-state--page .erp-empty-state__icon {
  width: 40px;
  height: 40px;
  margin: 0;
  color: var(--erp-ui-muted);
}

.erp-empty-state--page .erp-empty-state__icon i,
.erp-empty-state--page .erp-empty-state__icon svg,
.erp-empty-state--page .erp-empty-state__icon .lucide {
  width: 20px !important;
  height: 20px !important;
}

.erp-empty-state--page strong {
  margin: 0;
  font-size: 15px;
  line-height: 1.25;
}

.erp-empty-state--page p {
  max-width: 420px;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.45;
  font-weight: 700;
}

/* ==========================================================================
   ERP UI Kit Add-ons
   --------------------------------------------------------------------------
   Safe extension layer inspired by UIkit, but built for this ERP.
   Does NOT override existing toolbar/modal core:
   - .page-toolbar
   - .erp-page-toolbar__btn
   - .erp-modal-root
   - .erp-modal-overlay
   - .erp-modal
   - .erp-confirm-modal

   Use this layer for new reusable components across:
   Admin, Manager, Client Shop, Partner Portal, Accounts, Products, Orders.
   ========================================================================== */

/* == Accessibility helpers == */
.erp-sr-only,
.erp-ui-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.erp-ui-focus-ring:focus-visible,
.erp-ui-focusable:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--erp-ui-primary) 65%, transparent);
  outline-offset: 2px;
}

/* == Layout utilities, UIkit-like but ERP namespaced == */
.erp-ui-container {
  width: min(100%, 1280px);
  margin-inline: auto;
}

.erp-ui-container--wide {
  width: min(100%, 1480px);
}

.erp-ui-section {
  display: grid;
  gap: var(--erp-ui-space-3);
}

.erp-ui-section + .erp-ui-section {
  margin-top: var(--erp-ui-space-4);
}

/* == Reusable document line items == */
.erp-document-form {
  gap: var(--erp-block-gap);
}

.erp-document-items-list {
  display: grid;
  gap: 0;
  align-content: start;
  min-height: 0;
  padding: 0 12px;
  overflow: auto;
}

.erp-document-items-list__head {
  position: sticky;
  top: 0;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(280px, 1fr) 84px 116px 116px 132px 46px;
  min-height: 34px;
  border-bottom: 1px solid var(--erp-ui-border);
  background: var(--erp-ui-surface-muted);
}

.erp-document-items-list__head > span {
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 0 10px;
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.erp-document-items-list__head > span:first-child {
  padding-left: 108px;
}

.erp-document-items-list__head > span:nth-child(n + 2) {
  justify-content: center;
  border-left: 1px solid var(--erp-ui-border);
}

.erp-document-item-row {
  display: grid;
  grid-template-columns: minmax(420px, 1.25fr) minmax(494px, 0.75fr);
  gap: 0;
  align-items: stretch;
  min-height: 78px;
  padding: 0;
  border-bottom: 1px solid var(--erp-ui-border);
}

.erp-document-item-row:last-child {
  border-bottom: 0;
}

.erp-document-item-row__product,
.erp-document-item-row__controls {
  min-width: 0;
}

.erp-document-item-row__product {
  display: grid;
  grid-template-columns: 34px 54px minmax(0, 1fr);
  grid-template-rows: auto auto auto;
  gap: 10px;
  align-items: center;
  align-content: center;
  padding: 10px 14px 10px 0;
}

.erp-document-item-row__index {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid var(--erp-ui-border);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}

.erp-document-item-row__lookup {
  grid-column: 3;
  grid-row: 1;
  align-self: center;
}

.erp-document-item-row.has-product .erp-document-item-row__lookup {
  grid-row: 2;
  margin-top: 2px;
}

.erp-document-item-row.has-product .erp-document-item-row__lookup .erp-field-control:not(.erp-field-control--select) {
  border-color: var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-muted);
}

.erp-document-item-row.has-product .erp-document-item-row__lookup .erp-field-control input {
  padding-top: 6px;
  padding-bottom: 6px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 750;
}

.erp-document-item-row__media {
  display: grid;
  grid-column: 2;
  grid-row: 1 / span 3;
  place-items: center;
  align-self: center;
  width: 54px;
  height: 54px;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border);
  background: var(--erp-ui-surface-muted);
}

.erp-document-item-row__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-document-item-row__media svg,
.erp-document-item-row__media .lucide {
  width: 20px;
  height: 20px;
  color: var(--erp-ui-muted);
}

.erp-document-item-row__media--empty,
.erp-document-item-row__media.is-empty {
  color: var(--erp-ui-muted);
}

.erp-document-item-row__details {
  display: grid;
  grid-column: 3;
  grid-row: 2;
  gap: 2px;
  min-width: 0;
}

.erp-document-item-row.has-product .erp-document-item-row__details {
  grid-row: 1;
}

.erp-document-item-row__details[hidden] {
  display: none;
}

.erp-document-item-row__details strong,
.erp-document-item-row__details span {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-item-row__details strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
}

.erp-document-item-row__details span {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 750;
}

.erp-document-item-row__product > .erp-document-item-row__meta {
  grid-column: 3;
  grid-row: 3;
}

.erp-document-item-row__controls {
  display: grid;
  grid-template-columns: 84px 116px 116px 132px 46px;
  gap: 0;
  align-items: stretch;
  justify-content: end;
  border-left: 1px solid var(--erp-ui-border);
}

.erp-document-item-row__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin-top: 3px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 700;
}

.erp-document-item-row__meta strong {
  color: var(--erp-ui-text);
}

.erp-document-item-row .erp-field {
  min-width: 0;
}

.erp-document-item-row__controls .erp-field {
  justify-content: center;
  min-height: 78px;
  padding: 8px;
  border-right: 1px solid var(--erp-ui-border);
}

.erp-document-item-row .erp-field > span {
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.2;
}

.erp-document-item-row .erp-field input,
.erp-document-item-row .erp-field select {
  min-height: 36px;
  padding: 8px 10px;
}

.erp-document-item-row__controls .erp-field input,
.erp-document-item-row__controls .erp-field select {
  border-radius: 0;
  text-align: center;
}

.erp-document-item-row__total {
  display: grid;
  align-content: center;
  justify-items: end;
  min-width: 0;
  min-height: 78px;
  padding: 8px 10px;
  border-right: 1px solid var(--erp-ui-border);
  background: var(--erp-ui-surface-muted);
}

.erp-document-item-row__total span {
  display: none;
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}

.erp-document-item-row__total strong {
  overflow: hidden;
  max-width: 100%;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-item-row__controls .erp-icon-btn,
.erp-document-item-row__controls .erp-icon-btn--table-action {
  align-self: stretch;
  width: 46px;
  min-width: 46px;
  height: auto;
  min-height: 78px;
  border: 0;
  border-radius: 0;
}

.erp-document-step--items .erp-document-items-list {
  display: grid;
  gap: 0;
  align-content: start;
  border-top: 0;
  background: #fff;
}

.erp-document-product-results {
  min-width: 0;
  padding: var(--erp-ui-space-2);
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: #fff;
}

.erp-document-product-results[hidden] {
  display: none;
}

.erp-document-product-results .erp-product-pick-list {
  max-height: none;
  padding: 0;
}

.erp-document-product-results .erp-product-pick {
  grid-template-columns: 46px minmax(170px, .9fr) minmax(64px, .28fr) minmax(74px, .3fr) minmax(56px, .22fr) minmax(72px, .25fr) minmax(116px, .45fr) 34px;
  gap: var(--erp-ui-space-2);
}

.erp-product-pick__cell {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-product-pick__cell span {
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 850;
  line-height: 1;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.erp-product-pick__cell strong {
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-step--items .erp-document-items-list__head,
.erp-document-step--items .erp-document-item-row:not(.has-product) {
  display: none;
}

.erp-document-step--items.is-searching .erp-document-item-row.has-product {
  display: none;
}

.erp-document-step--items .erp-document-item-row.has-product {
  --erp-document-item-label-height: 12px;
  --erp-document-item-field-height: 34px;
  --erp-document-item-label-gap: 5px;
  --erp-document-item-cell-padding-y: 10px;
  --erp-document-item-action-gap: var(--erp-ui-space-4);
  display: grid;
  grid-template-columns: minmax(190px, 1.65fr) repeat(8, minmax(72px, 1fr)) calc(36px + var(--erp-document-item-action-gap));
  align-items: stretch;
  min-height: 74px;
  border-bottom: 1px solid var(--erp-ui-border);
  background: #fff;
}

.erp-document-step--items .erp-document-item-row.has-product:last-child {
  border-bottom: 1px solid var(--erp-ui-border);
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__product {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: 4px var(--erp-ui-space-3);
  align-content: center;
  align-items: center;
  min-width: 0;
  padding: var(--erp-ui-space-2) var(--erp-ui-space-3);
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__property {
  display: grid;
  grid-template-rows: var(--erp-document-item-label-height) var(--erp-document-item-field-height);
  align-content: center;
  gap: var(--erp-document-item-label-gap);
  min-width: 0;
  padding: var(--erp-document-item-cell-padding-y) var(--erp-ui-space-2);
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__property span {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 850;
  line-height: 1;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__property strong {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  min-height: var(--erp-document-item-field-height);
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-step--items .erp-document-item-row__index {
  display: none;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__lookup {
  display: none;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__media {
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 52px;
  height: 52px;
  border-color: var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-bg-soft);
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__details {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
  justify-items: start;
  gap: 3px;
  width: 100%;
  text-align: left;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__product > .erp-document-item-row__meta {
  grid-column: 2;
  grid-row: 2;
  align-self: start;
  margin: 0;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__controls {
  display: contents;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__controls .erp-field {
  display: grid;
  grid-template-rows: var(--erp-document-item-label-height) var(--erp-document-item-field-height);
  align-content: center;
  gap: var(--erp-document-item-label-gap);
  min-height: 74px;
  padding: var(--erp-document-item-cell-padding-y) var(--erp-ui-space-2);
  border-right: 0;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__controls .erp-field > span:not(.erp-sr-only) {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 850;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__controls .erp-field input {
  width: 100%;
  min-width: 0;
  min-height: var(--erp-document-item-field-height);
  padding: 6px 8px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  text-align: center;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__stepper {
  align-self: center;
  min-height: var(--erp-document-item-field-height);
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__stepper input {
  min-height: 32px;
  padding: 5px 4px;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__total {
  display: grid;
  grid-template-rows: var(--erp-document-item-label-height) var(--erp-document-item-field-height);
  align-content: start;
  gap: var(--erp-document-item-label-gap);
  min-height: 74px;
  padding: calc(var(--erp-document-item-cell-padding-y) + 2px) var(--erp-ui-space-2) calc(var(--erp-document-item-cell-padding-y) - 2px);
  border-right: 0;
  background: transparent;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__total span {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0;
  font-size: 10px;
  font-weight: 850;
  line-height: 1;
  text-transform: uppercase;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__total strong {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: var(--erp-document-item-field-height);
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__controls .erp-icon-btn,
.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__controls .erp-icon-btn--table-action {
  align-self: center;
  justify-self: end;
  width: 36px;
  min-width: 36px;
  height: 36px;
  min-height: 36px;
  margin-top: 0;
  border-left: 0;
  border-right: 0;
}

.erp-document-item-row.is-feed-checkout-item [data-order-product-search],
.erp-document-item-row.is-feed-checkout-item input[name="price[]"] {
  color: #111827;
  background: #f8fafc;
}

.erp-feed-checkout-items {
  min-width: 0;
  background: var(--erp-ui-surface, #fff);
}

.page-order-checkout {
  width: min(100%, 1120px);
  margin-inline: auto;
}

.erp-feed-checkout-entry {
  display: grid;
  place-items: center;
  min-height: 100%;
  padding: var(--erp-ui-space-4);
}

.erp-feed-checkout-entry[hidden] {
  display: none;
}

.erp-feed-checkout-entry .erp-empty-state {
  width: min(100%, 560px);
}

@media (max-width: 900px) {
  .erp-invoice-feed-checkout-form .erp-document-progress {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    overflow: hidden;
  }

  .erp-invoice-feed-checkout-form .erp-document-progress__item {
    grid-template-columns: 24px minmax(0, 1fr);
    min-width: 0;
    padding: 9px 8px;
    column-gap: 7px;
    flex: initial;
  }
}

@media (max-width: 767.98px) {
  .erp-invoice-feed-checkout-form .erp-document-progress__item {
    grid-template-columns: 1fr;
    justify-items: center;
    min-height: 58px;
    padding: 7px 3px;
    row-gap: 4px;
    text-align: center;
  }

  .erp-invoice-feed-checkout-form .erp-document-progress__item strong {
    width: 100%;
    font-size: 10px;
  }

}

.erp-document-review {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
  grid-template-rows: minmax(0, 1fr);
  align-items: stretch;
  gap: 0;
  min-height: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface, #ffffff);
}

.erp-document-step.is-active > .erp-document-review {
  height: 100%;
  overflow: hidden;
  align-content: stretch;
}

.erp-document-review__main {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 0;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  padding: var(--erp-ui-space-4, 16px);
}

.erp-document-review__section-head {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding-bottom: var(--erp-ui-space-3, 12px);
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-document-review__section-head strong {
  color: var(--erp-ui-text, #111827);
  font-size: 15px;
  line-height: 1.25;
  font-weight: 900;
}

.erp-document-review__section-head span {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 750;
}

.erp-document-review__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--erp-ui-space-3, 12px) var(--erp-ui-space-4, 16px);
  margin: 0;
  padding-bottom: var(--erp-ui-space-3, 12px);
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-document-review__list > div {
  min-width: 0;
}

.erp-document-review__list dt {
  margin: 0 0 4px;
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 800;
}

.erp-document-review__list dd {
  margin: 0;
  overflow: hidden;
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-review__total {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  min-height: 100%;
  overflow: hidden;
  border-left: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background:
    linear-gradient(180deg, var(--erp-ui-surface-muted, #f8fafc), var(--erp-ui-surface, #ffffff));
}

.erp-document-review__total > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 40px;
  padding: 0 var(--erp-ui-space-4, 16px);
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-document-review__total > div:last-child {
  border-bottom: 0;
}

.erp-document-review__total > .erp-document-review__total-head {
  min-height: 70px;
  align-items: flex-end;
  padding-top: var(--erp-ui-space-3, 12px);
  padding-bottom: var(--erp-ui-space-3, 12px);
  background: var(--erp-ui-surface, #ffffff);
}

.erp-document-review__total span {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 800;
}

.erp-document-review__total strong {
  color: var(--erp-ui-text, #111827);
  font-size: 14px;
  font-weight: 900;
  text-align: right;
  white-space: nowrap;
}

.erp-document-review__total strong small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 800;
}

.erp-document-review__total-head span,
.erp-document-review__payable span {
  color: var(--erp-ui-text, #111827);
}

.erp-document-review__total-head strong {
  font-size: 20px;
}

.erp-document-review__total > .erp-document-review__payable {
  min-height: 54px;
  margin-top: auto;
  background: color-mix(in srgb, var(--erp-ui-success, #16a34a) 8%, var(--erp-ui-surface, #ffffff));
}

.erp-document-review__payable strong {
  font-size: 18px;
  color: var(--erp-ui-success, #16a34a);
}

.erp-document-review__items {
  display: grid;
  align-content: start;
  gap: 0;
  min-width: 0;
  min-height: 0;
  overflow: auto;
}

.erp-document-review__items-list {
  display: grid;
  gap: 0;
  min-width: 0;
}

.erp-document-review__items-head,
.erp-document-review__item,
.erp-document-review__items-empty {
  display: grid;
  min-width: 0;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-document-review__items-head {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--erp-ui-space-3, 12px);
  min-height: 40px;
  padding: 0 var(--erp-ui-space-3, 12px);
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-document-review__items-empty {
  padding: var(--erp-ui-space-3, 12px) 0;
}

.erp-document-review__items-head strong,
.erp-document-review__items-empty strong {
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 900;
}

.erp-document-review__items-head span,
.erp-document-review__items-empty span {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 800;
}

.erp-document-review__product-line {
  display: grid;
  grid-template-columns: minmax(168px, 220px) repeat(3, minmax(58px, 72px)) minmax(0, 1fr) minmax(258px, 258px);
  align-items: stretch;
  width: 100%;
  min-height: 70px;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface, #ffffff);
}

.erp-document-review__product-line:last-child {
  border-bottom: 0;
}

.erp-document-review__product-line .erp-document-item-row__product {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  grid-template-rows: auto;
  gap: 10px;
  align-content: center;
  align-items: center;
  min-width: 0;
  padding: 9px 12px 9px 0;
}

.erp-document-review__product-line .erp-document-item-row__media {
  grid-column: 1;
  grid-row: 1;
  width: 48px;
  height: 48px;
  border-radius: var(--erp-ui-radius, 8px);
  border-color: var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-document-review__product-line .erp-document-item-row__details {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  gap: 3px;
  text-align: left;
}

.erp-document-review__product-line .erp-document-item-row__property {
  display: grid;
  grid-template-rows: 12px minmax(30px, 1fr);
  align-content: center;
  gap: 5px;
  min-width: 0;
  padding: 9px 6px;
}

.erp-document-review__product-line .erp-document-item-row__property > span,
.erp-document-review__product-line .erp-document-item-row__total > span {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  color: var(--erp-ui-muted, #64748b);
  font-size: 10px;
  font-weight: 850;
  line-height: 1;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.erp-document-review__product-line .erp-document-item-row__property > strong {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  min-width: 0;
  min-height: 30px;
  color: var(--erp-ui-text, #111827);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-review__product-line .erp-document-item-row__total > strong {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  min-width: 0;
  min-height: 30px;
  width: 100%;
  color: var(--erp-ui-text, #111827);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-review__product-finance {
  grid-column: -2 / -1;
  display: grid;
  grid-template-columns: minmax(52px, .45fr) minmax(88px, .8fr) minmax(96px, .85fr);
  align-items: stretch;
  justify-self: end;
  min-width: 0;
  width: 100%;
}

.erp-document-review__product-line .erp-document-item-row__total {
  display: grid;
  grid-template-rows: 12px minmax(30px, 1fr);
  align-content: center;
  justify-items: center;
  gap: 5px;
  min-height: 70px;
  padding: 9px 10px;
  border-right: 0;
  background: transparent;
}

.erp-document-review__item {
  grid-template-columns: 44px minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--erp-ui-space-3, 12px);
}

.erp-document-review__item:last-child {
  border-bottom: 0;
}

.erp-document-review__item-media {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-document-review__item-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-document-review__item-media svg,
.erp-document-review__item-media .lucide {
  width: 18px;
  height: 18px;
  color: var(--erp-ui-muted, #64748b);
}

.erp-document-review__item-main,
.erp-document-review__item-total {
  display: grid;
  min-width: 0;
}

.erp-document-review__item-main strong {
  overflow: hidden;
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-review__item-main span {
  overflow: hidden;
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 750;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-document-review__item-total {
  justify-items: end;
  gap: 3px;
  text-align: right;
  white-space: nowrap;
}

.erp-document-review__item-total small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 10px;
  font-weight: 800;
}

.erp-document-review__item-total strong {
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 950;
}

@media (max-width: 900px) {
  .erp-feed-scenario-gate {
    min-height: calc(100vh - var(--erp-header-h, 56px) - var(--erp-footer-h, 56px) - var(--erp-page-toolbar-h, 64px) - 24px);
    padding: 12px;
  }

  .erp-feed-scenario-gate__actions,
  .erp-wizard-choice-actions,
  .erp-wizard-choice-actions--three {
    --erp-wizard-choice-size: min(220px, 100%);
  }

  .erp-feed-scenario-card,
  .erp-wizard-choice-card {
    aspect-ratio: 1 / 1;
  }

  .erp-feed-scenario-gate__warning {
    grid-template-columns: 24px minmax(0, 1fr);
  }

  .erp-feed-scenario-gate__warning .erp-btn {
    grid-column: 1 / -1;
    width: 100%;
  }

  .erp-document-feed-context {
    grid-template-columns: 1fr;
  }

  .erp-document-feed-context__actions {
    border-top: 1px solid #d1d5db;
    border-left: 0;
  }

  .erp-document-item-row {
    grid-template-columns: 1fr;
  }

  .erp-document-items-list__head {
    display: none;
  }

  .erp-document-item-row__controls {
    grid-template-columns: minmax(80px, 0.7fr) repeat(2, minmax(110px, 1fr)) minmax(132px, 1fr) 46px;
    border-top: 1px solid var(--erp-ui-border);
    border-left: 0;
  }

  .erp-document-step--items .erp-document-item-row.has-product {
    grid-template-columns: 1fr;
  }

  .erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__property {
    display: none;
  }

  .erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__controls {
    display: grid;
    grid-template-columns: minmax(70px, .35fr) repeat(2, minmax(96px, 1fr)) minmax(112px, 1fr) 36px;
    border-top: 1px solid var(--erp-ui-border-soft);
    border-left: 0;
  }

  .erp-document-item-row__total span {
    display: block;
  }

  .erp-document-review {
    grid-template-columns: 1fr;
    grid-template-rows: max-content max-content;
  }

  .erp-document-step.is-active > .erp-document-review {
    height: auto;
    min-height: 100%;
    overflow: auto;
    align-content: start;
  }

  .erp-document-review__main {
    grid-template-rows: max-content max-content;
    overflow: visible;
  }

  .erp-document-review__items {
    overflow: visible;
  }

  .erp-document-review__total {
    align-self: start;
    min-height: 0;
    border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
    border-left: 0;
  }

  .erp-document-review__product-line {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .erp-document-item-row:not(.erp-feed-checkout-item) > .erp-document-item-row__product {
    grid-template-columns: 30px 46px minmax(0, 1fr);
    gap: 8px;
  }

  .erp-document-item-row__index {
    width: 30px;
    height: 30px;
  }

  .erp-document-item-row__media {
    width: 46px;
    height: 46px;
  }

  .erp-document-item-row__controls {
    grid-template-columns: repeat(3, minmax(0, 1fr)) 46px;
  }

  .erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__product {
    grid-template-columns: 46px minmax(0, 1fr);
    padding: var(--erp-ui-space-2);
  }

  .erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__media {
    width: 46px;
    height: 46px;
  }

  .erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__controls {
    grid-template-columns: repeat(3, minmax(0, 1fr)) 36px;
  }

  .erp-document-item-row__total {
    grid-row: 2;
    grid-column: 1 / 4;
    align-content: center;
    justify-items: start;
    min-height: 46px;
    border-top: 1px solid var(--erp-ui-border);
  }

  .erp-document-item-row__controls .erp-icon-btn,
  .erp-document-item-row__controls .erp-icon-btn--table-action {
    grid-row: 2;
    grid-column: 4;
    min-height: 46px;
  }

  .erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__total {
    grid-row: 2;
    grid-column: 1 / 4;
  }

  .erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__controls .erp-icon-btn,
  .erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__controls .erp-icon-btn--table-action {
    grid-row: 2;
    grid-column: 4;
    min-height: 36px;
    margin-top: 0;
  }

  .erp-document-review__list {
    grid-template-columns: 1fr;
  }

  .erp-document-review__product-line {
    grid-template-columns: 1fr;
  }

  .erp-document-review__product-finance {
    grid-template-columns: 1fr;
  }

  .erp-document-review__product-line .erp-document-item-row__product {
    grid-template-columns: 46px minmax(0, 1fr);
    padding: var(--erp-ui-space-2);
  }

  .erp-document-review__product-line .erp-document-item-row__media {
    width: 46px;
    height: 46px;
  }

  .erp-document-review__product-line .erp-document-item-row__property,
  .erp-document-review__product-line .erp-document-item-row__total {
    grid-template-columns: minmax(76px, auto) minmax(0, 1fr);
    grid-template-rows: auto;
    min-height: 36px;
    padding: 0 var(--erp-ui-space-2);
  }

  .erp-document-review__product-line .erp-document-item-row__property > span,
  .erp-document-review__product-line .erp-document-item-row__total > span {
    justify-content: flex-start;
  }

  .erp-document-review__product-line .erp-document-item-row__property > strong,
  .erp-document-review__product-line .erp-document-item-row__total > strong {
    justify-content: flex-end;
    text-align: right;
  }

}

.erp-ui-stack {
  display: grid;
  gap: var(--erp-ui-space-3);
}

.erp-ui-stack--sm { gap: var(--erp-ui-space-2); }
.erp-ui-stack--lg { gap: var(--erp-ui-space-5); }

.erp-ui-cluster {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--erp-ui-space-2);
}

.erp-ui-cluster--between {
  justify-content: space-between;
}

.erp-ui-cluster--center {
  justify-content: center;
}

.erp-ui-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--erp-ui-space-3);
}

.erp-ui-col-12 { grid-column: span 12; }
.erp-ui-col-9 { grid-column: span 9; }
.erp-ui-col-8 { grid-column: span 8; }
.erp-ui-col-6 { grid-column: span 6; }
.erp-ui-col-4 { grid-column: span 4; }
.erp-ui-col-3 { grid-column: span 3; }

.erp-ui-grid-auto {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: var(--erp-ui-space-3);
}

.erp-ui-grid-auto--sm {
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
}

.erp-ui-grid-auto--lg {
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}

.erp-ui-split {
  display: grid;
  grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
  gap: var(--erp-ui-space-3);
  align-items: start;
}

.erp-ui-three-col {
  display: grid;
  grid-template-columns: minmax(240px, 300px) minmax(0, 1fr) minmax(240px, 320px);
  gap: var(--erp-ui-space-3);
  align-items: start;
}

/* == Panels/cards == */
.erp-card,
.erp-panel,
.erp-ui-card {
  min-width: 0;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  box-shadow: var(--erp-ui-shadow-sm);
}

.erp-panel {
  border-radius: var(--erp-workspace-radius);
}

.erp-ui-card {
  padding: var(--erp-ui-space-3);
}

.erp-panel {
  padding: var(--erp-ui-space-4);
}

.erp-card--muted,
.erp-panel--muted,
.erp-ui-card--muted {
  background: var(--erp-ui-surface-muted);
}

.erp-card--hover,
.erp-ui-card--hover {
  transition: border-color var(--erp-ui-transition), box-shadow var(--erp-ui-transition), transform var(--erp-ui-transition);
}

.erp-card--hover:hover,
.erp-ui-card--hover:hover {
  border-color: #cbd5e1;
  box-shadow: var(--erp-ui-shadow-sm);
  transform: translateY(-1px);
}

:where(
  .erp-btn,
  .erp-icon-btn,
  .erp-click-card,
  .erp-tabs__item,
  .settings-tab,
  .settings-role-tab,
  .erp-wizard-choice-card
):focus-visible {
  outline: 2px solid color-mix(in srgb, var(--erp-ui-primary) 58%, transparent);
  outline-offset: 2px;
}

/* == Reusable list cards == */
.erp-list-results {
  display: grid;
  gap: var(--erp-ui-space-3);
}

.erp-list-card-grid {
  --erp-product-card-min-width: 220px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--erp-product-card-min-width)), 1fr));
  gap: var(--erp-ui-space-3);
}

.erp-list-card-grid > .erp-product-card-pattern,
.erp-virtual-feed-row > .erp-product-card-pattern {
  max-width: 100%;
}

.erp-list-card {
  position: relative;
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: visible;
  padding: 0;
}

.erp-list-card.is-actions-open {
  z-index: 9;
}

.erp-list-card__media-shell {
  min-width: 0;
  margin: 0 var(--erp-ui-space-3);
}

.erp-product-card-pattern {
  --erp-product-card-min-width: 220px;
  --erp-product-card-media-ratio: 6 / 5;
  --erp-product-card-space: clamp(4px, 3.2cqw, 8px);
  --erp-product-card-overlay-height: clamp(40px, 22cqw, 52px);
  --erp-product-card-avatar-size: clamp(18px, 9.2cqw, 22px);
  --erp-product-card-avatar-icon-size: clamp(10px, 5.2cqw, 12px);
  --erp-product-card-group-icon-size: clamp(14px, 7.2cqw, 17px);
  --erp-product-card-title-gap: clamp(2px, 1.6cqw, 4px);
  --erp-product-card-title-line-gap: 1px;
  --erp-product-card-title-reserve: clamp(68px, 38cqw, 92px);
  --erp-product-card-title-max-width: clamp(96px, 52cqw, 140px);
  --erp-product-card-title-font-size: clamp(9px, 4.4cqw, 11px);
  --erp-product-card-meta-font-size: clamp(8px, 3.6cqw, 9px);
  --erp-product-card-price-height: clamp(24px, 12cqw, 30px);
  --erp-product-card-price-radius: clamp(12px, 6cqw, 15px);
  --erp-product-card-price-pad-left: clamp(5px, 3.6cqw, 9px);
  --erp-product-card-price-pad-right: clamp(5px, 4cqw, 10px);
  --erp-product-card-price-min-width: clamp(44px, 23cqw, 60px);
  --erp-product-card-price-font-size: clamp(9px, 4.4cqw, 11px);
  --erp-product-card-price-action-gap: clamp(2px, 1.2cqw, 3px);
  --erp-product-card-price-action-size: 22px;
  --erp-product-card-price-action-icon-size: clamp(13px, 5.6cqw, 14px);
  --erp-product-card-info-height: clamp(24px, 12cqw, 30px);
  --erp-product-card-model-font-size: clamp(8px, 4cqw, 10px);
  --erp-product-card-color-height: clamp(24px, 12cqw, 30px);
  --erp-product-card-color-size: clamp(12px, 6cqw, 15px);
  --erp-product-card-color-radius: clamp(12px, 6cqw, 15px);
  --erp-product-card-color-gap: clamp(3px, 1.6cqw, 4px);
  --erp-product-card-color-padding-inline: clamp(5px, 3.6cqw, 9px);
  --erp-product-card-body-padding: clamp(6px, 5cqw, 12px);
  --erp-product-card-size-option: clamp(30px, 16cqw, 38px);
  --erp-product-card-size-font-size: clamp(10px, 5cqw, 12px);
  container-type: inline-size;
  container-name: erp-product-card;
  width: 100%;
  min-width: min(100%, var(--erp-product-card-min-width));
  border: 0;
  overflow: hidden;
  background: var(--erp-ui-surface);
}

.erp-product-card-pattern .erp-list-card__media-shell {
  width: auto;
  max-width: none;
  box-sizing: border-box;
  margin: var(--erp-product-card-space) var(--erp-product-card-space) 0;
  border: 0;
  background: var(--erp-ui-surface);
  box-shadow: none;
}

.erp-product-card-pattern .erp-list-card__media {
  --erp-social-color-bg: var(--erp-ui-surface);
  --erp-social-color-r: var(--erp-product-card-color-radius);
  width: 100%;
  height: auto;
  min-height: 0;
  max-height: none;
  aspect-ratio: var(--erp-product-card-media-ratio);
  place-items: center;
  overflow: hidden;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.erp-product-card-pattern .erp-list-card__media::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 2;
  height: var(--erp-product-card-overlay-height);
  background: linear-gradient(
    180deg,
    rgba(15, 23, 42, .30) 0%,
    rgba(15, 23, 42, .16) 48%,
    rgba(15, 23, 42, 0) 100%
  );
  pointer-events: none;
}

.erp-product-card-pattern .erp-list-card__media img {
  align-self: center;
  justify-self: center;
  width: 100%;
  height: 100%;
  max-height: none;
  margin: auto;
  border: 0;
  object-fit: cover;
  object-position: center center;
  background: transparent;
  box-shadow: none;
}

.erp-product-card-pattern .erp-media-switcher,
.erp-product-card-pattern .erp-media-switcher__viewport,
.erp-product-card-pattern .erp-media-switcher__track,
.erp-product-card-pattern .erp-media-switcher__item {
  width: 100%;
  height: 100%;
  min-height: 0;
}

.erp-product-card-pattern .erp-media-switcher__item {
  display: grid;
  place-items: center;
  margin: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.erp-product-card-pattern .erp-media-switcher__item img {
  align-self: center;
  justify-self: center;
  width: 100%;
  height: 100%;
  margin: auto;
  border: 0;
  object-fit: cover;
  object-position: center center;
  background: transparent;
  box-shadow: none;
}

.erp-product-card-pattern .erp-social-post__media-shell--has-price {
  --erp-social-price-h: var(--erp-product-card-price-height);
  --erp-social-price-r: var(--erp-product-card-price-radius);
  --erp-social-price-pad-left: var(--erp-product-card-price-pad-left);
  --erp-social-price-pad-right: var(--erp-product-card-price-pad-right);
  --erp-social-price-action-gap: var(--erp-product-card-price-action-gap);
  --erp-social-price-bg: var(--erp-ui-surface);
  --erp-social-color-bg: var(--erp-ui-surface);
  background: var(--erp-ui-surface);
}

.erp-click-card {
  width: 100%;
  border: 1px solid var(--erp-ui-border);
  background: var(--erp-ui-surface);
  color: inherit;
  text-align: left;
  cursor: pointer;
  appearance: none;
}

.erp-click-card:focus-visible {
  outline: 2px solid #94a3b8;
  outline-offset: 2px;
}

.erp-list-card__media {
  display: grid;
  place-items: center;
  min-height: 178px;
  color: var(--erp-ui-muted);
  text-decoration: none;
}

.erp-list-card__media img {
  display: block;
  width: 100%;
  height: 190px;
  object-fit: cover;
}

.erp-list-card__media i,
.erp-list-card__media svg,
.erp-list-card__media .lucide {
  width: 26px !important;
  height: 26px !important;
}

.erp-list-card__model-code {
  position: absolute;
  top: var(--erp-ui-space-2);
  left: var(--erp-ui-space-2);
  z-index: 6;
  display: inline-flex;
  align-items: center;
  max-width: calc(100% - 100px);
  padding: 0;
  background: transparent;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
  text-shadow: 0 1px 6px rgba(15, 23, 42, .55);
  pointer-events: none;
}

.erp-sale-ribbon {
  position: absolute;
  top: 28px;
  left: var(--erp-ui-space-2);
  z-index: 7;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  max-width: calc(100% - 116px);
  min-height: 24px;
  padding: 0 9px;
  border-radius: var(--erp-ui-radius-pill);
  background: linear-gradient(135deg, #2563eb 0%, #ec4899 100%);
  color: #fff;
  font-size: 10px;
  font-weight: 950;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  text-transform: uppercase;
  box-shadow: 0 8px 18px rgba(15, 23, 42, .18);
  pointer-events: none;
  user-select: none;
}

.erp-sale-ribbon--clearance {
  background: linear-gradient(135deg, #f97316 0%, #ef4444 100%);
}

.erp-sale-ribbon__label,
.erp-sale-ribbon__discount {
  display: inline-flex;
  align-items: center;
  flex: 0 1 auto;
  min-width: 0;
  max-width: 82px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-sale-ribbon__discount {
  flex-shrink: 0;
  max-width: none;
  font-weight: 1000;
}

.erp-list-card__media-info {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  gap: var(--erp-ui-space-2);
  --erp-list-card-media-pad-inline: var(--erp-ui-space-2);
  --erp-list-card-media-pad-top: var(--erp-ui-space-2);
  min-height: 58px;
  padding: var(--erp-list-card-media-pad-top) var(--erp-list-card-media-pad-inline) var(--erp-ui-space-2) var(--erp-list-card-media-pad-inline);
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, .82) 58%,
    rgba(255, 255, 255, .96) 100%
  );
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
  pointer-events: none;
}

.erp-list-card__media-info > span {
  margin: 0;
  text-align: left;
  white-space: nowrap;
}

.erp-list-card__media-info > span + span {
  margin-left: var(--erp-ui-space-2);
  text-align: right;
}

.erp-product-card-pattern .erp-list-card__media-info {
  --erp-list-card-media-pad-inline: var(--erp-ui-space-2);
  --erp-list-card-media-pad-top: 0;
  box-sizing: border-box;
  gap: var(--erp-ui-space-2);
  min-height: var(--erp-product-card-info-height);
  padding: 0 var(--erp-list-card-media-pad-inline);
  justify-content: flex-end;
  align-items: center;
  background: linear-gradient(
    0deg,
    rgba(15, 23, 42, .30) 0%,
    rgba(15, 23, 42, .16) 48%,
    rgba(15, 23, 42, 0) 100%
  );
  color: #fff;
  text-shadow: 0 1px 8px rgba(15, 23, 42, .58);
}

.erp-product-card-pattern .erp-social-post__media--cut-colors .erp-list-card__media-info {
  padding-left: var(--erp-list-card-media-pad-inline);
}

.erp-product-card-pattern .erp-social-post__color-badges {
  min-height: var(--erp-product-card-color-height);
  gap: var(--erp-product-card-color-gap);
  padding-inline: var(--erp-product-card-color-padding-inline);
  background: var(--erp-ui-surface);
}

.erp-product-card-pattern .erp-social-color-badge {
  width: var(--erp-product-card-color-size);
  height: var(--erp-product-card-color-size);
}

.erp-product-card-pattern .erp-social-post__color-badges::before,
.erp-product-card-pattern .erp-social-post__color-badges::after {
  background: radial-gradient(
    circle at 100% 0,
    transparent 0 calc(var(--erp-social-color-r) - 1px),
    var(--erp-ui-surface) var(--erp-social-color-r)
  );
}

.erp-product-card-pattern .erp-sale-ribbon {
  top: var(--erp-product-card-space);
  bottom: auto;
  right: var(--erp-product-card-space);
  left: auto;
  z-index: 5;
  max-width: calc(100% - (2 * var(--erp-product-card-space)));
  min-height: clamp(18px, 10cqw, 24px);
  padding-inline: clamp(6px, 3.6cqw, 9px);
  font-size: clamp(8px, 4cqw, 10px);
}

.erp-product-card-pattern .erp-social-post__media-shell--has-price .erp-sale-ribbon {
  top: calc(
    var(--erp-product-card-price-height)
    + var(--erp-product-card-space)
  );
}

.erp-product-card-pattern .erp-list-card__media-title {
  position: absolute;
  top: var(--erp-product-card-space);
  left: var(--erp-product-card-space);
  z-index: 6;
  display: grid;
  grid-template-columns: var(--erp-product-card-avatar-size) minmax(0, 1fr);
  align-items: center;
  gap: var(--erp-product-card-title-gap);
  max-width: min(
    calc(100% - var(--erp-product-card-title-reserve)),
    var(--erp-product-card-title-max-width)
  );
  min-width: 0;
  color: #fff;
  pointer-events: none;
}

.erp-product-card-pattern .erp-list-card__media-avatar {
  display: inline-grid;
  place-items: center;
  width: var(--erp-product-card-avatar-size);
  height: var(--erp-product-card-avatar-size);
  border-radius: var(--erp-ui-radius-pill);
  background: rgba(255, 255, 255, .86);
  color: var(--erp-ui-text);
  box-shadow: 0 8px 18px rgba(15, 23, 42, .14);
}

.erp-product-card-pattern .erp-list-card__media-avatar i,
.erp-product-card-pattern .erp-list-card__media-avatar svg,
.erp-product-card-pattern .erp-list-card__media-avatar .lucide {
  width: var(--erp-product-card-avatar-icon-size) !important;
  height: var(--erp-product-card-avatar-icon-size) !important;
}

.erp-product-card-pattern .erp-list-card__media-avatar .erp-product-card-group-icon {
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.erp-product-card-pattern .erp-list-card__media-avatar .erp-product-card-group-icon :is(img, svg, .lucide) {
  width: var(--erp-product-card-group-icon-size) !important;
  height: var(--erp-product-card-group-icon-size) !important;
  object-fit: contain;
}

.erp-product-card-pattern .erp-list-card__media-title-text {
  display: grid;
  gap: var(--erp-product-card-title-line-gap);
  min-width: 0;
  text-shadow: 0 1px 8px rgba(15, 23, 42, .58);
}

.erp-product-card-pattern .erp-list-card__media-title-text a,
.erp-product-card-pattern .erp-list-card__media-title-text > span,
.erp-product-card-pattern .erp-list-card__media-title-text small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-product-card-pattern .erp-list-card__media-title-text a {
  color: #fff;
  font-size: var(--erp-product-card-title-font-size);
  font-weight: 900;
  line-height: 1.1;
  text-decoration: none;
  pointer-events: auto;
}

.erp-product-card-pattern .erp-list-card__media-title-text a:hover,
.erp-product-card-pattern .erp-list-card__media-title-text a:focus-visible {
  color: #fff;
  text-decoration: underline;
  outline: none;
}

.erp-product-card-pattern .erp-list-card__media-title-text > span {
  color: #fff;
  font-size: var(--erp-product-card-title-font-size);
  font-weight: 900;
  line-height: 1.1;
}

.erp-product-card-pattern .erp-list-card__media-title-text small {
  color: rgba(255, 255, 255, .94);
  font-size: var(--erp-product-card-meta-font-size);
  font-weight: 850;
  line-height: 1.1;
}

.erp-product-card-pattern .erp-social-post__price-cut {
  z-index: 8;
  gap: 4px;
  padding: 0 var(--erp-social-price-pad-right) 0 var(--erp-social-price-pad-left);
  pointer-events: auto;
  min-width: var(--erp-product-card-price-min-width);
  font-size: var(--erp-product-card-price-font-size);
}

.erp-product-card-pattern .erp-social-post__price-cut--has-actions {
  gap: var(--erp-social-price-action-gap);
  padding-right: 0;
}

.erp-product-card-pattern .erp-social-post__price-cut--actions-only {
  min-width: var(--erp-product-card-price-height);
  padding-left: 0;
}

.erp-product-card-pattern .erp-social-post__price-cut::before,
.erp-product-card-pattern .erp-social-post__price-cut::after {
  background: radial-gradient(
    circle at 0 100%,
    transparent 0 var(--erp-social-price-r),
    var(--erp-social-price-bg) var(--erp-social-price-r)
  );
}

.erp-product-card-pattern .erp-list-card__price-actions {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  z-index: 2;
  pointer-events: auto;
}

.erp-product-card-pattern .erp-list-card__price-actions .erp-social-post__icon-action {
  min-width: var(--erp-product-card-price-action-size);
  min-height: var(--erp-product-card-price-action-size);
  width: var(--erp-product-card-price-action-size);
  height: var(--erp-product-card-price-action-size);
  padding: 0;
  color: var(--erp-ui-muted);
}

.erp-product-card-pattern .erp-list-card__price-actions .erp-social-post__icon-action :is(i, svg, .lucide) {
  width: var(--erp-product-card-price-action-icon-size) !important;
  height: var(--erp-product-card-price-action-icon-size) !important;
}

.erp-product-card-pattern .erp-list-card__price-actions .erp-dropdown {
  top: calc(100% + 8px);
}

.erp-product-card-pattern .erp-list-card__media-model-code,
.erp-product-card-pattern .erp-list-card__media-code {
  font-size: var(--erp-product-card-model-font-size);
  color: #fff;
}

.erp-product-card-pattern .erp-list-card__media-info > span {
  margin: 0;
  min-width: 0;
  text-align: left;
}

.erp-product-card-pattern .erp-list-card__media-code {
  overflow: hidden;
  text-overflow: ellipsis;
}

.erp-product-card-pattern .erp-list-card__media-model-code {
  flex: 0 0 auto;
  margin-left: auto;
}

.erp-product-card-pattern .erp-list-card__media-info > span + span {
  margin-left: 0;
  text-align: right;
}

.erp-list-card__color-badges {
  pointer-events: none;
}

.erp-list-card__body {
  display: grid;
  gap: var(--erp-ui-space-2);
  padding: var(--erp-ui-space-3);
}

.erp-product-card-pattern .erp-list-card__body {
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  gap: var(--erp-product-card-space);
  padding: var(--erp-product-card-body-padding);
}

.erp-product-card-pattern .erp-list-card__variant-body {
  display: block;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

.erp-list-card__head {
  align-items: center;
  gap: var(--erp-ui-space-2);
  padding: var(--erp-ui-space-3) var(--erp-ui-space-3) var(--erp-ui-space-2);
}

.erp-list-card .erp-social-post__title a {
  color: inherit;
  text-decoration: none;
}

.erp-list-card .erp-social-post__title a:hover,
.erp-list-card .erp-social-post__title a:focus-visible {
  color: #0f172a;
  text-decoration: underline;
  outline: none;
}

.erp-list-card .erp-social-post__quick-actions {
  justify-self: end;
}

.erp-list-card__size-list {
  box-sizing: border-box;
  width: 100%;
  min-height: var(--erp-product-card-size-option, 38px);
  min-width: 0;
  max-width: 100%;
  align-items: stretch;
  justify-content: flex-start;
  scroll-snap-type: x proximity;
  scroll-padding-inline: 1px;
  overscroll-behavior-x: contain;
  touch-action: pan-x pan-y;
  -webkit-overflow-scrolling: touch;
}

.erp-list-card__size-list.is-dragging,
.erp-list-card__size-list.is-dragging .erp-square-option {
  cursor: grabbing;
  scroll-snap-type: none;
  user-select: none;
}

.erp-list-card__size-list .erp-square-option {
  width: var(--erp-product-card-size-option, 38px);
  height: var(--erp-product-card-size-option, 38px);
  flex-basis: var(--erp-product-card-size-option, 38px);
  font-size: var(--erp-product-card-size-font-size, 12px);
}

.erp-list-card__meta {
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

/* == Summary strips and record lists == */
.erp-summary-strip {
  display: grid;
  gap: var(--erp-ui-space-3);
  min-width: 0;
  padding: var(--erp-ui-space-2) 0 var(--erp-ui-space-4);
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-summary-strip__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-summary-strip__title,
.erp-record-section__title {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 15px;
  line-height: 1.25;
  font-weight: 900;
}

.erp-summary-strip__desc,
.erp-record-section__desc {
  margin: 4px 0 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.35;
  font-weight: 700;
}

.erp-summary-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid var(--erp-ui-border-soft);
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-summary-metrics > div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 12px var(--erp-ui-space-3);
  border-right: 1px solid var(--erp-ui-border-soft);
}

.erp-summary-metrics > div:first-child {
  padding-left: 0;
}

.erp-summary-metrics > div:last-child {
  padding-right: 0;
  border-right: 0;
}

.erp-summary-metrics span,
.erp-record-row__details span span,
.erp-record-row__action span {
  min-width: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.3;
  font-weight: 800;
}

.erp-summary-metrics strong,
.erp-record-row__details span strong {
  min-width: 0;
  color: var(--erp-ui-text);
  font-size: 14px;
  line-height: 1.25;
  font-weight: 900;
}

.erp-record-section {
  display: grid;
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-record-section + .erp-record-section {
  padding-top: var(--erp-ui-space-4);
  border-top: 1px solid var(--erp-ui-border-soft);
}

.erp-record-section__head {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-record-section__icon {
  width: 28px;
  height: 28px;
  justify-self: center;
}

.erp-record-list {
  display: grid;
  min-width: 0;
  border-top: 1px solid var(--erp-ui-border-soft);
}

.erp-record-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--erp-ui-space-3);
  width: 100%;
  min-width: 0;
  padding: 14px var(--erp-ui-space-2);
  margin: 0 calc(var(--erp-ui-space-2) * -1);
  border: 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
  appearance: none;
  transition: background var(--erp-ui-transition), color var(--erp-ui-transition);
}

.erp-record-row:hover,
.erp-record-row:focus-visible {
  background: var(--erp-ui-surface-soft);
  outline: none;
}

.erp-record-row--static {
  cursor: default;
}

.erp-record-row--static:hover,
.erp-record-row--static:focus-visible {
  background: transparent;
}

.erp-record-row__main,
.erp-record-row__title > span {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.erp-record-row__title > .erp-record-row__identity {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: center;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-record-row__identity-text {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.erp-bank-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  overflow: hidden;
}

.erp-bank-icon img {
  display: block;
  width: 22px;
  height: 22px;
  object-fit: contain;
}

.erp-bank-icon img + i,
.erp-bank-icon img + svg {
  display: none;
}

.erp-bank-icon i,
.erp-bank-icon svg,
.erp-bank-icon .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-record-row__title {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-record-row__title strong {
  min-width: 0;
  color: var(--erp-ui-text);
  font-size: 14px;
  line-height: 1.25;
  font-weight: 900;
}

.erp-record-row__title small {
  min-width: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.erp-record-row__details {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 8px var(--erp-ui-space-3);
  min-width: 0;
}

.erp-record-row__details > span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.erp-record-row__action {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--erp-ui-space-1);
  color: var(--erp-ui-muted);
}

.erp-record-row__action i,
.erp-record-row__action svg,
.erp-record-row__action .lucide {
  width: 16px !important;
  height: 16px !important;
}

/* == Switch strips == */
.erp-switch-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-switch-item {
  position: relative;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  min-height: 76px;
  padding: 16px var(--erp-ui-space-3) 12px;
  border: 0;
  border-right: 1px solid var(--erp-ui-border-soft);
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
  appearance: none;
  transition: background var(--erp-ui-transition), color var(--erp-ui-transition);
}

.erp-switch-item:last-child {
  border-right: 0;
}

.erp-switch-item:hover,
.erp-switch-item:focus-visible {
  background: var(--erp-ui-surface-soft);
  outline: none;
}

.erp-switch-item__indicator {
  position: absolute;
  top: 9px;
  right: 9px;
  width: 8px;
  height: 8px;
  min-width: 8px;
  padding: 0;
  border-radius: var(--erp-ui-radius-pill);
  font-size: 0;
  line-height: 0;
}

.erp-switch-item__icon {
  width: 26px;
  height: 26px;
  align-self: center;
}

.erp-switch-item__body {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding-right: var(--erp-ui-space-2);
}

.erp-switch-item__body strong {
  min-width: 0;
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.25;
  font-weight: 900;
}

.erp-switch-item__body small {
  min-width: 0;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.3;
  font-weight: 700;
}

.erp-switch-item__count {
  align-self: end;
  color: var(--erp-ui-text);
  font-size: 17px;
  line-height: 1;
  font-weight: 900;
}

/* == Information flow == */
.erp-info-flow {
  display: grid;
  gap: 0;
  min-width: 0;
}

.erp-info-entry {
  display: grid;
  gap: var(--erp-ui-space-4);
  min-width: 0;
  padding: var(--erp-ui-space-4) 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-info-entry:first-child {
  padding-top: 0;
}

.erp-info-entry:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.erp-info-entry__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--erp-ui-space-3);
  align-items: start;
  min-width: 0;
}

.erp-info-entry__title {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.erp-info-entry__title strong {
  min-width: 0;
  color: var(--erp-ui-text);
  font-size: 16px;
  line-height: 1.25;
  font-weight: 900;
}

.erp-info-entry__title span {
  min-width: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.erp-info-fields {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  min-width: 0;
  border-top: 1px solid var(--erp-ui-border-soft);
}

.erp-info-fields > div {
  display: grid;
  grid-template-columns: minmax(150px, 220px) minmax(0, 1fr);
  gap: var(--erp-ui-space-4);
  align-items: start;
  min-width: 0;
  padding: 10px 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-info-fields > div:last-child {
  border-bottom: 0;
}

.erp-info-fields dt {
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.3;
  font-weight: 800;
}

.erp-info-fields dd {
  margin: 0;
  min-width: 0;
  color: var(--erp-ui-text);
  font-size: 14px;
  line-height: 1.45;
  font-weight: 800;
  overflow-wrap: anywhere;
}

@media (max-width: 720px) {
  .erp-summary-strip__head {
    display: grid;
  }

  .erp-summary-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .erp-summary-metrics > div:nth-child(2n) {
    padding-right: 0;
    border-right: 0;
  }

  .erp-summary-metrics > div:nth-child(2n + 1) {
    padding-left: 0;
  }

  .erp-record-section__head {
    grid-template-columns: 28px minmax(0, 1fr);
  }

  .erp-record-section__head > .erp-status:last-child {
    justify-self: flex-start;
    grid-column: 2;
  }

  .erp-record-row,
  .erp-record-row__title {
    grid-template-columns: 1fr;
  }

  .erp-record-row__action {
    justify-content: flex-start;
  }

  .erp-switch-strip {
    grid-template-columns: 1fr;
  }

  .erp-switch-item {
    border-right: 0;
    border-bottom: 1px solid var(--erp-ui-border-soft);
  }

  .erp-switch-item:last-child {
    border-bottom: 0;
  }

  .erp-info-entry__head {
    grid-template-columns: 1fr;
  }

  .erp-info-fields > div {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .erp-switch-item__count {
    justify-self: flex-start;
  }
}

.erp-ui-card__head,
.erp-panel__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--erp-ui-space-3);
  margin-bottom: var(--erp-ui-space-3);
}

.erp-ui-card__title,
.erp-panel__title {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 15px;
  line-height: 1.25;
  font-weight: 900;
}

.erp-ui-card__desc,
.erp-panel__desc {
  margin: 4px 0 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.35;
}

.erp-ui-card__body {
  display: grid;
  gap: var(--erp-ui-space-3);
}

.erp-ui-card__footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--erp-ui-space-2);
  margin: var(--erp-ui-space-3) calc(var(--erp-ui-space-3) * -1) calc(var(--erp-ui-space-3) * -1);
  padding: var(--erp-ui-space-3);
  border-top: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-muted);
  border-bottom-left-radius: var(--erp-ui-radius);
  border-bottom-right-radius: var(--erp-ui-radius);
}

/* == Health / diagnostics lists == */
.erp-health-card {
  padding-bottom: 0;
}

.erp-health-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--erp-ui-space-3);
  margin-bottom: var(--erp-ui-space-3);
}

.erp-health-summary > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.erp-health-summary span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.2;
  font-weight: 800;
}

.erp-health-summary strong {
  min-width: 0;
  color: var(--erp-ui-text);
  font-size: 15px;
  line-height: 1.25;
  font-weight: 900;
}

.erp-health-list {
  display: grid;
  margin: 0 calc(var(--erp-ui-space-3) * -1);
  border-top: 1px solid var(--erp-ui-border-soft);
}

.erp-health-item {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  padding: 12px var(--erp-ui-space-3);
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-health-item:last-child {
  border-bottom: 0;
}

.erp-health-item__icon {
  width: 28px;
  height: 28px;
  justify-self: center;
}

.erp-health-item__body {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-health-item__body strong {
  min-width: 0;
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.25;
  font-weight: 900;
}

.erp-health-item__body span {
  min-width: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

@media (max-width: 720px) {
  .erp-health-summary {
    grid-template-columns: 1fr;
  }

  .erp-health-item {
    grid-template-columns: 28px minmax(0, 1fr);
  }

  .erp-health-item > .erp-status:last-child {
    justify-content: flex-start;
    grid-column: 2;
  }
}


/* == Register layout == */
.erp-register {
  --erp-pos-panel-w: clamp(400px, 34vw, 460px);
  --erp-pos-panel-top: calc(var(--erp-header-h) + var(--erp-page-toolbar-h));
  --erp-pos-local-toolbar-h: 56px;
  display: grid;
  gap: 0;
  grid-template-rows: var(--erp-pos-local-toolbar-h) minmax(0, 1fr);
  height: calc(100vh - var(--erp-header-h) - var(--erp-page-toolbar-h) - var(--erp-footer-h));
  min-height: 0;
  max-height: calc(100vh - var(--erp-header-h) - var(--erp-page-toolbar-h) - var(--erp-footer-h));
  overflow: hidden;
  padding-top: 0;
  padding-right: var(--erp-pos-panel-w);
  margin-right: 0;
}

.erp-register--shift-gated,
.erp-content-gated {
  position: relative;
  isolation: isolate;
}

body:has(.erp-register--shift-gated) .page-toolbar,
.erp-register--shift-gated > .erp-alert,
.erp-register--shift-gated .erp-register__toolbar,
.erp-register--shift-gated .erp-register__catalog,
.erp-register--shift-gated .erp-register__checkout,
body:has(.erp-content-gated) .page-toolbar,
.erp-content-gated > [data-erp-content-gate-target] {
  filter: blur(5px);
  opacity: .58;
  pointer-events: none;
  user-select: none;
}

.erp-register__shift-gate,
.erp-content-gate {
  position: absolute;
  inset: 0;
  z-index: 1200;
  display: grid;
  place-items: center;
  min-width: 0;
  padding: var(--erp-ui-space-4);
  background: rgba(248, 250, 252, .26);
}

.erp-register__shift-gate-content,
.erp-content-gate__content {
  width: min(100%, 360px);
  display: grid;
  justify-items: center;
  gap: var(--erp-ui-space-3);
  padding: 24px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: rgba(255, 255, 255, .96);
  box-shadow: var(--erp-ui-shadow);
  color: var(--erp-ui-text);
  text-align: center;
}

.erp-content-gate__content {
  width: min(100%, 460px);
}

.erp-register__shift-gate-icon,
.erp-content-gate__icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-text);
}

.erp-content-gate__avatar {
  width: 68px;
  height: 68px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 3px solid var(--erp-ui-surface);
  border-radius: 50%;
  background: var(--erp-ui-surface-muted);
  box-shadow: 0 0 0 1px var(--erp-ui-border);
  color: var(--erp-ui-text);
  font-size: 20px;
  line-height: 1;
  font-weight: 900;
}

.erp-content-gate__avatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-register__shift-gate-icon.is-pending {
  color: var(--erp-ui-primary);
}

.erp-register__shift-gate-icon i,
.erp-register__shift-gate-icon svg,
.erp-register__shift-gate-icon .lucide {
  width: 20px !important;
  height: 20px !important;
}

.erp-register__shift-gate-copy,
.erp-content-gate__copy {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.erp-register__shift-gate-copy h2,
.erp-register__shift-gate-copy p,
.erp-content-gate__copy h2,
.erp-content-gate__copy p {
  margin: 0;
}

.erp-register__shift-gate-copy h2,
.erp-content-gate__copy h2 {
  color: var(--erp-ui-text);
  font-size: 16px;
  line-height: 1.25;
  font-weight: 950;
}

.erp-register__shift-gate-copy p,
.erp-content-gate__copy p {
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.45;
  font-weight: 750;
}

.erp-register__shift-open,
.erp-content-gate__action {
  width: auto;
  min-width: 190px;
  min-height: var(--erp-ui-control-height);
  margin: 0;
}

.erp-content-gate__actions {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: var(--erp-ui-space-2);
}

.erp-content-gate__actions .erp-content-gate__action {
  flex: 1 1 0;
  min-width: 0;
  padding-inline: 12px;
}

.erp-content-gate__actions [data-account-profile-message] {
  flex-grow: 1.25;
}

.erp-content-gate__action:disabled,
.erp-content-gate__action[aria-disabled="true"] {
  border-color: var(--erp-ui-border);
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
  box-shadow: none;
  cursor: not-allowed;
  opacity: .78;
}

.erp-content-gate__actions .erp-content-gate__action span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 520px) {
  .erp-content-gate__actions {
    flex-direction: column;
  }
}

.erp-content-gate__icon i,
.erp-content-gate__icon svg,
.erp-content-gate__icon .lucide {
  width: 20px !important;
  height: 20px !important;
}

.settings-company-card-grid {
  --erp-wizard-choice-size: 188px;
  width: 100%;
  justify-content: start;
  margin: 0;
}

.settings-company-card-grid .erp-wizard-choice-card {
  width: var(--erp-wizard-choice-size);
  min-width: 0;
  text-decoration: none;
}

.settings-company-card-grid .erp-wizard-choice-card__logo {
  height: 54px;
}

.settings-company-card-grid .erp-wizard-choice-card__logo img {
  max-height: 54px;
}

.settings-company-card__title {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  max-width: 100%;
}

.settings-company-card__title .erp-dps-verified-icon,
.settings-company-card__title .erp-dps-verified-icon svg,
.settings-company-card__title .erp-dps-verified-icon.lucide {
  width: 15px !important;
  height: 15px !important;
  margin: 0;
  color: #22c55e;
}

.settings-company-card-grid .erp-wizard-choice-card.is-active .settings-company-card__title .erp-dps-verified-icon {
  color: #fff;
}

@media (max-width: 620px) {
  .settings-company-card-grid {
    --erp-wizard-choice-size: min(100%, 168px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
  }

  .settings-company-card-grid .erp-wizard-choice-card {
    width: 100%;
  }
}

.erp-register__catalog,
.erp-register__checkout,
.erp-register__search,
.erp-register__products,
.erp-receipt-paper,
.erp-pay-list {
  min-width: 0;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-register__section-head h2 {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
}

.erp-register__section-head p,
.erp-register__search-meta,
.erp-receipt-paper__summary span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.erp-register__toolbar {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  min-width: 0;
  height: var(--erp-pos-local-toolbar-h);
  min-height: var(--erp-pos-local-toolbar-h);
  overflow: hidden;
  border: 0;
  border-bottom: 1px solid var(--erp-ui-border);
  border-radius: 0;
  background: #fff;
}

.erp-register__toolbar-group {
  display: inline-flex;
  align-items: stretch;
  min-width: 0;
}

.erp-register__toolbar-group--receipt {
  margin-right: auto;
}

.erp-register__toolbar-group--system {
  margin-left: auto;
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-register__toolbar .erp-page-toolbar__btn,
.erp-register__toolbar .erp-page-toolbar__btn:link,
.erp-register__toolbar-btn,
.erp-register__scan-action,
.erp-receipt-paper__head-actions .erp-page-toolbar__btn,
.erp-receipt-line__remove {
  width: var(--erp-toolbar-btn-size);
  min-width: var(--erp-toolbar-btn-size);
  max-width: var(--erp-toolbar-btn-size);
  height: 100%;
  min-height: 100%;
  max-height: 100%;
  border-radius: 0;
  border: 0;
  background: transparent;
  color: #334155;
}

.erp-register__toolbar .erp-page-toolbar__btn-with-label {
  width: auto;
  max-width: none;
  padding: 0 14px;
}

.erp-register__offline-status .erp-page-toolbar__btn-text {
  max-width: 164px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.erp-register__offline-status.is-online {
  color: var(--erp-badge-success-text);
}

.erp-register__offline-status.is-warning {
  color: var(--erp-badge-warning-text);
}

.erp-register__offline-status.is-danger {
  color: var(--erp-badge-danger-text);
}

.erp-register__offline-status.is-muted {
  color: var(--erp-ui-muted);
}

.erp-register__toolbar .erp-page-toolbar__btn + .erp-page-toolbar__btn,
.erp-register__toolbar-group > .erp-page-toolbar__btn + .erp-page-toolbar__btn {
  border-left: 1px solid var(--erp-button-group-divider);
}

.erp-register__toolbar .erp-page-toolbar__btn:hover,
.erp-register__toolbar .erp-page-toolbar__btn:focus-visible,
.erp-register__scan-action:hover,
.erp-register__scan-action:focus-visible,
.erp-receipt-paper__head-actions .erp-page-toolbar__btn:hover,
.erp-receipt-paper__head-actions .erp-page-toolbar__btn:focus-visible,
.erp-receipt-line__remove:hover,
.erp-receipt-line__remove:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-register__toolbar .erp-page-toolbar__btn:disabled,
.erp-register__scan-action:disabled,
.erp-receipt-paper__head-actions .erp-page-toolbar__btn:disabled,
.erp-receipt-line__remove:disabled {
  opacity: .45;
  cursor: not-allowed;
}

.erp-register__toolbar .erp-page-toolbar__btn i,
.erp-register__toolbar .erp-page-toolbar__btn svg,
.erp-register__toolbar .erp-page-toolbar__btn .lucide,
.erp-register__scan-action i,
.erp-register__scan-action svg,
.erp-register__scan-action .lucide,
.erp-receipt-paper__head-actions .erp-page-toolbar__btn i,
.erp-receipt-paper__head-actions .erp-page-toolbar__btn svg,
.erp-receipt-paper__head-actions .erp-page-toolbar__btn .lucide,
.erp-receipt-line__remove i,
.erp-receipt-line__remove svg,
.erp-receipt-line__remove .lucide {
  width: var(--erp-toolbar-btn-icon-size) !important;
  height: var(--erp-toolbar-btn-icon-size) !important;
  flex: 0 0 var(--erp-toolbar-btn-icon-size);
  transform: none !important;
}

.erp-modal.erp-sales-cash-modal-dialog {
  width: min(880px, 95vw);
}

.erp-sales-cash-modal {
  display: grid;
  gap: 12px;
}

.erp-sales-cash-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  min-width: 0;
}

.erp-sales-cash-summary__copy,
.erp-sales-cash-summary__balance {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-sales-cash-summary__copy strong {
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
}

.erp-sales-cash-summary__copy span,
.erp-sales-cash-summary__balance span,
.erp-sales-cash-flow__item span,
.erp-sales-cash-history__head span,
.erp-sales-cash-timeline__meta,
.erp-sales-cash-timeline__body p {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.erp-sales-cash-summary__balance {
  justify-items: end;
  text-align: right;
  flex: 0 0 auto;
}

.erp-sales-cash-summary__balance strong {
  color: var(--erp-ui-text);
  font-size: 23px;
  font-weight: 900;
  line-height: 1.05;
  font-variant-numeric: tabular-nums;
}

.erp-sales-cash-flow {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--erp-ui-border);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}

.erp-sales-cash-flow__item {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  grid-template-areas:
    "icon label"
    "icon value";
  gap: 2px 8px;
  align-items: center;
  min-width: 0;
  padding: 12px;
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-sales-cash-flow__item:first-child {
  border-left: 0;
}

.erp-sales-cash-flow__icon {
  grid-area: icon;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  color: #475569;
}

.erp-sales-cash-flow__icon i,
.erp-sales-cash-flow__icon svg,
.erp-sales-cash-flow__icon .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-sales-cash-flow__item span:not(.erp-sales-cash-flow__icon) {
  grid-area: label;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-sales-cash-flow__item strong {
  grid-area: value;
  min-width: 0;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-sales-cash-flow__item strong.is-negative,
.erp-sales-cash-timeline__item.is-negative .erp-sales-cash-timeline__side strong {
  color: #b91c1c;
}

.erp-sales-cash-timeline__item.is-positive .erp-sales-cash-timeline__side strong {
  color: #166534;
}

.erp-sales-cash-history {
  display: grid;
  gap: 10px;
  min-height: 0;
}

.erp-sales-cash-history__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.erp-sales-cash-history__head strong {
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 900;
}

.erp-sales-cash-timeline {
  display: grid;
  gap: 0;
  max-height: min(42vh, 360px);
  overflow: auto;
  border: 1px solid var(--erp-ui-border);
  border-radius: 8px;
  background: #fff;
}

.erp-sales-cash-timeline__item {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 12px;
  min-width: 0;
  padding: 12px;
  border-top: 1px solid var(--erp-ui-border-soft);
  align-items: center;
}

.erp-sales-cash-timeline__item:first-child {
  border-top: 0;
}

.erp-sales-cash-timeline__photo,
.erp-sales-cash-timeline__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
  background: #f1f5f9;
  color: #334155;
  overflow: hidden;
  flex: 0 0 42px;
}

.erp-sales-cash-timeline__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.erp-sales-cash-timeline__photo--empty {
  background: #eef2f7;
}

.erp-sales-cash-timeline__icon i,
.erp-sales-cash-timeline__icon svg,
.erp-sales-cash-timeline__icon .lucide,
.erp-sales-cash-timeline__photo i,
.erp-sales-cash-timeline__photo svg,
.erp-sales-cash-timeline__photo .lucide {
  width: 18px !important;
  height: 18px !important;
}

.erp-sales-cash-timeline__body {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.erp-sales-cash-timeline__line,
.erp-sales-cash-timeline__meta {
  display: grid;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.erp-sales-cash-timeline__line {
  grid-template-columns: minmax(0, 1fr) auto 34px;
}

.erp-sales-cash-timeline__product {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.erp-sales-cash-timeline__product strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
}

.erp-sales-cash-timeline__product span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.25;
}

.erp-sales-cash-timeline__side {
  display: grid;
  justify-items: end;
  gap: 4px;
  min-width: 120px;
}

.erp-sales-cash-timeline__side span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}

.erp-sales-cash-timeline__side strong {
  flex: 0 0 auto;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.erp-sales-cash-timeline__view {
  width: 34px !important;
  min-width: 34px !important;
  max-width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  max-height: 34px !important;
  align-self: center;
  border-radius: 8px;
  background: #f8fafc;
  color: #334155;
}

.erp-sales-cash-timeline__view:hover,
.erp-sales-cash-timeline__view:focus-visible {
  background: #e5e7eb;
  color: #0f172a;
}

.erp-sales-cash-timeline__meta span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-sales-cash-timeline__body p {
  margin: 0;
}

.erp-prro-offline-panel {
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 16px;
}

.erp-modal.erp-prro-offline-modal-dialog {
  width: min(560px, 92vw);
}

.erp-prro-offline-modal-dialog .erp-modal__content {
  overflow: visible;
}

.erp-prro-offline-metrics strong,
.erp-prro-offline-metrics small {
  color: var(--erp-ui-text);
  line-height: 1.2;
}

.erp-prro-offline-metrics span,
.erp-prro-offline-metrics small {
  color: var(--erp-ui-muted);
  font-weight: 700;
}

.erp-prro-offline-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  border: 1px solid var(--erp-ui-border);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}

.erp-prro-offline-metrics > div {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 74px;
  padding: 12px;
  border-left: 1px solid var(--erp-ui-border-soft);
  border-top: 1px solid var(--erp-ui-border-soft);
}

.erp-prro-offline-metrics > div:nth-child(2n + 1) {
  border-left: 0;
}

.erp-prro-offline-metrics > div:nth-child(-n + 2) {
  border-top: 0;
}

.erp-prro-offline-metrics__icon {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  color: #475569;
}

.erp-prro-offline-metrics__icon i,
.erp-prro-offline-metrics__icon svg,
.erp-prro-offline-metrics__icon .lucide {
  width: 18px !important;
  height: 18px !important;
}

.erp-prro-offline-metrics > div > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-prro-offline-metrics span {
  font-size: 12px;
  line-height: 1.2;
}

.erp-prro-offline-metrics strong {
  overflow: hidden;
  font-size: 14px;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-prro-offline-metrics small {
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-prro-offline-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  min-width: 0;
}

@media (max-width: 760px) {
  .erp-sales-cash-flow {
    grid-template-columns: 1fr;
  }

  .erp-modal.erp-prro-offline-modal-dialog {
    width: min(520px, 94vw);
  }

  .erp-prro-offline-panel {
    padding: 12px;
  }

  .erp-prro-offline-metrics {
    grid-template-columns: 1fr;
  }

  .erp-prro-offline-metrics > div {
    border-left: 0;
  }

  .erp-prro-offline-metrics > div:nth-child(-n + 2) {
    border-top: 1px solid var(--erp-ui-border-soft);
  }

  .erp-prro-offline-metrics > div:first-child {
    border-top: 0;
  }

  .erp-prro-offline-actions {
    justify-content: flex-start;
  }

  .erp-sales-cash-flow__item {
    border-left: 0;
    border-top: 1px solid var(--erp-ui-border-soft);
  }

  .erp-sales-cash-flow__item:first-child {
    border-top: 0;
  }

  .erp-sales-cash-timeline__line,
  .erp-sales-cash-timeline__meta {
    align-items: flex-start;
    grid-template-columns: minmax(0, 1fr) 34px;
    gap: 3px;
  }

  .erp-sales-cash-timeline__side {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-items: start;
    min-width: 0;
  }

  .erp-sales-cash-timeline__view {
    grid-column: 2;
    grid-row: 1;
  }
}

.erp-register__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
  min-height: 0;
}

.erp-register__catalog,
.erp-register__checkout {
  display: grid;
  align-content: start;
  gap: var(--erp-ui-space-3);
  min-height: 0;
  border: 0;
  background: transparent;
}

.erp-register__catalog {
  grid-template-rows: auto minmax(0, 1fr);
  gap: 0;
}

.erp-register__checkout {
  position: fixed;
  top: var(--erp-pos-panel-top);
  right: 0;
  bottom: var(--erp-footer-h);
  z-index: 1100;
  width: var(--erp-pos-panel-w);
  height: auto;
  min-height: 0;
  grid-template-rows: minmax(0, 1fr) auto auto;
  align-content: stretch;
  gap: 0;
  overflow: hidden;
  border-radius: 0;
  border-left: 1px solid var(--erp-ui-border);
  background: #f8fafc;
  box-shadow: none;
}

.erp-register__search {
  display: grid;
  gap: 0;
  padding: var(--erp-ui-space-3);
}

.erp-register__section-head {
  display: flex;
  align-items: center;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-register__section-icon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-bg-soft);
  color: var(--erp-ui-text);
  flex: 0 0 auto;
}

.erp-register__section-icon i,
.erp-register__section-icon svg,
.erp-register__section-icon .lucide {
  width: var(--erp-icon-size) !important;
  height: var(--erp-icon-size) !important;
}

.erp-register__section-head p {
  margin: 4px 0 0;
}

.erp-register__search .erp-field {
  margin: 0;
}

.erp-register__search input {
  min-height: 48px;
  font-size: 16px;
}

.erp-register__search-meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--erp-ui-space-2);
}

.erp-register__products {
  min-height: 450px;
  display: grid;
  place-items: center;
  padding: var(--erp-ui-space-3);
}

.erp-receipt-paper {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  min-height: 0;
  height: 100%;
  max-height: 100%;
  border: 0;
  border-radius: 0;
  overflow: hidden;
  align-content: stretch;
  background: #fff;
}

.erp-receipt-paper__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0;
  min-height: 58px;
  padding: 0 0 0 var(--erp-ui-space-3);
  border-bottom: 1px solid var(--erp-ui-border);
  background: #fff;
}

.erp-receipt-paper__head-info {
  display: grid;
  min-width: 0;
  padding-right: var(--erp-ui-space-2);
}

.erp-receipt-paper__title {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  margin: 0;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0;
}

.erp-receipt-paper__title-label {
  color: var(--erp-ui-text);
}

.erp-receipt-paper__title-number {
  color: var(--erp-ui-muted);
  font-size: 15px;
}

.erp-receipt-paper__head-actions {
  height: 100%;
  display: inline-flex;
  align-items: stretch;
  margin-left: auto;
  border-left: 1px solid var(--erp-ui-border-soft);
  overflow: hidden;
}

.erp-receipt-paper__head-actions .erp-page-toolbar__btn {
  border-radius: 0;
  border: 0;
  border-left: 1px solid var(--erp-button-group-divider);
  color: var(--erp-button-group-text);
}

.erp-receipt-paper__head-actions .erp-page-toolbar__btn:first-child {
  border-left: 0;
}

.erp-receipt-paper__head-actions .erp-page-toolbar__btn:hover,
.erp-receipt-paper__head-actions .erp-page-toolbar__btn:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-receipt-paper__head-actions .erp-page-toolbar__btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.erp-receipt-paper__head-actions .erp-page-toolbar__btn i,
.erp-receipt-paper__head-actions .erp-page-toolbar__btn svg,
.erp-receipt-paper__head-actions .erp-page-toolbar__btn .lucide {
  width: var(--erp-toolbar-btn-icon-size) !important;
  height: var(--erp-toolbar-btn-icon-size) !important;
}

.erp-receipt-paper__body {
  min-height: 0;
  display: grid;
  align-items: start;
  overflow: auto;
  padding: 0;
  background:
    linear-gradient(#fff, #fff) padding-box,
    linear-gradient(to bottom, rgba(15, 23, 42, .04), transparent 18px) border-box;
}

.erp-receipt-paper__body .erp-empty-state--compact {
  align-self: center;
  justify-self: center;
  width: min(100%, 240px);
  border: 0;
  min-height: 0;
  padding: var(--erp-ui-space-4) var(--erp-ui-space-2);
  background: transparent;
}

.erp-receipt-paper__body .erp-empty-state--compact .erp-empty-state__icon {
  width: 34px;
  height: 34px;
  margin-bottom: var(--erp-ui-space-1);
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-muted);
}

.erp-receipt-paper__body .erp-empty-state--compact strong {
  font-size: 12px;
}

.erp-receipt-paper__body .erp-empty-state--compact p {
  max-width: 220px;
  font-size: 11px;
}

.erp-receipt-lines {
  display: grid;
  gap: 0;
}

.erp-receipt-line,
.erp-product-pick {
  min-width: 0;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-receipt-line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(88px, auto) var(--erp-toolbar-btn-size);
  align-items: center;
  gap: 0;
  padding: 0 0 0 var(--erp-ui-space-3);
  border: 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  background: transparent;
}

.erp-receipt-line__main,
.erp-receipt-line__sum {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-receipt-line__main strong,
.erp-receipt-line__sum strong,
.erp-product-pick__main strong,
.erp-product-pick__meta strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
}

.erp-receipt-line__main span,
.erp-receipt-line__sum span,
.erp-product-pick__main span,
.erp-product-pick__meta span {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.25;
}

.erp-receipt-line__main .erp-receipt-line__discount,
.erp-receipt-line__main .erp-receipt-line__discount-total {
  display: inline-flex;
  align-items: baseline;
  gap: var(--erp-ui-space-2);
  width: fit-content;
  font-size: 11px;
}

.erp-receipt-line__main .erp-receipt-line__discount {
  color: var(--erp-ui-success);
}

.erp-receipt-line__main .erp-receipt-line__discount-total {
  color: var(--erp-ui-text);
}

.erp-receipt-line__main .erp-receipt-line__discount strong,
.erp-receipt-line__main .erp-receipt-line__discount-total strong {
  color: inherit;
  font-size: inherit;
  font-weight: 900;
  line-height: inherit;
}

.erp-receipt-line__sum {
  text-align: right;
  padding: var(--erp-ui-space-3) var(--erp-ui-space-2);
}

.erp-receipt-line .erp-counter {
  margin: 0 var(--erp-ui-space-2);
}

.erp-receipt-line__remove {
  align-self: stretch;
  width: var(--erp-toolbar-btn-size);
  min-width: var(--erp-toolbar-btn-size);
  max-width: var(--erp-toolbar-btn-size);
  height: auto;
  min-height: var(--erp-toolbar-btn-size);
  max-height: none;
  margin: 0;
  border-radius: 0;
  border: 0;
  border-left: 1px solid var(--erp-ui-border-soft);
  color: var(--erp-ui-muted);
}

.erp-receipt-line__remove:hover,
.erp-receipt-line__remove:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-receipt-line__remove i,
.erp-receipt-line__remove svg,
.erp-receipt-line__remove .lucide {
  width: var(--erp-toolbar-btn-icon-size) !important;
  height: var(--erp-toolbar-btn-icon-size) !important;
}

.erp-product-pick-list {
  display: grid;
  gap: var(--erp-ui-space-2);
  width: 100%;
  align-self: stretch;
}

.erp-product-pick {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) minmax(92px, auto);
  align-items: center;
  gap: var(--erp-ui-space-3);
  width: 100%;
  min-height: 68px;
  padding: var(--erp-ui-space-2);
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.erp-product-pick:hover,
.erp-product-pick:focus-visible {
  background: var(--erp-ui-bg-soft);
  outline: none;
}

.erp-product-pick__photo {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  overflow: hidden;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-bg-soft);
  color: var(--erp-ui-muted);
}

.erp-product-pick__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-product-pick__main,
.erp-product-pick__meta {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.erp-product-pick__meta {
  justify-items: end;
  text-align: right;
}

.erp-counter {
  display: inline-grid;
  grid-template-columns: 32px minmax(30px, auto) 32px;
  align-items: stretch;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-counter button,
.erp-counter span {
  display: grid;
  place-items: center;
  min-height: 32px;
  border: 0;
  border-right: 1px solid var(--erp-ui-border-soft);
  background: transparent;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
}

.erp-counter button {
  cursor: pointer;
}

.erp-counter button:hover,
.erp-counter button:focus-visible {
  background: var(--erp-ui-bg-soft);
  outline: none;
}

.erp-counter > :last-child {
  border-right: 0;
}

.erp-counter--compact {
  grid-template-columns: 28px minmax(26px, auto) 28px;
}

.erp-counter--compact button,
.erp-counter--compact span {
  min-height: 28px;
}

.erp-receipt-paper__summary {
  border-top: 1px solid var(--erp-ui-border-soft);
  background: #f8fafc;
}

.erp-receipt-paper__summary > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  min-height: 42px;
  padding: 0 var(--erp-ui-space-3);
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-receipt-paper__summary > .erp-receipt-paper__summary-meta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0;
  padding: 0;
}

.erp-receipt-paper__summary-meta > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  min-height: 42px;
  padding: 0 var(--erp-ui-space-3);
}

.erp-receipt-paper__summary-meta > div + div {
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-receipt-paper__summary > div:last-child {
  border-bottom: 0;
}

.erp-receipt-paper__summary strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
}

.erp-receipt-paper__summary .is-total {
  min-height: 62px;
  background: #111827;
  color: #fff;
}

.erp-receipt-paper__summary .is-total span,
.erp-receipt-paper__summary .is-total strong {
  color: #fff;
}

.erp-receipt-paper__summary .is-total strong {
  font-size: 24px;
  line-height: 1;
}

.erp-pay-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 0;
  border-top: 1px solid var(--erp-ui-border);
  border-radius: 0;
  overflow: hidden;
}

.erp-pay-list[hidden] {
  display: none !important;
}

.erp-pay-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 58px;
  width: 100%;
  padding: 0 8px;
  border: 0;
  border-right: 1px solid var(--erp-button-group-divider);
  border-radius: 0;
  background: var(--erp-button-group-bg);
  color: var(--erp-button-group-text);
  text-align: center;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.erp-pay-item:last-child {
  border-right: 0;
}

.erp-pay-item:nth-child(3n) {
  border-right: 0;
}

.erp-pay-item:nth-child(n + 4) {
  border-top: 1px solid var(--erp-button-group-divider);
}

.erp-pay-item:hover,
.erp-pay-item:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-pay-item:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.erp-pay-item__icon {
  display: grid;
  place-items: center;
  width: var(--erp-toolbar-btn-icon-size);
  height: var(--erp-toolbar-btn-icon-size);
  border-radius: 0;
  color: var(--erp-ui-muted);
}

.erp-pay-item__icon i,
.erp-pay-item__icon svg,
.erp-pay-item__icon .lucide {
  width: var(--erp-toolbar-btn-icon-size) !important;
  height: var(--erp-toolbar-btn-icon-size) !important;
}

.erp-pay-item:hover .erp-pay-item__icon,
.erp-pay-item:focus-visible .erp-pay-item__icon {
  color: var(--erp-ui-text);
}

.erp-return-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) 60px;
  border-top: 1px solid var(--erp-button-group-border);
  background: var(--erp-button-group-bg);
  overflow: hidden;
}

.erp-return-actions[hidden] {
  display: none !important;
}

.erp-return-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 60px;
  width: 100%;
  padding: 0 12px;
  border: 0;
  border-right: 1px solid var(--erp-button-group-divider);
  border-radius: 0;
  background: var(--erp-button-group-bg);
  color: var(--erp-button-group-text);
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.erp-return-action:last-child {
  border-right: 0;
}

.erp-return-action:hover,
.erp-return-action:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-return-action.is-active {
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.erp-return-action:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.erp-return-action__icon,
.erp-return-action i,
.erp-return-action svg,
.erp-return-action .lucide {
  width: var(--erp-toolbar-btn-icon-size) !important;
  height: var(--erp-toolbar-btn-icon-size) !important;
}

.erp-checkout-payment {
  display: grid;
  gap: 0;
  border: 0;
  border-radius: 0;
}

.erp-checkout-payment[hidden] {
  display: none !important;
}

.erp-payment-fields {
  display: grid;
  gap: var(--erp-ui-space-2);
  padding: var(--erp-ui-space-3);
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-payment-fields .erp-field {
  margin: 0;
}

.erp-payment-fields__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--erp-ui-space-2);
}

.erp-payment-fields__change {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  min-height: 38px;
  padding-top: var(--erp-ui-space-2);
  border-top: 1px dashed var(--erp-ui-border);
}

.erp-payment-fields__change span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-payment-fields__change strong {
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 900;
}

.erp-payment-panel {
  display: grid;
  gap: var(--erp-ui-space-4);
}

.erp-monobank-payment {
  display: grid;
  gap: var(--erp-ui-space-4);
}

.erp-monobank-payment__qr {
  display: grid;
  place-items: center;
  padding: var(--erp-ui-space-4);
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius-lg);
  background: var(--erp-ui-surface);
}

.erp-monobank-payment__qr img {
  display: block;
  width: min(260px, 100%);
  height: auto;
}

.erp-monobank-payment__status {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 44px;
  padding: 10px 14px;
  border-radius: var(--erp-ui-radius-md);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  font-weight: 800;
}

.erp-monobank-payment__status.is-success {
  color: var(--erp-ui-success, #15803d);
}

.erp-monobank-payment__status.is-error {
  color: var(--erp-ui-danger, #b91c1c);
}

.erp-monobank-payment__actions {
  justify-content: center;
}

.erp-order-monobank-card.detail-card {
  overflow: hidden;
  padding: 0;
}

.erp-order-monobank-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px 12px;
  padding: 12px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-soft);
}

.erp-order-monobank-card__identity {
  flex: 1 1 220px;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.erp-order-monobank-card__identity > span:last-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.erp-order-monobank-card__identity strong,
.erp-order-monobank-card__identity small {
  overflow: hidden;
  text-overflow: ellipsis;
}

.erp-order-monobank-card__identity strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.25;
  font-weight: 850;
}

.erp-order-monobank-card__identity small {
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.25;
  font-weight: 700;
}

.erp-order-monobank-card__logo {
  flex: 0 0 36px;
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
}

.erp-order-monobank-card__logo i,
.erp-order-monobank-card__logo svg,
.erp-order-monobank-card__logo .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-order-monobank-card__body {
  min-width: 0;
  display: grid;
  gap: 12px;
  padding: 12px;
}

.erp-order-monobank-card__summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-order-monobank-card__metric {
  min-width: 0;
  display: grid;
  align-content: center;
  gap: 4px;
  margin: 0;
  padding: 11px 12px;
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-order-monobank-card__metric:first-child {
  border-left: 0;
}

.erp-order-monobank-card__metric dt,
.erp-order-monobank-card__metric dd {
  min-width: 0;
  margin: 0;
}

.erp-order-monobank-card__metric dt {
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 750;
}

.erp-order-monobank-card__metric dd {
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.25;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-order-monobank-card__metric--amount dd {
  font-size: 18px;
  font-variant-numeric: tabular-nums;
}

.erp-order-monobank-card__actions {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}

.erp-order-monobank-card__primary-action,
.erp-order-monobank-card__retry,
.erp-order-monobank-card__retry .erp-btn {
  width: 100%;
}

.erp-order-monobank-card__utility-actions {
  flex: 0 0 auto;
  justify-self: end;
}

.erp-order-monobank-card__utility-actions form,
.erp-order-monobank-card__retry {
  margin: 0;
}

.erp-order-monobank-card__retry {
  grid-column: 1 / -1;
}

.erp-order-monobank-card__help {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0;
  padding: 9px 10px;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.4;
  font-weight: 700;
}

.erp-order-monobank-card__help i,
.erp-order-monobank-card__help svg,
.erp-order-monobank-card__help .lucide {
  flex: 0 0 15px;
  width: 15px !important;
  height: 15px !important;
  margin-top: 1px;
}

.erp-order-monobank-card .erp-monobank-payment__qr {
  padding: 10px;
  border: 0;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-soft);
}

.erp-order-monobank-card .erp-monobank-payment__qr img {
  width: min(180px, 100%);
}

@media (max-width: 359.98px) {
  .erp-order-monobank-card__summary,
  .erp-order-monobank-card__actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .erp-order-monobank-card__metric {
    border-left: 0;
  }

  .erp-order-monobank-card__metric + .erp-order-monobank-card__metric {
    border-top: 1px solid var(--erp-ui-border-soft);
  }

  .erp-order-monobank-card__utility-actions {
    justify-self: stretch;
    justify-content: flex-end;
  }
}

.erp-payment-summary {
  display: grid;
  gap: var(--erp-ui-space-2);
  padding-bottom: var(--erp-ui-space-3);
  border-bottom: 1px dashed var(--erp-ui-border);
}

.erp-payment-summary__main {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--erp-ui-space-3);
}

.erp-payment-summary__main span,
.erp-payment-summary__meta span,
.erp-payment-result span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 900;
}

.erp-payment-summary__main strong {
  color: var(--erp-ui-text);
  font-size: 28px;
  font-weight: 950;
  line-height: 1;
  white-space: nowrap;
}

.erp-payment-summary--service {
  justify-items: center;
  text-align: center;
}

.erp-payment-summary--service .erp-payment-summary__main {
  display: grid;
  justify-items: center;
  gap: var(--erp-ui-space-2);
  text-align: center;
}

.erp-payment-summary--service .erp-payment-summary__meta {
  justify-content: center;
  text-align: center;
}

.erp-payment-summary__meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--erp-ui-space-2);
}

.erp-payment-panel .erp-payment-fields {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.erp-payment-fields__grid--stacked {
  grid-template-columns: 1fr;
}

.erp-payment-panel .erp-field {
  gap: 7px;
}

.erp-payment-panel .erp-input-group {
  min-height: 44px;
}

.erp-payment-panel .erp-input-addon {
  min-width: 44px;
}

.erp-payment-panel .erp-control {
  font-size: 18px;
  font-weight: 900;
}

.erp-card-number-control {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--erp-ui-space-2);
}

.erp-card-number-control .erp-control {
  min-height: 48px;
  padding-inline: var(--erp-ui-space-2);
  text-align: center;
  letter-spacing: .08em;
  font-weight: 950;
  font-variant-numeric: tabular-nums;
}

.erp-bank-preview {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  gap: var(--erp-ui-space-3);
  min-height: 58px;
  padding: var(--erp-ui-space-2) var(--erp-ui-space-3);
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-soft);
}

.erp-bank-preview__icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-muted);
}

.erp-bank-preview__icon i,
.erp-bank-preview__icon svg,
.erp-bank-preview__icon .lucide {
  width: var(--erp-icon-size);
  height: var(--erp-icon-size);
}

.erp-bank-preview__details {
  display: grid;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-bank-preview strong,
.erp-bank-preview span {
  display: block;
  min-width: 0;
}

.erp-bank-preview strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
}

.erp-bank-preview span {
  margin-top: 2px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 700;
}

.erp-bank-preview__recipient {
  display: grid;
  gap: 2px;
  padding-top: var(--erp-ui-space-2);
  border-top: 1px dashed var(--erp-ui-border);
}

.erp-bank-preview__recipient span {
  margin-top: 0;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.erp-bank-preview__recipient small {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.erp-payment-result {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-3);
  min-height: 44px;
  padding-top: var(--erp-ui-space-3);
  border-top: 1px dashed var(--erp-ui-border);
}

.erp-payment-result strong {
  color: var(--erp-ui-text);
  font-size: 18px;
  font-weight: 950;
  white-space: nowrap;
}

.erp-payment-result strong.is-warning {
  color: #b45309;
}

.erp-payment-result strong.is-success {
  color: #166534;
}

.erp-held-list {
  display: grid;
  gap: var(--erp-ui-space-2);
}

.erp-held-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(80px, auto);
  align-items: center;
  gap: var(--erp-ui-space-3);
  width: 100%;
  min-height: 58px;
  padding: var(--erp-ui-space-2) var(--erp-ui-space-3);
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  text-align: left;
  cursor: pointer;
}

.erp-held-item:hover,
.erp-held-item:focus-visible {
  background: var(--erp-ui-bg-soft);
  outline: none;
}

.erp-held-item__main,
.erp-held-item__meta,
.erp-receipt-preview__summary > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.erp-held-item__main strong,
.erp-held-item__meta strong,
.erp-receipt-preview__summary strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
}

.erp-held-item__main span,
.erp-held-item__meta span,
.erp-receipt-preview__summary span {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.25;
}

.erp-held-item__meta {
  justify-items: end;
  text-align: right;
}

.erp-receipt-preview {
  display: grid;
  gap: var(--erp-ui-space-3);
}

.erp-receipt-preview-frame {
  width: 100%;
  min-height: min(70vh, 720px);
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: #fff;
}

.erp-receipt-preview__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--erp-ui-space-3);
  padding: var(--erp-ui-space-3);
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: #fff;
}

.erp-receipt-preview__head span,
.erp-receipt-preview__fiscal span {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.25;
}

.erp-receipt-preview__head strong {
  display: block;
  margin-top: 3px;
  color: var(--erp-ui-text);
  font-size: 20px;
  font-weight: 900;
  line-height: 1.1;
}

.erp-receipt-preview__summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--erp-ui-space-2);
}

.erp-receipt-preview__summary > div {
  padding: var(--erp-ui-space-2);
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-bg-soft);
}

.erp-receipt-preview-modal__content .erp-receipt-preview__summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}

.erp-receipt-preview-modal__content .erp-receipt-preview__summary > div,
.erp-receipt-preview-modal__content .erp-receipt-preview__fiscal > div {
  padding: 7px 9px;
}

.erp-receipt-preview__fiscal {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--erp-ui-space-2);
  padding: var(--erp-ui-space-3);
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: #fff;
}

.erp-receipt-preview-modal__content .erp-receipt-preview__fiscal {
  grid-template-columns: 1fr;
}

.erp-receipt-preview__fiscal > div {
  min-width: 0;
}

.erp-receipt-preview__fiscal strong,
.erp-receipt-preview__fiscal a {
  display: block;
  margin-top: 3px;
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.erp-receipt-preview__fiscal-link {
  grid-column: 1 / -1;
}

.erp-button-group--stretch {
  display: flex;
  width: 100%;
}

.erp-button-group--stretch > .erp-btn,
.erp-button-group--stretch > button,
.erp-button-group--stretch > a {
  flex: 1 1 0;
}


@media (max-width: 1100px) {
  .erp-register {
    padding-right: 0;
    margin-right: 0;
  }

  .erp-register__layout {
    grid-template-columns: 1fr;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
  }

  .erp-register__checkout {
    position: static;
    width: auto;
    height: auto;
    min-height: 0;
    border: 0;
    box-shadow: none;
  }

  .erp-register__products {
    min-height: 320px;
  }
}

@media (max-width: 760px) {
  .erp-register__checkout {
    position: static;
    height: auto;
    border: 0;
    box-shadow: none;
  }

  .erp-register__search-meta {
    display: none;
  }

  .erp-receipt-line,
  .erp-product-pick {
    grid-template-columns: 1fr;
  }

  .erp-receipt-line__sum,
  .erp-product-pick__meta {
    justify-items: start;
    text-align: left;
  }
}

/* == POS register refinement == */
.erp-register {
  --erp-pos-panel-w: clamp(390px, 32vw, 452px);
  --erp-pos-accent: #334155;
  --erp-pos-accent-soft: #f1f5f9;
  gap: 0;
  padding-top: 0;
}

.erp-register__search {
  gap: 0;
  padding: 12px;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.erp-register__scan-field {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto 46px;
  align-items: center;
  min-height: 46px;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}

.erp-register__search-meta {
  display: none;
}

.erp-register__scan-count {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  min-width: max-content;
  height: 100%;
  padding: 0 12px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.erp-register__scan-count[hidden] {
  display: none;
}

.erp-register__scan-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 100%;
  color: var(--erp-pos-accent);
  border-right: 1px solid var(--erp-ui-border-soft);
}

.erp-register__scan-icon i,
.erp-register__scan-icon svg,
.erp-register__scan-icon .lucide {
  width: 19px !important;
  height: 19px !important;
}

.erp-register__scan-field input {
  width: 100%;
  min-height: 44px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 800;
  outline: none;
}

.erp-register__scan-field input::placeholder {
  color: #94a3b8;
  font-weight: 700;
}

.erp-register__scan-action {
  align-self: stretch;
  width: 46px;
  min-width: 46px;
  max-width: 46px;
  border-left: 1px solid var(--erp-button-group-divider);
  color: var(--erp-button-group-text);
}

.erp-register__scan-action:hover,
.erp-register__scan-action:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
}

.erp-register__scan-action:disabled {
  color: #94a3b8;
  cursor: not-allowed;
}

.erp-register__products {
  min-height: 0;
  height: 100%;
  place-items: stretch;
  align-content: start;
  grid-auto-rows: max-content;
  padding: 0 12px 12px;
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}

.erp-register__product-placeholder {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 8px;
  min-height: 100%;
  height: 100%;
  padding: 26px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-muted);
  text-align: center;
}

.erp-register__product-placeholder i,
.erp-register__product-placeholder svg,
.erp-register__product-placeholder .lucide {
  width: 26px !important;
  height: 26px !important;
  color: var(--erp-pos-accent);
}

.erp-register__product-placeholder strong {
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 900;
}

.erp-register__product-placeholder span {
  max-width: 320px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 700;
}

.erp-register__product-placeholder--empty i,
.erp-register__product-placeholder--empty svg,
.erp-register__product-placeholder--empty .lucide {
  color: #b91c1c;
}

.erp-register__products > .erp-empty-state {
  align-self: stretch;
  justify-self: center;
  width: min(100%, 460px);
  display: grid;
  align-content: center;
  justify-items: center;
  border: 0;
  background: transparent;
}

.erp-receipt-paper__body .erp-empty-state--compact {
  border-top: 0;
}

.erp-product-pick-list {
  align-self: start;
  gap: 8px;
  min-height: 0;
  height: auto;
  overflow: visible;
  padding-right: 2px;
}

.erp-product-pick {
  grid-template-columns: 46px minmax(0, 1fr) minmax(110px, auto) 34px;
  min-height: 72px;
  padding: 10px 8px;
  border-radius: 8px;
  background: #fff;
  transition: background .15s ease, border-color .15s ease;
}

.erp-product-pick:hover,
.erp-product-pick:focus-visible {
  border-color: #cbd5e1;
  background: #f8fafc;
}

.erp-product-pick.is-disabled,
.erp-product-pick:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.erp-product-pick__photo {
  width: 46px;
  height: 46px;
  border-radius: 8px;
  background: #f1f5f9;
}

.erp-product-pick__main strong,
.erp-product-pick__meta strong {
  font-size: 14px;
}

.erp-product-pick__details {
  display: block;
}

.erp-product-pick__codes {
  display: block;
  color: #475569;
  font-size: 10.5px;
  font-weight: 750;
  line-height: 1.25;
}

.erp-product-pick__meta .is-empty-stock {
  color: #b91c1c;
}

.erp-product-pick__add {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 7px;
  background: var(--erp-pos-accent-soft);
  color: var(--erp-pos-accent);
}

.erp-product-pick__add i,
.erp-product-pick__add svg,
.erp-product-pick__add .lucide {
  width: 16px !important;
  height: 16px !important;
}

.erp-register__checkout {
  background: #f6f8fb;
  box-shadow: none;
}

.erp-receipt-paper {
  background: #fff;
}

.erp-receipt-paper__head {
  min-height: 56px;
}

.erp-receipt-paper__title {
  gap: 8px;
}

.erp-receipt-paper__title-label {
  font-size: 15px;
}

.erp-receipt-paper__title-number {
  font-size: 13px;
  font-variant-numeric: tabular-nums;
}

.erp-receipt-paper__head-actions .erp-page-toolbar__btn,
.erp-receipt-line__remove {
  width: var(--erp-toolbar-btn-size);
  min-width: var(--erp-toolbar-btn-size);
  max-width: var(--erp-toolbar-btn-size);
}

.erp-receipt-paper__body {
  background: #fff;
}

.erp-receipt-lines {
  gap: 0;
}

.erp-receipt-line {
  grid-template-columns: minmax(0, 1fr) auto minmax(92px, auto) var(--erp-toolbar-btn-size);
  min-height: 58px;
  padding-left: 12px;
}

.erp-receipt-line__main strong,
.erp-receipt-line__sum strong {
  font-size: 13.5px;
}

.erp-receipt-line__sum {
  font-variant-numeric: tabular-nums;
}

.erp-receipt-paper__summary {
  background: #fff;
}

.erp-receipt-paper__summary > div,
.erp-receipt-paper__summary-meta > div {
  min-height: 40px;
}

.erp-receipt-paper__summary .is-total {
  min-height: 60px;
  background: #0f172a;
}

.erp-receipt-paper__summary .is-total strong {
  font-size: 23px;
  font-variant-numeric: tabular-nums;
}

.erp-pay-list {
  background: #fff;
}

.erp-pay-item {
  min-height: 60px;
}

.erp-checkout-payment.is-disabled .erp-pay-item {
  opacity: .48;
}

.erp-held-item {
  border-radius: 8px;
}

.erp-held-item__meta strong {
  font-variant-numeric: tabular-nums;
}

@media (max-width: 1320px) {
  .erp-register {
    --erp-pos-panel-w: clamp(360px, 35vw, 420px);
  }

}

@media (max-width: 1100px) {
  .erp-register {
    height: calc(100dvh - var(--erp-header-h) - var(--erp-page-toolbar-h) - var(--erp-footer-h));
    max-height: calc(100dvh - var(--erp-header-h) - var(--erp-page-toolbar-h) - var(--erp-footer-h));
  }

  .erp-register__toolbar {
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .erp-register__toolbar::-webkit-scrollbar {
    display: none;
  }

  .erp-register__toolbar-group {
    flex: 0 0 auto;
    min-width: max-content;
  }

  .erp-register__products {
    height: auto;
    min-height: 320px;
    max-height: 50dvh;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: auto;
  }

  .erp-register__checkout {
    border: 1px solid var(--erp-ui-border-soft);
    border-radius: 10px;
    overflow: hidden;
  }
}

@media (max-width: 760px) {
  .erp-product-pick {
    grid-template-columns: 48px minmax(0, 1fr);
  }

  .erp-product-pick__meta {
    grid-column: 2;
  }

  .erp-receipt-line {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    padding: 10px 0 10px 12px;
  }

  .erp-receipt-line .erp-counter,
  .erp-receipt-line__sum {
    margin: 0;
    padding: 0;
  }

  .erp-receipt-line__remove {
    grid-column: 2;
    grid-row: 1 / span 2;
  }
}

/* == Direction cards == */
.erp-direction-card {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) 34px;
  align-items: center;
  gap: var(--erp-ui-space-3);
  min-height: 128px;
  color: var(--erp-ui-text);
  text-decoration: none;
}

.erp-direction-card:hover,
.erp-direction-card:focus-visible {
  color: var(--erp-ui-text);
  text-decoration: none;
  outline: none;
}

.erp-direction-card__icon,
.erp-direction-card__action {
  display: grid;
  place-items: center;
  color: #334155;
}

.erp-direction-card__icon {
  width: 46px;
  height: 46px;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-soft);
}

.erp-direction-card__action {
  width: 34px;
  height: 34px;
  justify-self: end;
}

.erp-direction-card__icon i,
.erp-direction-card__icon svg,
.erp-direction-card__icon .lucide {
  width: 22px !important;
  height: 22px !important;
}

.erp-direction-card__action i,
.erp-direction-card__action svg,
.erp-direction-card__action .lucide {
  width: 18px !important;
  height: 18px !important;
}

.erp-direction-card__body {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.erp-direction-card__body strong {
  color: var(--erp-ui-text);
  font-size: 17px;
  line-height: 1.2;
  font-weight: 900;
}

.erp-direction-card__body span {
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.35;
  font-weight: 700;
}

/* == Text helpers == */
.erp-ui-title {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 20px;
  line-height: 1.2;
  font-weight: 900;
}

.erp-ui-subtitle {
  margin: 4px 0 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.4;
}

.erp-ui-muted { color: var(--erp-ui-muted); }
.erp-ui-text-danger { color: var(--erp-ui-danger); }
.erp-ui-text-success { color: var(--erp-ui-success); }
.erp-ui-text-warning { color: var(--erp-ui-warning); }
.erp-ui-text-primary { color: var(--erp-ui-primary); }

/* == Buttons: keep core .erp-btn, add safe variants only == */
.erp-btn--info { background: var(--erp-ui-info); color: #fff; }
.erp-btn--purple { background: var(--erp-ui-purple); color: #fff; }
.erp-btn--light { background: var(--erp-ui-surface-soft); color: #334155; border: 1px solid var(--erp-ui-border); }

.erp-btn--bubble {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 13px;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: var(--erp-ui-surface, #fff);
  color: var(--erp-ui-text);
  font-size: 12px;
  line-height: 1;
  font-weight: 850;
  white-space: nowrap;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

.erp-btn--bubble:is(:hover, :focus-visible) {
  border-color: var(--erp-action-active-bg);
  background: var(--erp-action-active-bg);
  color: var(--erp-action-active-text);
  transform: translateY(-1px);
}

.erp-btn--bubble:active:not(:disabled) {
  border-color: var(--erp-action-active-bg);
  background: var(--erp-action-active-bg);
  color: var(--erp-action-active-text);
  transform: translateY(0) scale(.97);
}

.erp-btn--soft-success {
  background: #f0fdf4;
  color: #15803d;
  border: 1px solid #bbf7d0;
}

.erp-btn--soft-warning {
  background: #fffbeb;
  color: #b45309;
  border: 1px solid #fde68a;
}

.erp-btn--soft-danger {
  background: #fef2f2;
  color: #b91c1c;
  border: 1px solid #fecaca;
}

.erp-btn--xs {
  min-height: 26px;
  padding: 4px 8px;
  font-size: 12px;
}

.erp-btn--sm {
  min-height: 30px;
  padding: 6px 10px;
  font-size: 13px;
}

.erp-btn--lg {
  min-height: 44px;
  padding: 10px 16px;
  font-size: 15px;
}

.erp-btn--block {
  width: 100%;
}

.erp-button-group {
  display: inline-flex;
  align-items: stretch;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-button-group-radius);
  background: var(--erp-button-group-bg);
}

.erp-button-group > .erp-btn,
.erp-button-group > button,
.erp-button-group > a {
  border-radius: 0 !important;
  border: 0 !important;
  border-right: 1px solid var(--erp-ui-border) !important;
}

.erp-button-group > :last-child {
  border-right: 0 !important;
}

.erp-button-group--grid {
  display: grid;
  width: 100%;
  background: var(--erp-button-group-bg);
}

.erp-button-group--cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.erp-button-group--cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.erp-button-group--cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.erp-button-group__item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 0;
  min-height: 40px;
  padding: 0 10px;
  border: 0;
  border-radius: 0;
  background: var(--erp-button-group-bg);
  color: var(--erp-button-group-text);
  font: inherit;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  appearance: none;
  transition: background .15s ease, color .15s ease;
}

.erp-button-group__item:hover,
.erp-button-group__item:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-button-group__item:active,
.erp-button-group__item.is-active,
.erp-button-group__item[aria-pressed="true"] {
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.erp-button-group__item:disabled,
.erp-button-group__item.is-disabled {
  color: var(--erp-ui-muted);
  background: var(--erp-button-group-bg);
  cursor: default;
  opacity: .58;
}

.erp-button-group__item > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-button-group__item > i,
.erp-button-group__item > svg,
.erp-button-group__item > .lucide {
  width: 14px !important;
  height: 14px !important;
}

.erp-button-group--grid.erp-button-group--cols-2 > .erp-button-group__item:nth-child(2n),
.erp-button-group--grid.erp-button-group--cols-3 > .erp-button-group__item:not(:nth-child(3n + 1)),
.erp-button-group--grid.erp-button-group--cols-4 > .erp-button-group__item:not(:nth-child(4n + 1)) {
  border-left: 1px solid var(--erp-ui-border-soft) !important;
}

.erp-button-group--grid > .erp-button-group__item {
  border-right: 0 !important;
}

.erp-button-group--grid.erp-button-group--cols-2 > .erp-button-group__item:nth-child(n + 3) {
  border-top: 1px solid var(--erp-ui-border-soft) !important;
}

.erp-button-group--grid.erp-button-group--cols-3 > .erp-button-group__item:nth-child(n + 4) {
  border-top: 1px solid var(--erp-ui-border-soft) !important;
}

.erp-button-group--grid.erp-button-group--cols-4 > .erp-button-group__item:nth-child(n + 5) {
  border-top: 1px solid var(--erp-ui-border-soft) !important;
}

.erp-button-group__item--span-all {
  grid-column: 1 / -1;
  border-left: 0 !important;
}

/* == Close button == */
.erp-close {
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: var(--erp-ui-radius);
  background: transparent;
  color: var(--erp-ui-muted);
  cursor: pointer;
}

.erp-close:hover,
.erp-close:focus-visible {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
  outline: none;
}

/* == Labels and badges == */
.erp-badge,
.erp-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 24px;
  padding: 0 8px;
  border-radius: var(--erp-ui-radius-pill);
  border: 1px solid var(--erp-ui-border);
  background: var(--erp-ui-surface);
  color: #334155;
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
  white-space: nowrap;
}

.erp-badge {
  border-color: var(--erp-badge-neutral-border);
  background: var(--erp-badge-neutral-bg);
  color: var(--erp-badge-neutral-text);
}

.erp-label {
  border-radius: var(--erp-ui-radius-sm);
  text-transform: uppercase;
  letter-spacing: .02em;
}

.erp-badge--primary,
.erp-label--primary {
  border-color: var(--erp-badge-primary-border);
  background: var(--erp-badge-primary-bg);
  color: var(--erp-badge-primary-text);
}

.erp-badge--success,
.erp-label--success {
  border-color: var(--erp-badge-success-border);
  background: var(--erp-badge-success-bg);
  color: var(--erp-badge-success-text);
}

.erp-badge--warning,
.erp-label--warning {
  border-color: var(--erp-badge-warning-border);
  background: var(--erp-badge-warning-bg);
  color: var(--erp-badge-warning-text);
}

.erp-badge--promo,
.erp-label--promo {
  border-color: var(--erp-badge-promo-border);
  background: var(--erp-badge-promo-bg);
  color: var(--erp-badge-promo-text);
}

.erp-badge--danger,
.erp-label--danger {
  border-color: var(--erp-badge-danger-border);
  background: var(--erp-badge-danger-bg);
  color: var(--erp-badge-danger-text);
}

.erp-badge--purple,
.erp-label--purple {
  border-color: var(--erp-badge-purple-border);
  background: var(--erp-badge-purple-bg);
  color: var(--erp-badge-purple-text);
}

.erp-badge--disabled,
.erp-label--disabled {
  border-color: var(--erp-badge-disabled-border);
  background: var(--erp-badge-disabled-bg);
  color: var(--erp-badge-disabled-text);
  opacity: .72;
}

.erp-badge-map {
  display: grid;
  gap: var(--erp-ui-space-3, 12px);
  min-width: 0;
}

.erp-badge-map .erp-table {
  min-width: 680px;
}

.erp-badge-map .erp-table td:first-child {
  width: 180px;
}

.erp-badge-map .erp-table td:first-child small {
  display: block;
  margin-top: 5px;
  color: var(--erp-ui-muted, #64748b);
}

@media (max-width: 700px) {
  .erp-badge-map .erp-table {
    min-width: 0;
  }

  .erp-badge-map .erp-table td:first-child {
    width: auto;
  }
}

.erp-product-color-map {
  display: grid;
  gap: var(--erp-ui-space-3, 12px);
  min-width: 0;
}

.erp-product-color-map .erp-table {
  min-width: 720px;
}

.erp-product-color-map .erp-table td:first-child {
  width: 190px;
}

.erp-product-color-map__sample {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.erp-product-color-map .erp-social-color-badge {
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  cursor: default;
}

.erp-product-color-map .erp-social-color-badge:hover,
.erp-product-color-map .erp-social-color-badge:focus-visible {
  transform: none;
}

.erp-product-color-map code {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
}

@media (max-width: 700px) {
  .erp-product-color-map .erp-table {
    min-width: 0;
  }

  .erp-product-color-map .erp-table td:first-child {
    width: auto;
  }
}

/* == Square options == */
.erp-square-option-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: stretch;
}

.erp-square-option-list--scroll {
  flex-wrap: nowrap;
  gap: 0;
  width: 100%;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  border: 1px solid var(--erp-button-group-border);
  border-radius: var(--erp-ui-radius, 8px);
  background: var(--erp-button-group-bg);
  scrollbar-width: none;
  scroll-snap-type: x mandatory;
}

.erp-square-option-list--scroll::-webkit-scrollbar {
  display: none;
}

.erp-square-option-list--scroll .erp-square-option {
  border-top: 0;
  border-bottom: 0;
  border-left: 1px solid var(--erp-button-group-divider);
  border-right: 0;
  scroll-snap-align: start;
}

.erp-square-option-list--scroll .erp-square-option + .erp-square-option {
  margin-left: 0;
}

.erp-square-option-list--scroll .erp-square-option:first-child {
  border-left: 0;
}

.erp-square-option-list--scroll .erp-square-option:last-child {
  border-right: 0;
}

.erp-square-option-list--center {
  justify-content: center;
}

.erp-square-option {
  position: relative;
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 46px;
  border: 1px solid var(--erp-button-group-divider);
  background: var(--erp-button-group-bg);
  color: var(--erp-button-group-hover-text);
  font-size: 14px;
  line-height: 1;
  font-weight: 900;
  user-select: none;
  transition:
    background-color .14s ease,
    border-color .14s ease,
    color .14s ease;
}

button.erp-square-option {
  padding: 0;
  border-radius: 0;
  font-family: inherit;
  appearance: none;
  cursor: pointer;
}

.erp-square-option:link,
.erp-square-option:visited {
  text-decoration: none;
}

.erp-square-option--wide {
  width: auto;
  min-width: 82px;
  max-width: 150px;
  padding: 0 12px;
  flex-basis: auto;
}

.erp-square-option.is-active {
  z-index: 2;
  background: var(--erp-button-group-active-bg);
  border-color: var(--erp-button-group-border);
  color: var(--erp-button-group-active-text);
}

.erp-square-option.is-active .erp-square-option__badge {
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  box-shadow: 0 0 0 2px var(--erp-system-badge-border);
}

.erp-square-option:not(.is-disabled):not([aria-disabled="true"]):hover,
.erp-square-option:not(.is-disabled):not([aria-disabled="true"]):focus-visible {
  z-index: 2;
  background: var(--erp-button-group-hover-bg);
  border-color: var(--erp-button-group-border);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-square-option.is-active:hover,
.erp-square-option.is-active:focus-visible {
  background: var(--erp-button-group-active-bg);
  border-color: var(--erp-button-group-border);
  color: var(--erp-button-group-active-text);
}

.erp-square-option__value {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
}

.erp-square-option__badge {
  position: absolute;
  top: -6px;
  right: -6px;
  min-width: 17px;
  height: 17px;
  padding: 0 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  font-size: 9px;
  line-height: 1;
  font-weight: 900;
  box-shadow: 0 0 0 2px var(--erp-system-badge-border);
  z-index: 1;
}

.erp-square-option.is-disabled,
.erp-square-option[aria-disabled="true"] {
  background: var(--erp-button-group-bg);
  color: #9ca3af;
  border-color: var(--erp-button-group-divider);
  cursor: default;
}

.erp-square-option.is-disabled .erp-square-option__badge,
.erp-square-option[aria-disabled="true"] .erp-square-option__badge {
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
}

.erp-square-option.is-disabled .erp-square-option__badge.is-empty,
.erp-square-option[aria-disabled="true"] .erp-square-option__badge.is-empty {
  background: color-mix(in srgb, var(--erp-ui-danger) 10%, var(--erp-ui-surface));
  color: var(--erp-ui-danger);
}

.erp-square-option.is-disabled .erp-square-option__badge.is-pending,
.erp-square-option[aria-disabled="true"] .erp-square-option__badge.is-pending {
  background: color-mix(in srgb, var(--erp-ui-warning) 14%, var(--erp-ui-surface));
  color: var(--erp-ui-warning);
}

.erp-product-price-history {
  display: grid;
  gap: 16px;
  min-width: 0;
  margin-top: 22px;
  padding-top: 20px;
  border-top: 1px solid var(--erp-ui-border-soft);
}

.erp-product-price-history__head {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  gap: 11px;
  align-items: center;
  min-width: 0;
}

.erp-product-price-history__head-icon,
.erp-product-price-history__marker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--erp-ui-radius-pill);
}

.erp-product-price-history__head-icon {
  width: 38px;
  height: 38px;
  background: color-mix(in srgb, var(--erp-ui-primary) 9%, var(--erp-ui-surface));
  color: var(--erp-ui-primary-dark);
}

.erp-product-price-history__head-icon svg,
.erp-product-price-history__head-icon .lucide {
  width: 18px !important;
  height: 18px !important;
}

.erp-product-price-history__head-copy,
.erp-product-price-history__actor {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-product-price-history__head-copy strong {
  color: var(--erp-ui-text);
  font-size: 15px;
  font-weight: 900;
  line-height: 1.2;
}

.erp-product-price-history__head-copy span,
.erp-product-price-history__actor small {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.erp-product-price-history__count {
  min-height: 26px;
  border-color: var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  font-size: 11px;
}

.erp-product-price-history__timeline {
  position: relative;
  display: grid;
  gap: 12px;
  min-width: 0;
}

.erp-product-price-history__timeline::before {
  content: "";
  position: absolute;
  top: 20px;
  bottom: 20px;
  left: 18px;
  width: 1px;
  background: var(--erp-ui-border-soft);
}

.erp-product-price-history__event {
  position: relative;
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  min-width: 0;
}

.erp-product-price-history__marker {
  position: relative;
  z-index: 1;
  width: 36px;
  height: 36px;
  border: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-primary-dark);
  box-shadow: 0 5px 14px rgba(15, 23, 42, .07);
}

.erp-product-price-history__marker svg,
.erp-product-price-history__marker .lucide {
  width: 16px !important;
  height: 16px !important;
}

.erp-product-price-history__card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-md);
  background: var(--erp-ui-surface);
  box-shadow: 0 8px 24px rgba(15, 23, 42, .045);
  transition: border-color var(--erp-ui-transition), box-shadow var(--erp-ui-transition);
}

.erp-product-price-history__card:hover {
  border-color: var(--erp-ui-border);
  box-shadow: 0 12px 30px rgba(15, 23, 42, .07);
}

.erp-product-price-history__event-head {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 13px 14px;
  background: linear-gradient(180deg, var(--erp-ui-surface), var(--erp-ui-surface-soft));
}

.erp-product-price-history__avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: var(--erp-ui-radius-pill);
  background: color-mix(in srgb, var(--erp-ui-primary) 11%, var(--erp-ui-surface));
  color: var(--erp-ui-primary-dark);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .02em;
}

.erp-product-price-history__actor strong {
  min-width: 0;
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-product-price-history__event-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  min-width: 0;
}

.erp-product-price-history__event-meta time,
.erp-product-price-history__event-meta > span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 24px;
  padding: 0 8px;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

.erp-product-price-history__event-meta time svg,
.erp-product-price-history__event-meta time .lucide {
  width: 13px !important;
  height: 13px !important;
}

.erp-product-price-history__changes {
  display: grid;
  min-width: 0;
  border-top: 1px solid var(--erp-ui-border-soft);
}

.erp-product-price-history__change {
  display: grid;
  grid-template-columns: minmax(120px, .75fr) minmax(0, 1.25fr);
  gap: 8px 14px;
  align-items: center;
  min-width: 0;
  padding: 11px 14px;
  border-top: 1px solid var(--erp-ui-border-soft);
}

.erp-product-price-history__change:first-child {
  border-top: 0;
}

.erp-product-price-history__change-label {
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}

.erp-product-price-history__values {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
}

.erp-product-price-history__values svg,
.erp-product-price-history__values .lucide {
  width: 14px !important;
  height: 14px !important;
  flex: 0 0 14px;
  color: var(--erp-ui-muted-soft);
}

.erp-product-price-history__value {
  display: inline-flex;
  align-items: center;
  min-height: 27px;
  min-width: 0;
  padding: 0 9px;
  border-radius: var(--erp-ui-radius-sm);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}

.erp-product-price-history__value.is-before {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
}

.erp-product-price-history__value.is-after {
  background: color-mix(in srgb, var(--erp-ui-primary) 8%, var(--erp-ui-surface));
  color: var(--erp-ui-primary-dark);
}

.erp-product-price-history__sizes {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  min-width: 0;
}

.erp-product-price-history__sizes small {
  margin-right: 2px;
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.erp-product-price-history__sizes > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 27px;
  min-height: 23px;
  padding: 0 7px;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text-soft);
  font-size: 10px;
  font-weight: 850;
  line-height: 1;
}

.erp-product-price-history__legacy-change {
  margin: 0;
  padding: 11px 14px;
  color: var(--erp-ui-text-soft);
  font-size: 12px;
  line-height: 1.45;
}

.erp-product-price-history .erp-empty-state--compact {
  min-height: 160px;
}

@media (max-width: 700px) {
  .erp-product-price-history__head {
    grid-template-columns: 36px minmax(0, 1fr);
  }

  .erp-product-price-history__head-icon {
    width: 36px;
    height: 36px;
  }

  .erp-product-price-history__count {
    grid-column: 2;
    justify-self: start;
  }

  .erp-product-price-history__timeline::before {
    left: 15px;
  }

  .erp-product-price-history__event {
    grid-template-columns: 30px minmax(0, 1fr);
    gap: 9px;
  }

  .erp-product-price-history__marker {
    width: 30px;
    height: 30px;
  }

  .erp-product-price-history__event-head {
    grid-template-columns: 32px minmax(0, 1fr);
    padding: 12px;
  }

  .erp-product-price-history__avatar {
    width: 32px;
    height: 32px;
  }

  .erp-product-price-history__event-meta {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }

  .erp-product-price-history__change {
    grid-template-columns: 1fr;
    gap: 7px;
    padding: 11px 12px;
  }

  .erp-product-price-history__sizes {
    grid-column: 1;
  }

  .erp-product-price-history__values {
    flex-wrap: wrap;
  }
}

/* == Avatars == */
.erp-avatar {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: var(--erp-ui-radius-pill);
  background: #e5e7eb;
  color: var(--erp-ui-text);
  overflow: hidden;
  font-size: 13px;
  font-weight: 900;
  flex: 0 0 auto;
}

.erp-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.erp-avatar--recent-post.erp-avatar--recent-post {
  position: relative;
  box-sizing: border-box;
  overflow: visible;
  border: 0;
  border-radius: 50%;
  background: transparent;
}

.erp-avatar--recent-post__content {
  position: absolute;
  inset: 0;
  width: auto;
  height: auto;
  z-index: 1;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 50%;
  background: #e5e7eb;
  color: inherit;
}

.erp-avatar--recent-post__content > a,
.erp-avatar--recent-post__content > img,
.erp-avatar--recent-post__content > span {
  width: 100%;
  height: 100%;
  border-radius: inherit;
}

.erp-avatar--recent-post__content > a,
.erp-avatar--recent-post__content > span {
  display: grid;
  place-items: center;
}

.erp-avatar--recent-post__content img {
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 50%;
  object-fit: cover;
}

.erp-avatar--recent-post__ring {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  overflow: visible;
  fill: none;
  stroke: #8a3ab9;
  stroke-linecap: round;
  stroke-width: 3;
  stroke-dasharray: 1;
  stroke-dashoffset: 0;
  transform-origin: 50% 50%;
  pointer-events: none;
  animation: erp-avatar-recent-post-stroke 6s ease-out infinite alternate;
  animation-play-state: paused;
}

.erp-avatar--recent-post.is-recent-post-ring-visible > .erp-avatar--recent-post__ring {
  animation-play-state: running;
}

@keyframes erp-avatar-recent-post-stroke {
  0% {
    stroke: #8a3ab9;
    stroke-dasharray: 1;
  }

  100% {
    stroke: #cd486b;
    transform: rotate(180deg);
    stroke-dasharray: 8;
  }
}

@media (prefers-reduced-motion: reduce) {
  .erp-avatar--recent-post__ring {
    animation: none;
  }
}

.erp-avatar[data-user-profile-id],
.erp-avatar[data-participant-user-id],
[data-app-user-avatar][data-app-user-id],
[data-user-profile-id].erp-social-avatar,
[data-user-profile-id].erp-home-feed-composer__avatar,
[data-user-profile-id].erp-home-personal-feed__avatar {
  cursor: pointer;
}

.erp-home-profile-card__avatar > a {
  display: grid;
  width: 100%;
  height: 100%;
  place-items: center;
  color: inherit;
  text-decoration: none;
}

.erp-home-profile-card__avatar > a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-avatar--lg img,
.erp-avatar--xl img {
  transform: scale(1.06);
}

.erp-avatar--xs { width: 24px; height: 24px; font-size: 10px; }
.erp-avatar--sm { width: 32px; height: 32px; font-size: 11px; }
.erp-avatar--lg { width: 56px; height: 56px; font-size: 18px; }
.erp-avatar--xl { width: 92px; height: 92px; font-size: 28px; }

.erp-avatar-group {
  display: inline-flex;
  align-items: center;
}

.erp-avatar-group .erp-avatar {
  margin-left: -8px;
  border: 2px solid var(--erp-ui-surface);
}

.erp-avatar-group .erp-avatar:first-child {
  margin-left: 0;
}

.erp-users-list__identity {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.erp-users-list__avatar {
  align-self: center;
}

.erp-account-editor {
  --erp-document-step-extra-offset: calc(62px + var(--erp-document-wizard-gap));
  gap: var(--erp-document-wizard-gap);
}

.erp-account-editor__head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 62px;
  min-width: 0;
  padding: 12px 14px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-workspace-radius);
  background: var(--erp-ui-surface);
  box-shadow: var(--erp-ui-shadow-sm);
}

.erp-account-editor__head > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-account-editor__head span:not(.erp-avatar):not([data-user-avatar-fallback]) {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 900;
  line-height: 1.2;
  text-transform: uppercase;
}

.erp-account-editor__head strong {
  min-width: 0;
  color: var(--erp-ui-text, #111827);
  font-size: 18px;
  font-weight: 950;
  line-height: 1.15;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-account-editor__head small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 750;
  line-height: 1.25;
}

.erp-account-editor__head-avatar,
.erp-account-editor__avatar-preview {
  background: var(--erp-ui-surface-muted, #f8fafc);
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-account-editor__avatar-uploader {
  display: grid;
  justify-items: center;
  gap: 8px;
}

.erp-account-editor__avatar-button {
  padding: 0;
  font: inherit;
  cursor: pointer;
}

.erp-account-editor__avatar-button:hover,
.erp-account-editor__avatar-button:focus-visible {
  border-color: #94a3b8;
  outline: 2px solid rgba(17, 24, 39, .16);
  outline-offset: 3px;
}

.erp-account-editor__avatar-photo-grid[hidden] {
  display: none !important;
}

.erp-account-editor__progress .erp-document-progress__item {
  color: var(--erp-button-group-hover-text);
  cursor: pointer;
}

.erp-account-editor__progress .erp-document-progress__item:not(.is-active):hover,
.erp-account-editor__progress .erp-document-progress__item:not(.is-active):focus-visible {
  background: var(--erp-button-group-hover-bg);
  outline: none;
}

.erp-account-editor__progress .erp-document-progress__item:not(.is-active) span {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-text);
}

.erp-account-editor__progress .erp-document-progress__item.is-active {
  color: var(--erp-button-group-active-text);
}

.erp-account-editor__progress .erp-document-progress__item.is-active span {
  background: var(--erp-button-group-active-text);
  color: var(--erp-button-group-active-bg);
}

.erp-account-editor__panel.is-active {
  height: var(--erp-document-step-viewport-h);
  min-height: 0;
  max-height: var(--erp-document-step-viewport-h);
}

.erp-account-editor__profile {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: 12px;
  padding: 12px;
}

.erp-account-editor__avatar-card {
  display: grid;
  align-content: start;
  justify-items: center;
  gap: 12px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-account-editor__avatar-card .erp-field {
  width: 100%;
}

.erp-account-editor__fields {
  align-content: start;
}

.erp-account-editor__bio textarea {
  min-height: 86px;
  line-height: 1.45;
  resize: vertical;
}

.erp-account-editor__delivery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
  padding: 12px;
}

.erp-account-editor__delivery-card {
  display: grid;
  align-content: start;
  min-width: 0;
  border: 1px solid #d1d5db;
  background: #fff;
}

.erp-account-editor__delivery-head {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 64px;
  padding: 10px 12px;
  border-bottom: 1px solid #e5e7eb;
}

.erp-account-editor__delivery-icon {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid #e5e7eb;
  background: #f8fafc;
  color: #111827;
}

.erp-account-editor__delivery-icon svg,
.erp-account-editor__delivery-icon .lucide {
  width: 20px !important;
  height: 20px !important;
}

.erp-account-editor__delivery-head > div,
.erp-account-editor__delivery-body {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.erp-account-editor__delivery-head strong,
.erp-account-editor__delivery-body strong {
  min-width: 0;
  overflow: hidden;
  color: #111827;
  font-size: 14px;
  font-weight: 950;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-account-editor__delivery-body {
  padding: 12px;
}

.erp-account-editor__delivery-body p {
  margin: 0;
  color: #64748b;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.4;
}

.erp-account-editor__delivery-lines {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.erp-account-editor__delivery-lines span {
  min-width: 0;
  overflow: hidden;
  color: #334155;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-account-editor__delivery-lines--muted span {
  color: #64748b;
  font-size: 12px;
}

.erp-account-editor__delivery-missing {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 2px;
}

.erp-account-editor__delivery-missing span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 7px;
  border: 1px solid #e5e7eb;
  background: #f8fafc;
  color: #475569;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
}

@media (max-width: 760px) {
  .erp-account-editor__profile {
    grid-template-columns: 1fr;
  }

  .erp-account-editor__head strong {
    font-size: 16px;
  }
}

/* == Alerts == */
.erp-alert {
  display: grid;
  gap: 4px;
  padding: 12px 14px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  color: #334155;
}

.erp-alert__title {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 900;
}

.erp-alert__text {
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.4;
}

.erp-alert--primary { border-color: #bfdbfe; background: #eff6ff; }
.erp-alert--success { border-color: #bbf7d0; background: #f0fdf4; }
.erp-alert--warning { border-color: #fde68a; background: #fffbeb; }
.erp-alert--danger,
.erp-alert--error { border-color: #fecaca; background: #fef2f2; }

/* == Forms: advanced but safe == */
.erp-form-row {
  display: grid;
  gap: var(--erp-ui-space-2);
}

.erp-form-grid--2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--erp-ui-space-3);
}

.erp-form-grid--3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--erp-ui-space-3);
}

.erp-label-text {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #334155;
  font-size: 13px;
  font-weight: 900;
}

.erp-help-text {
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.35;
}

.erp-control,
.erp-select,
.erp-textarea,
.erp-input {
  width: 100%;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-field-radius);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  font: inherit;
  font-size: 14px;
  outline: none;
  transition: border-color var(--erp-ui-transition), box-shadow var(--erp-ui-transition), background var(--erp-ui-transition);
}

.erp-textarea {
  min-height: 96px;
  resize: vertical;
}

.erp-control:focus,
.erp-select:focus,
.erp-textarea:focus,
.erp-input:focus {
  border-color: color-mix(in srgb, var(--erp-ui-primary) 60%, var(--erp-ui-border));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--erp-ui-primary) 16%, transparent);
}

.erp-control[disabled],
.erp-select[disabled],
.erp-textarea[disabled],
.erp-input[disabled] {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-subtle);
  cursor: not-allowed;
}

.erp-field.is-error .erp-control,
.erp-field.is-error .erp-select,
.erp-field.is-error .erp-textarea,
.erp-control.is-error,
.erp-select.is-error,
.erp-textarea.is-error {
  border-color: #fca5a5;
  background: #fffafa;
}

.erp-field.is-success .erp-control,
.erp-field.is-success .erp-select,
.erp-field.is-success .erp-textarea,
.erp-control.is-success,
.erp-select.is-success,
.erp-textarea.is-success {
  border-color: #86efac;
  background: #fbfffd;
}

.erp-input-group {
  display: flex;
  width: 100%;
  min-width: 0;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-field-radius);
  overflow: hidden;
  background: var(--erp-ui-surface);
  transition: border-color var(--erp-ui-transition), box-shadow var(--erp-ui-transition);
}

.erp-input-group:focus-within {
  border-color: color-mix(in srgb, var(--erp-ui-primary) 60%, var(--erp-ui-border));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--erp-ui-primary) 16%, transparent);
}

.erp-input-group .erp-control,
.erp-input-group .erp-input,
.erp-input-group .erp-select {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  min-width: 0;
}

.erp-input-addon,
.erp-input-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  padding: 0 10px;
  border: 0;
  border-right: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
  font-size: 13px;
  font-weight: 900;
  white-space: nowrap;
}

.erp-input-addon:last-child,
.erp-input-action:last-child {
  border-right: 0;
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-input-action {
  cursor: pointer;
}

.erp-input-action:hover,
.erp-input-action:focus-visible {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
  outline: none;
}

.erp-input-group .erp-control[type='number'] {
  text-align: right;
}

.erp-field--amount-control > span {
  display: block;
  text-align: left;
}

.erp-field--amount-control .erp-control[type='number'],
.erp-field--amount-control .erp-field-control input[type='number'] {
  text-align: center;
  font-variant-numeric: tabular-nums;
}

.erp-field--amount-control .erp-field-control__button--right {
  border-left: 1px solid var(--erp-ui-border-soft);
  color: var(--erp-ui-muted);
}

.erp-field input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']),
.erp-field select,
.erp-field textarea,
.settings-field input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']),
.settings-field select,
.settings-field textarea,
.erp-control,
.erp-select,
.erp-textarea,
.erp-input {
  width: 100%;
  min-width: 0;
  min-height: 40px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-field-radius);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  padding: 9px 10px;
  outline: none;
  transition: border-color var(--erp-ui-transition), box-shadow var(--erp-ui-transition), background var(--erp-ui-transition), color var(--erp-ui-transition);
}

.erp-field textarea,
.settings-field textarea,
.erp-textarea {
  min-height: 82px;
  line-height: 1.4;
  resize: vertical;
}

.erp-field input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']):focus,
.erp-field select:focus,
.erp-field textarea:focus,
.settings-field input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']):focus,
.settings-field select:focus,
.settings-field textarea:focus,
.erp-control:focus,
.erp-select:focus,
.erp-textarea:focus,
.erp-input:focus {
  border-color: color-mix(in srgb, var(--erp-ui-primary) 42%, var(--erp-ui-border));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--erp-ui-primary) 12%, transparent);
}

.erp-field input[readonly],
.erp-field textarea[readonly],
.settings-field input[readonly],
.settings-field textarea[readonly],
.erp-control[readonly],
.erp-input[readonly],
.erp-textarea[readonly] {
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
}

.erp-field .erp-field-control input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']),
.erp-field .erp-field-control textarea,
.settings-field .erp-field-control input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']),
.settings-field .erp-field-control textarea,
.erp-document-item-row .erp-field .erp-field-control input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']),
.erp-document-item-row .erp-field .erp-field-control textarea {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.erp-field .erp-field-control input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']):focus,
.erp-field .erp-field-control textarea:focus,
.settings-field .erp-field-control input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']):focus,
.settings-field .erp-field-control textarea:focus,
.erp-document-item-row .erp-field .erp-field-control input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']):focus,
.erp-document-item-row .erp-field .erp-field-control textarea:focus {
  border: 0;
  box-shadow: none;
}

.erp-document-step--prices .erp-price-row__field input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']) {
  appearance: textfield;
  width: 100%;
  min-width: 0;
  height: 32px;
  min-height: 32px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 850;
  line-height: 32px;
  text-align: center;
}

.erp-document-step--prices .erp-price-row__field input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']):focus {
  border: 0;
  background: transparent;
  box-shadow: none;
}

.erp-document-step--prices .erp-price-row__field input::placeholder {
  color: var(--erp-ui-muted-soft, #94a3b8);
  opacity: 1;
}

.erp-invoice-description-field {
  gap: 0;
}

.erp-invoice-description-control {
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(116px, auto);
  min-width: 0;
  overflow: visible;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-field-radius);
  background: var(--erp-ui-surface);
  transition: border-color var(--erp-ui-transition), box-shadow var(--erp-ui-transition);
}

.erp-invoice-description-control:focus-within {
  border-color: color-mix(in srgb, var(--erp-ui-primary) 42%, var(--erp-ui-border));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--erp-ui-primary) 12%, transparent);
}

.erp-invoice-description-head {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  min-width: 0;
  min-height: 42px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-invoice-description-head label {
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 0 var(--erp-ui-space-3);
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.2;
}

.erp-invoice-description-actions {
  display: flex;
  align-items: stretch;
  flex: 0 0 auto;
}

.erp-description-builder--field-actions {
  display: contents;
}

.erp-invoice-description-emoji-wrap {
  position: relative;
  display: flex;
  align-items: stretch;
}

.erp-invoice-description-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  min-width: 42px;
  height: 42px;
  border: 0;
  border-left: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-muted);
  cursor: pointer;
}

.erp-invoice-description-action:hover,
.erp-invoice-description-action:focus-visible,
.erp-invoice-description-action.is-active {
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-text);
  outline: none;
}

.erp-invoice-description-action i,
.erp-invoice-description-action svg,
.erp-invoice-description-action .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-invoice-description-control textarea {
  min-height: 116px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 11px var(--erp-ui-space-3);
  resize: vertical;
}

.erp-invoice-description-control textarea:focus {
  border: 0;
  box-shadow: none;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__controls .erp-field > input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']) {
  min-height: var(--erp-document-item-field-height);
  height: var(--erp-document-item-field-height);
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  text-align: center;
}

.erp-document-step--items .erp-document-item-row.has-product .erp-document-item-row__controls .erp-field > input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']):focus {
  border: 0;
  background: transparent;
  box-shadow: none;
}

.erp-input-quick-values {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border);
  border-radius: 0;
  background: var(--erp-ui-surface);
}

.erp-input-quick-values__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  border: 0;
  border-right: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
  transition: background var(--erp-ui-transition), color var(--erp-ui-transition);
}

.erp-input-quick-values__button:last-child {
  border-right: 0;
}

.erp-input-quick-values__button:hover,
.erp-input-quick-values__button:focus-visible {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-primary);
  outline: none;
}

.erp-input-quick-values__button:disabled {
  color: var(--erp-ui-muted);
  cursor: not-allowed;
  opacity: .55;
}

.erp-search-field {
  position: relative;
}

.erp-search-field .erp-control,
.erp-search-field .erp-input {
  padding-left: 36px;
}

.erp-search-field__icon {
  position: absolute;
  left: 11px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--erp-ui-muted);
  pointer-events: none;
}

/* == Checkbox, radio, switch == */
.erp-check,
.erp-radio {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #334155;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
}

.erp-check input,
.erp-radio input {
  width: 16px;
  height: 16px;
  accent-color: var(--erp-ui-primary);
}

.erp-switch {
  --switch-w: 44px;
  --switch-h: 24px;
  --switch-dot: 18px;
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  color: #334155;
  font-size: 14px;
  font-weight: 700;
}

.erp-switch input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  opacity: 0;
  pointer-events: none;
}

.erp-switch__track {
  position: relative;
  width: var(--switch-w);
  height: var(--switch-h);
  border-radius: var(--erp-ui-radius-pill);
  background: #cbd5e1;
  transition: background var(--erp-ui-transition);
}

.erp-switch__track::before {
  content: "";
  position: absolute;
  width: var(--switch-dot);
  height: var(--switch-dot);
  left: 3px;
  top: 3px;
  border-radius: var(--erp-ui-radius-pill);
  background: #fff;
  box-shadow: var(--erp-ui-shadow-sm);
  transition: transform var(--erp-ui-transition);
}

.erp-switch input:checked + .erp-switch__track {
  background: var(--erp-ui-success);
}

.erp-switch input:checked + .erp-switch__track::before {
  transform: translateX(20px);
}

/* == Range == */
.erp-range {
  display: grid;
  gap: 8px;
}

.erp-range input[type="range"] {
  width: 100%;
  accent-color: var(--erp-ui-primary);
}

/* == Stepper == */
.erp-stepper {
  display: inline-flex;
  align-items: stretch;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-stepper__btn {
  display: inline-grid;
  place-items: center;
  width: 34px;
  border: 0;
  background: var(--erp-ui-surface-muted);
  color: #334155;
  font-weight: 900;
  cursor: pointer;
}

.erp-stepper__btn:hover {
  background: var(--erp-ui-surface-soft);
}

.erp-stepper__input {
  width: 54px;
  min-height: 34px;
  border: 0;
  border-left: 1px solid var(--erp-ui-border);
  border-right: 1px solid var(--erp-ui-border);
  text-align: center;
  outline: none;
  font-weight: 900;
}

/* == Upload/dropzone == */
.erp-upload {
  display: grid;
  gap: var(--erp-ui-space-2);
}

.erp-upload__dropzone {
  display: grid;
  place-items: center;
  gap: 6px;
  min-height: 132px;
  padding: var(--erp-ui-space-4);
  border: 1px dashed #cbd5e1;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
  text-align: center;
  cursor: pointer;
  transition: border-color var(--erp-ui-transition), background var(--erp-ui-transition);
}

.erp-upload__dropzone:hover,
.erp-upload__dropzone.is-dragover {
  border-color: var(--erp-ui-primary);
  background: #eff6ff;
  color: var(--erp-ui-primary-dark);
}

.erp-upload__title {
  color: var(--erp-ui-text);
  font-weight: 900;
}

.erp-upload__hint {
  font-size: 12px;
}

/* == Navigation: nav, tabs, subnav, breadcrumb == */
.erp-nav {
  display: grid;
  gap: 4px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.erp-nav__item,
.erp-nav a {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 8px 10px;
  border-radius: var(--erp-ui-radius);
  color: #475569;
  font-size: 13px;
  font-weight: 800;
}

.erp-nav__item:hover,
.erp-nav__item.is-active,
.erp-nav a:hover,
.erp-nav a.is-active {
  background: var(--erp-ui-surface-soft);
  color: #0f172a;
  text-decoration: none;
}

[data-erp-tab-panel][hidden] {
  display: none !important;
}

.erp-subnav {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.erp-subnav a,
.erp-subnav__item {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: var(--erp-ui-radius-pill);
  color: var(--erp-ui-muted);
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}

.erp-subnav a:hover,
.erp-subnav a.is-active,
.erp-subnav__item:hover,
.erp-subnav__item.is-active {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
  text-decoration: none;
}

.erp-breadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  color: var(--erp-ui-muted);
  font-size: 13px;
  font-weight: 800;
}

.erp-breadcrumb a {
  color: #334155;
}

.erp-breadcrumb__separator {
  color: #cbd5e1;
}

/* == Dropdown, dropbar, popover == */
.erp-dropdown-wrap,
.erp-popover-wrap {
  position: relative;
  display: inline-block;
}

/* Єдина ієрархія плаваючих поверхонь: меню над контентом, overlay та модалки над меню. */
.erp-floating-surface-anchor.erp-floating-surface-anchor {
  position: relative;
  z-index: var(--erp-layer-floating);
}

.erp-floating-surface-stack-host.erp-floating-surface-stack-host {
  z-index: calc(var(--erp-layer-floating) - 10);
}

.erp-floating-surface-overflow-host {
  overflow: visible !important;
}

/* Native top layer lets every shared menu escape clipped and scrollable parents. */
.erp-floating-surface--top-layer.erp-floating-surface--top-layer {
  position: fixed !important;
  inset: auto !important;
  box-sizing: border-box;
  margin: 0 !important;
  transform: none !important;
}

.erp-floating-surface--top-layer::backdrop {
  display: none;
}

.erp-menu-surface,
.erp-dropdown,
.erp-popover,
.erp-select-control__menu,
.erp-suggestions {
  display: grid;
  gap: var(--erp-menu-gap);
  max-width: var(--erp-menu-max-width);
  max-height: var(--erp-menu-max-height);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  padding: var(--erp-menu-padding);
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-popover-radius);
  background: var(--erp-ui-surface);
  box-shadow: var(--erp-ui-shadow);
  -webkit-overflow-scrolling: touch;
}

.erp-menu-surface,
.erp-dropdown,
.erp-popover {
  position: absolute;
  z-index: var(--erp-layer-floating);
  min-width: min(var(--erp-menu-min-width), calc(100vw - 16px));
}

.erp-dropdown[hidden],
.erp-popover[hidden],
.erp-menu-surface[hidden],
.erp-select-control__menu[hidden],
.erp-suggestions[hidden] {
  display: none !important;
}

.erp-dropdown--right,
.erp-popover--right {
  right: 0;
}

.erp-dropdown--below,
.erp-popover--below {
  top: calc(100% + 6px);
}

.erp-receipt-share-button-host {
  position: relative;
}

.erp-receipt-share-menu--receipt {
  position: absolute;
  bottom: calc(100% + 6px);
  right: 0;
  margin: 0;
  z-index: var(--erp-layer-floating);
}

.erp-dropdown__item,
.erp-menu-item,
.erp-select-control__option,
.erp-suggestions__item:not(.erp-suggestions__item--product) {
  display: flex;
  align-items: center;
  gap: var(--erp-menu-item-gap);
  min-height: var(--erp-menu-item-min-height);
  width: 100%;
  padding: var(--erp-menu-item-padding);
  border: 0;
  border-radius: var(--erp-menu-item-radius);
  background: transparent;
  color: var(--erp-ui-text);
  font: inherit;
  font-size: var(--erp-menu-item-font-size);
  font-weight: var(--erp-menu-item-font-weight);
  text-align: left;
  text-decoration: none;
  cursor: pointer;
}

.erp-dropdown__item:hover,
.erp-menu-item:hover,
.erp-select-control__option:hover,
.erp-suggestions__item:not(.erp-suggestions__item--product):hover,
.erp-dropdown__item:focus-visible,
.erp-menu-item:focus-visible,
.erp-select-control__option:focus-visible,
.erp-select-control__option.is-active,
.erp-suggestions__item:not(.erp-suggestions__item--product):focus-visible {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
  outline: none;
  text-decoration: none;
}

.erp-dropdown__item.is-active,
.erp-dropdown__item[aria-current="true"],
.erp-menu-item.is-active,
.erp-menu-item[aria-current="true"],
.erp-select-control__option.is-selected,
.erp-select-control__option[aria-selected="true"] {
  background: color-mix(in srgb, var(--erp-ui-primary) 11%, var(--erp-ui-surface));
  color: var(--erp-ui-text);
}

.erp-dropdown__item:disabled,
.erp-dropdown__item[aria-disabled="true"],
.erp-menu-item:disabled,
.erp-menu-item[aria-disabled="true"],
.erp-select-control__option:disabled {
  opacity: .48;
  cursor: not-allowed;
}

.erp-dropdown__item.is-danger,
.erp-menu-item.is-danger {
  color: var(--erp-ui-danger);
}

.erp-dropdown__item.is-danger:hover,
.erp-menu-item.is-danger:hover,
.erp-dropdown__item.is-danger:focus-visible,
.erp-menu-item.is-danger:focus-visible {
  background: color-mix(in srgb, var(--erp-ui-danger) 9%, var(--erp-ui-surface));
  color: var(--erp-ui-danger);
}

.erp-dropdown__item > :is(i, svg, .lucide),
.erp-menu-item > :is(i, svg, .lucide) {
  box-sizing: border-box;
  width: var(--erp-menu-icon-box-size) !important;
  height: var(--erp-menu-icon-box-size) !important;
  padding: calc((var(--erp-menu-icon-box-size) - var(--erp-menu-icon-size)) / 2);
  border-radius: 50%;
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  flex-shrink: 0;
}

.erp-menu-item--choice {
  display: grid;
  grid-template-columns: var(--erp-menu-icon-box-size) minmax(0, 1fr) 20px;
  padding-left: 6px;
}

.erp-menu-item__icon {
  width: var(--erp-menu-icon-box-size);
  height: var(--erp-menu-icon-box-size);
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
}

.erp-menu-item__icon :is(svg, .lucide),
.erp-menu-item__check :is(svg, .lucide) {
  width: var(--erp-menu-icon-size) !important;
  height: var(--erp-menu-icon-size) !important;
}

.erp-menu-item__label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-menu-item__check {
  display: inline-grid;
  place-items: center;
  color: var(--erp-ui-primary);
  opacity: 0;
}

.erp-menu-item--choice:is(.is-active, .is-selected, [aria-current="true"], [aria-selected="true"]) .erp-menu-item__icon {
  background: color-mix(in srgb, var(--erp-ui-primary) 18%, var(--erp-ui-surface));
  color: var(--erp-ui-text);
}

.erp-menu-item--choice:is(.is-active, .is-selected, [aria-current="true"], [aria-selected="true"]) .erp-menu-item__check {
  opacity: 1;
}

.erp-dropdown__divider {
  height: 1px;
  margin: 6px 0;
  background: var(--erp-ui-border-soft);
}

/* == Accordion / collapsible == */
.erp-accordion {
  display: grid;
  gap: 8px;
}

.erp-accordion__item {
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  overflow: hidden;
}

.erp-accordion__toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  width: 100%;
  min-height: 42px;
  padding: 0 12px;
  border: 0;
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  font-weight: 900;
  text-align: left;
  cursor: pointer;
}

.erp-accordion__toggle:hover,
.erp-accordion__toggle:focus-visible {
  background: var(--erp-ui-surface-muted);
  outline: none;
}

.erp-accordion__body {
  padding: 12px;
  border-top: 1px solid var(--erp-ui-border-soft);
  color: #334155;
  font-size: 14px;
  line-height: 1.45;
}

.erp-accordion__body[hidden] {
  display: none !important;
}

/* == Offcanvas == */
.erp-offcanvas-root {
  position: fixed;
  inset: 0;
  z-index: var(--erp-layer-overlay);
  pointer-events: none;
}

.erp-offcanvas-root.is-open {
  pointer-events: auto;
}

.erp-offcanvas-backdrop {
  position: absolute;
  inset: 0;
  padding: 0;
  border: 0;
  background: rgba(15, 23, 42, .36);
  opacity: 0;
  appearance: none;
  transition: opacity var(--erp-ui-transition);
}

.erp-offcanvas-root.is-open .erp-offcanvas-backdrop {
  opacity: 1;
}

.erp-offcanvas {
  position: absolute;
  top: 0;
  bottom: 0;
  width: min(380px, 92vw);
  background: var(--erp-ui-surface);
  box-shadow: var(--erp-ui-shadow-lg);
  transform: translateX(-100%);
  transition: transform var(--erp-ui-transition);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.erp-offcanvas--left {
  left: 0;
  transform: translateX(-100%);
}

.erp-offcanvas--right {
  right: 0;
  transform: translateX(100%);
}

.erp-offcanvas-root.is-open .erp-offcanvas {
  transform: translateX(0);
}

.erp-offcanvas__head,
.erp-offcanvas__footer {
  padding: 12px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-offcanvas__footer {
  border-top: 1px solid var(--erp-ui-border-soft);
  border-bottom: 0;
}

.erp-offcanvas__body {
  min-height: 0;
  overflow: auto;
  padding: 12px;
}

/* == Product catalog filters == */
.erp-products-category-row {
  min-width: 0;
  margin-bottom: var(--erp-ui-space-3);
  padding: 0 0 var(--erp-ui-space-3);
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-products-category-row__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-3);
  min-height: 38px;
  margin-bottom: 8px;
}

.erp-products-category-row__title {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.erp-products-category-row__title strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.2;
  font-weight: 900;
}

.erp-products-category-row__title small {
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-products-filter-choice,
.erp-products-filter-option {
  position: relative;
  min-width: 0;
  margin: 0;
  cursor: pointer;
}

.erp-products-filter-choice {
  width: 100%;
}

button.erp-products-filter-choice,
.erp-products-filter-choice__control {
  display: grid;
  grid-template-columns: var(--erp-category-icon-filter-size) minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 58px;
  padding: 6px 9px;
  border: 1px solid transparent;
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-button-group-text);
  font: inherit;
  font-size: 12px;
  line-height: 1.15;
  font-weight: 850;
  text-align: left;
  appearance: none;
  transition: background var(--erp-ui-transition), border-color var(--erp-ui-transition), color var(--erp-ui-transition), box-shadow var(--erp-ui-transition);
}

.erp-products-filter-choice__label {
  display: grid;
  gap: 2px;
  overflow: hidden;
  min-width: 0;
}

.erp-products-filter-choice__label > span,
.erp-products-filter-choice__label > small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-products-filter-choice__label > small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 10px;
  font-weight: 700;
}

.erp-products-filter-choice > input:checked + .erp-products-filter-choice__control .erp-products-filter-choice__label > small {
  color: currentColor;
  opacity: .78;
}

.erp-products-filter-choice > input,
.erp-products-filter-option > input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.erp-products-filter-choice :is(svg, .lucide) {
  width: 18px !important;
  height: 18px !important;
}

.erp-products-filter-choice .erp-shoe-category-icon--filter > :is(i, svg, .lucide, .erp-shoe-category-icon__svg) {
  width: 100% !important;
  height: 100% !important;
}

button.erp-products-filter-choice:is(:hover, :focus-visible),
.erp-products-filter-choice:hover .erp-products-filter-choice__control,
.erp-products-filter-choice > input:focus-visible + .erp-products-filter-choice__control {
  border-color: transparent;
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

button.erp-products-filter-choice.is-active,
.erp-products-filter-choice > input:checked + .erp-products-filter-choice__control {
  border-color: transparent;
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
  box-shadow: none;
}

.erp-products-catalog-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(312px, 26vw, 344px);
  align-items: start;
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-products-catalog-layout.is-filter-panel-collapsed {
  grid-template-columns: minmax(0, 1fr);
}

.erp-products-catalog-layout__content {
  min-width: 0;
}

/* The warehouse grid follows the filter-panel state instead of relying on auto-fill. */
.page-products .erp-products-catalog-layout:not(.is-filter-panel-collapsed) .erp-list-card-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.page-products .erp-products-catalog-layout.is-filter-panel-collapsed .erp-list-card-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.erp-products-filter-panel {
  position: sticky;
  top: calc(var(--erp-page-toolbar-h, 54px) + var(--erp-ui-space-3));
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  width: 100%;
  height: var(--erp-products-filter-available-height, 520px);
  max-height: var(--erp-products-filter-available-height, 520px);
  min-height: 260px;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-md, 8px);
  background: var(--erp-ui-surface);
  box-shadow: none;
}

.erp-products-filter-panel.is-loading {
  pointer-events: none;
}

.erp-products-filter-panel__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-3);
  min-height: 60px;
  padding: 12px 14px 10px;
}

.erp-products-filter-panel__title,
.erp-products-filter-panel__head-actions {
  display: flex;
  align-items: center;
  min-width: 0;
}

.erp-products-filter-panel__title {
  gap: 10px;
}

.erp-products-filter-panel__head-actions {
  flex: 0 0 auto;
  gap: 8px;
}

.erp-products-filter-panel__title-icon {
  position: relative;
  display: inline-grid;
  place-items: center;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
}

.erp-products-filter-panel__title-icon :is(i, svg, .lucide) {
  width: 17px !important;
  height: 17px !important;
}

.erp-products-filter-panel__heading {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-products-filter-panel__heading strong {
  color: var(--erp-ui-text);
  font-size: 14px;
  line-height: 1.2;
  font-weight: 900;
}

.erp-products-filter-panel__heading small {
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-products-filter-panel__badge {
  position: absolute;
  top: -6px;
  right: -6px;
  display: inline-grid;
  place-items: center;
  min-width: 19px;
  height: 19px;
  padding: 0 4px;
  border: 2px solid var(--erp-system-badge-border);
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  box-shadow: var(--erp-system-badge-shadow);
  font-size: 9px;
  line-height: 1;
  font-weight: 900;
}

.erp-products-filter-panel__collapse {
  flex: 0 0 30px;
}

button.erp-products-filter-floating-button {
  position: fixed;
  right: 22px;
  bottom: calc(var(--erp-footer-h, 56px) + 18px);
  z-index: var(--erp-layer-floating);
  display: inline-grid;
  place-items: center;
  width: 52px;
  height: 52px;
  padding: 0;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  box-shadow: var(--erp-ui-shadow-lg);
  cursor: pointer;
  appearance: none;
}

.erp-products-filter-floating-button:is(:hover, :focus-visible) {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-products-filter-floating-button :is(i, svg, .lucide) {
  width: 21px !important;
  height: 21px !important;
}

.erp-products-filter-floating-button__badge {
  position: absolute;
  top: -4px;
  right: -4px;
  display: inline-grid;
  place-items: center;
  min-width: 21px;
  height: 21px;
  padding: 0 5px;
  border: 2px solid var(--erp-system-badge-border);
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  box-shadow: var(--erp-system-badge-shadow);
  font-size: 10px;
  line-height: 1;
  font-weight: 900;
}

.erp-products-filter-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  flex: 0 0 auto;
  width: auto;
  margin: 0 12px 12px;
  padding: 3px;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-md, 8px);
  background: var(--erp-ui-surface-soft);
}

.erp-products-filter-tabs .erp-tabs__item {
  position: relative;
  min-height: 34px;
  padding-inline: 6px;
  border: 1px solid transparent;
  border-radius: calc(var(--erp-ui-radius-md, 8px) - 3px);
  background: transparent;
  color: var(--erp-ui-muted);
  font-size: 11px;
}

.erp-products-filter-tabs .erp-tabs__item + .erp-tabs__item {
  border-left: 1px solid transparent;
}

.erp-products-filter-tabs .erp-tabs__item:is(:hover, :focus-visible) {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
}

.erp-products-filter-tabs .erp-tabs__item.is-active {
  border-color: transparent;
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
  box-shadow: none;
}

.erp-products-filter-tabs .erp-tabs__item :is(svg, .lucide) {
  width: 16px !important;
  height: 16px !important;
}

.erp-products-filter-tabs__count {
  position: absolute;
  top: 1px;
  right: 1px;
  display: inline-grid;
  place-items: center;
  min-width: 19px !important;
  height: 19px;
  padding: 0 4px;
  overflow: visible !important;
  border: 2px solid var(--erp-system-badge-border);
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  box-shadow: var(--erp-system-badge-shadow);
  font-size: 9px;
  line-height: 1;
  font-weight: 900;
}

.erp-products-filter-tabs__count[hidden],
.erp-products-filter-panel__badge[hidden],
.erp-products-filter-floating-button__badge[hidden] {
  display: none;
}

.erp-products-filter-panel__body {
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0 12px 14px;
  overscroll-behavior-y: contain;
  scrollbar-width: thin;
}

.erp-products-filter-section {
  min-width: 0;
  padding: 0;
}

.erp-products-filter-section[hidden] {
  display: none;
}

.erp-products-filter-slider-actions {
  display: inline-grid;
  grid-template-columns: repeat(2, 30px);
  flex: 0 0 auto;
  overflow: hidden;
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-ui-surface-soft);
}

.erp-products-filter-slider-actions[hidden] {
  display: none;
}

.erp-products-filter-slider-actions .erp-icon-btn {
  width: 30px;
  height: 30px;
  min-width: 30px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-muted);
}

.erp-products-filter-slider-actions .erp-icon-btn:is(:hover, :focus-visible):not(:disabled) {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
}

.erp-products-filter-slider-actions .erp-icon-btn + .erp-icon-btn {
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-products-filter-slider-actions .erp-icon-btn:disabled {
  opacity: .35;
}

.erp-products-filter-category-slider {
  width: 100%;
  min-width: 0;
  margin-inline: auto;
  overflow: hidden;
}

.erp-products-filter-category-track {
  --erp-products-category-slide-index: 0;
  display: flex;
  min-width: 0;
  transform: translateX(calc(var(--erp-products-category-slide-index) * -100%));
  transition: transform 220ms cubic-bezier(.22, .61, .36, 1);
  will-change: transform;
}

.erp-products-filter-category-slide {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-rows: repeat(2, 42px);
  flex: 0 0 100%;
  gap: 6px;
  min-width: 100%;
  min-height: 90px;
  align-content: start;
}

.erp-products-filter-slider-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 22px;
  padding-top: 8px;
}

.erp-products-filter-slider-dot {
  width: 6px;
  height: 6px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--erp-ui-border);
  cursor: pointer;
  transition: width var(--erp-ui-transition), border-radius var(--erp-ui-transition), background var(--erp-ui-transition);
}

.erp-products-filter-slider-dot.is-active {
  width: 18px;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-system-badge-bg);
}

.erp-products-filter-options {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-products-filter-options--colors {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.erp-products-filter-options--sizes {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 6px;
}

.erp-products-filter-option__control {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  min-height: 40px;
  padding: 6px 8px;
  border: 1px solid transparent;
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-button-group-text);
  font-size: 12px;
  line-height: 1.2;
  font-weight: 800;
  transition: background var(--erp-ui-transition), border-color var(--erp-ui-transition), color var(--erp-ui-transition);
}

.erp-products-filter-option__label {
  flex: 1 1 auto;
  overflow: hidden;
  min-width: 0;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: normal;
}

.erp-products-filter-option__check {
  display: block;
  flex: 0 0 14px;
  width: 14px !important;
  height: 14px !important;
  color: var(--erp-ui-primary);
  opacity: 0;
  transform: scale(.75);
  transition: opacity var(--erp-ui-transition), transform var(--erp-ui-transition);
}

.erp-products-filter-option:hover .erp-products-filter-option__control,
.erp-products-filter-option > input:focus-visible + .erp-products-filter-option__control {
  border-color: var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
  outline: none;
}

.erp-products-filter-option > input:checked + .erp-products-filter-option__control {
  border-color: transparent;
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.erp-products-filter-option > input:checked + .erp-products-filter-option__control .erp-products-filter-option__check {
  color: var(--erp-button-group-active-text);
  opacity: 1;
  transform: scale(1);
}

.erp-products-filter-option--size .erp-products-filter-option__control {
  justify-content: center;
  min-height: 38px;
  padding: 5px;
  border-color: transparent;
  background: var(--erp-ui-surface-soft);
}

.erp-products-filter-swatch {
  display: inline-block;
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  border: 1px solid rgba(148, 163, 184, .45);
  border-radius: 50%;
  background: #cbd5e1;
}

.erp-products-filter-swatch.is-black-white { background: var(--erp-product-color-black-white); }
.erp-products-filter-swatch.is-black { background: var(--erp-product-color-black); }
.erp-products-filter-swatch.is-white { background: var(--erp-product-color-white); border-color: #cbd5e1; }
.erp-products-filter-swatch.is-beige { background: var(--erp-product-color-beige); }
.erp-products-filter-swatch.is-gray { background: var(--erp-product-color-gray); }
.erp-products-filter-swatch.is-graphite { background: var(--erp-product-color-graphite); }
.erp-products-filter-swatch.is-light-brown { background: var(--erp-product-color-light-brown); }
.erp-products-filter-swatch.is-brown { background: var(--erp-product-color-brown); }
.erp-products-filter-swatch.is-cappuccino { background: var(--erp-product-color-cappuccino); }
.erp-products-filter-swatch.is-mocha { background: var(--erp-product-color-mocha); }
.erp-products-filter-swatch.is-navy { background: var(--erp-product-color-navy); }
.erp-products-filter-swatch.is-blue { background: var(--erp-product-color-blue); }
.erp-products-filter-swatch.is-sky { background: var(--erp-product-color-sky); }
.erp-products-filter-swatch.is-green { background: var(--erp-product-color-green); }
.erp-products-filter-swatch.is-olive { background: var(--erp-product-color-olive); }
.erp-products-filter-swatch.is-red { background: var(--erp-product-color-red); }
.erp-products-filter-swatch.is-burgundy { background: var(--erp-product-color-burgundy); }
.erp-products-filter-swatch.is-raspberry { background: var(--erp-product-color-raspberry); }
.erp-products-filter-swatch.is-pink { background: var(--erp-product-color-pink); }
.erp-products-filter-swatch.is-fuchsia { background: var(--erp-product-color-fuchsia); }
.erp-products-filter-swatch.is-powder { background: var(--erp-product-color-powder); }
.erp-products-filter-swatch.is-yellow { background: var(--erp-product-color-yellow); }
.erp-products-filter-swatch.is-orange { background: var(--erp-product-color-orange); }
.erp-products-filter-swatch.is-purple { background: var(--erp-product-color-purple); }
.erp-products-filter-swatch.is-cream { background: var(--erp-product-color-cream); border-color: #cbd5e1; }
.erp-products-filter-swatch.is-gold { background: var(--erp-product-color-gold); }
.erp-products-filter-swatch.is-silver { background: var(--erp-product-color-silver); }
.erp-products-filter-swatch.is-khaki { background: var(--erp-product-color-khaki); }
.erp-products-filter-swatch.is-unknown { background: var(--erp-product-color-unknown); }

.erp-products-filter-section__empty {
  margin: 0;
  padding: 8px 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
}

.erp-products-filter-panel__footer {
  display: block;
  padding: 0;
  border-top: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.erp-products-filter-panel__reset {
  display: flex;
  align-items: center;
  width: 100%;
  min-width: 0;
  min-height: 50px;
  justify-content: center;
  gap: 6px;
  padding: 0 14px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  appearance: none;
  transition: background var(--erp-ui-transition), color var(--erp-ui-transition);
}

.erp-products-filter-panel__reset:is(:hover, :focus-visible):not(:disabled) {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
  outline: none;
}

.erp-products-filter-panel__reset:disabled {
  cursor: default;
  opacity: .45;
}

.erp-products-filter-panel__reset :is(i, svg, .lucide) {
  width: 16px !important;
  height: 16px !important;
}

@media (max-width: 980px) {
  .erp-products-catalog-layout {
    grid-template-columns: minmax(0, 1fr) minmax(260px, 280px);
  }

  .erp-products-catalog-layout.is-filter-panel-collapsed {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-products .erp-products-catalog-layout:not(.is-filter-panel-collapsed) .erp-list-card-grid,
  .page-products .erp-products-catalog-layout.is-filter-panel-collapsed .erp-list-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

}

@media (max-width: 760px) {
  .erp-products-catalog-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-products .erp-products-catalog-layout:not(.is-filter-panel-collapsed) .erp-list-card-grid,
  .page-products .erp-products-catalog-layout.is-filter-panel-collapsed .erp-list-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .erp-products-filter-panel {
    position: relative;
    top: auto;
    order: -1;
    height: auto;
    max-height: none;
    min-height: 0;
  }

  .erp-products-filter-panel__body {
    max-height: 340px;
  }

  .erp-products-filter-floating-button {
    right: 14px;
    bottom: calc(var(--erp-footer-h, 56px) + 14px);
  }

}

@media (max-width: 520px) {
  .erp-products-filter-category-slide {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(4, 42px);
    min-height: 186px;
  }
}

/* == Progress, spinner, loading == */
.erp-progress {
  width: 100%;
  height: 8px;
  overflow: hidden;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-ui-surface-soft);
}

.erp-progress__bar {
  height: 100%;
  border-radius: inherit;
  background: var(--erp-ui-primary);
}

.erp-progress--success .erp-progress__bar { background: var(--erp-ui-success); }
.erp-progress--warning .erp-progress__bar { background: var(--erp-ui-warning); }
.erp-progress--danger .erp-progress__bar { background: var(--erp-ui-danger); }

.erp-spinner {
  --erp-spinner-size: 20px;
  --erp-spinner-dot: calc(var(--erp-spinner-size) * .24);
  --erp-spinner-radius: calc(var(--erp-spinner-size) * -.33);
  --erp-spinner-duration: 1.75s;
  position: relative;
  display: inline-block;
  width: var(--erp-spinner-size);
  height: var(--erp-spinner-size);
  border: 0;
  border-radius: 50%;
  background: transparent;
}

.erp-spinner__dot {
  position: absolute;
  display: block;
  left: calc(50% - (var(--erp-spinner-dot) / 2));
  top: calc(50% - (var(--erp-spinner-dot) / 2));
  width: var(--erp-spinner-dot);
  height: var(--erp-spinner-dot);
  border-radius: 50%;
  pointer-events: none;
  background: #5D8091;
  filter: blur(.35px);
  animation: erp-spinner-orbit var(--erp-spinner-duration) ease-in-out infinite;
  animation-delay: calc(var(--erp-spinner-index, 1) * -.12s);
}

.erp-spinner__dot:nth-child(1) { background: #5D8091; }
.erp-spinner__dot:nth-child(2) { background: #789ba2; }
.erp-spinner__dot:nth-child(3) { background: #A4D6C9; }
.erp-spinner__dot:nth-child(4) { background: #c5a5a0; }
.erp-spinner__dot:nth-child(5) { background: #E67270; }
.erp-spinner__dot:nth-child(6) { background: #bd747b; }
.erp-spinner__dot:nth-child(7) { background: #6f8f99; }

.erp-spinner:not([data-erp-spinner-enhanced="1"])::before {
  content: "";
  position: absolute;
  left: calc(50% - (var(--erp-spinner-dot) / 2));
  top: calc(50% - (var(--erp-spinner-dot) / 2));
  width: var(--erp-spinner-dot);
  height: var(--erp-spinner-dot);
  border-radius: 50%;
  background: #5D8091;
  filter: blur(.35px);
  animation: erp-spinner-orbit var(--erp-spinner-duration) ease-in-out infinite;
  box-shadow:
    0 calc(var(--erp-spinner-size) * -.33) 0 #5D8091,
    calc(var(--erp-spinner-size) * .26) calc(var(--erp-spinner-size) * -.2) 0 #789ba2,
    calc(var(--erp-spinner-size) * .33) calc(var(--erp-spinner-size) * .07) 0 #A4D6C9,
    calc(var(--erp-spinner-size) * .15) calc(var(--erp-spinner-size) * .3) 0 #c5a5a0,
    calc(var(--erp-spinner-size) * -.15) calc(var(--erp-spinner-size) * .3) 0 #E67270,
    calc(var(--erp-spinner-size) * -.33) calc(var(--erp-spinner-size) * .07) 0 #bd747b,
    calc(var(--erp-spinner-size) * -.26) calc(var(--erp-spinner-size) * -.2) 0 #6f8f99;
}

.erp-action-spinner {
  --erp-spinner-size: 16px;
  width: var(--erp-spinner-size);
  height: var(--erp-spinner-size);
  flex: 0 0 16px;
  margin-inline-start: 6px;
  pointer-events: none;
}

.erp-action-spinner[hidden] {
  display: none !important;
}

.is-saving,
.is-loading {
  cursor: progress;
}

.erp-switch.is-saving,
.erp-pending-button.is-saving {
  pointer-events: none;
  opacity: .78;
}

.erp-pending-host {
  position: relative;
}

.erp-pending-button.is-saving {
  color: transparent !important;
}

.erp-pending-button.is-saving > :not(.erp-action-spinner) {
  opacity: 0;
  visibility: hidden;
}

.erp-pending-button .erp-action-spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0;
  translate: -50% -50%;
}

.erp-pending-region .erp-action-spinner {
  margin: 0;
}

@keyframes erp-spinner-orbit {
  0% {
    transform: rotate(0deg) translateY(var(--erp-spinner-radius)) rotate(0deg);
  }

  70% {
    transform: rotate(360deg) translateY(var(--erp-spinner-radius)) rotate(-360deg);
  }

  100% {
    transform: rotate(360deg) translateY(var(--erp-spinner-radius)) rotate(-360deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .erp-spinner__dot,
  .erp-spinner:not([data-erp-spinner-enhanced="1"])::before {
    animation: none;
  }
}

.erp-skeleton {
  position: relative;
  overflow: hidden;
  border-radius: var(--erp-ui-radius-sm);
  background: #e5e7eb;
}

.erp-skeleton::after {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(-100%);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.6), transparent);
  animation: erp-shimmer 1.2s infinite;
}

@keyframes erp-shimmer {
  100% { transform: translateX(100%); }
}

.erp-skeleton-line {
  height: 12px;
}

.erp-skeleton-card {
  min-height: 120px;
}

/* == States == */
.erp-state-card {
  display: grid;
  place-items: center;
  gap: 8px;
  min-height: 180px;
  padding: 24px;
  border: 1px dashed var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
  text-align: center;
}

.erp-state-card__icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
}

.erp-state-card__title {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 16px;
  font-weight: 900;
}

.erp-state-card__text {
  max-width: 420px;
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.45;
}

/* == KPI / dashboard == */
.erp-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: var(--erp-ui-space-3);
}

.erp-kpi-card {
  --erp-kpi-accent: #5d8091;
  --erp-kpi-accent-soft: color-mix(in srgb, var(--erp-kpi-accent) 10%, var(--erp-ui-surface));
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: grid;
  align-content: start;
  gap: 4px;
  min-width: 0;
  min-height: 76px;
  padding: 12px 14px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.erp-kpi-card__label {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.erp-kpi-card__value {
  color: var(--erp-ui-text, #0f172a);
  font-size: 22px;
  line-height: 1;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.erp-kpi-card__meta {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 700;
}

.erp-kpi-card.is-success { --erp-kpi-accent: #2f8f78; }
.erp-kpi-card.is-warning { --erp-kpi-accent: #c77a25; }
.erp-kpi-card.is-danger { --erp-kpi-accent: #cf4f5f; }
.erp-kpi-card.is-primary { --erp-kpi-accent: #5d8091; }

/* == Analytics dashboard == */
.page-analytics {
  gap: var(--erp-ui-space-4, 16px);
  padding-bottom: calc(var(--erp-footer-h, 56px) + var(--erp-ui-space-4, 16px));
}

.erp-analytics-main,
.erp-analytics-attention,
.erp-analytics-card {
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface, #ffffff);
  border-radius: var(--erp-ui-radius-lg, 12px);
  overflow: hidden;
}

.erp-analytics-section-head h2 {
  margin: 0;
  color: var(--erp-ui-text, #111827);
  line-height: 1.12;
  font-weight: 900;
  letter-spacing: 0;
}

.erp-analytics-section-head p {
  max-width: 720px;
  margin: 0;
  color: var(--erp-ui-muted, #64748b);
  font-size: 13px;
  line-height: 1.5;
}

.erp-analytics-eyebrow,
.erp-analytics-list__item small,
.erp-analytics-attention__item small {
  color: var(--erp-ui-muted, #64748b);
}

.erp-analytics-eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 18px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.erp-analytics-attention__icon svg,
.erp-analytics-attention__icon .lucide {
  width: var(--erp-icon-size, 18px);
  height: var(--erp-icon-size, 18px);
}

.erp-analytics-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: var(--erp-ui-space-4, 16px);
  align-items: stretch;
}

.erp-analytics-main,
.erp-analytics-card,
.erp-analytics-attention {
  min-width: 0;
}

.erp-analytics-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-4, 16px);
  min-height: 72px;
  padding: var(--erp-ui-space-4, 16px);
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-analytics-section-head > div:not(.erp-segmented) {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-analytics-section-head h2 {
  font-size: 17px;
}

.erp-analytics-chart-switch {
  display: flex;
  width: min(560px, 100%);
  max-width: 560px;
}

.erp-analytics-chart-stage {
  min-height: 320px;
}

.erp-analytics-chart-panel[hidden] {
  display: none;
}

.erp-analytics-chart {
  position: relative;
  min-width: 0;
  min-height: 320px;
  padding: var(--erp-ui-space-4, 16px);
}

.erp-analytics-chart canvas {
  width: 100% !important;
  height: 288px !important;
}

.erp-analytics-drilldown {
  border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-analytics-drilldown__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 58px;
  padding: 0 var(--erp-ui-space-4, 16px);
}

.erp-analytics-drilldown__head span {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-analytics-drilldown__head strong {
  color: var(--erp-ui-text, #111827);
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
}

.erp-analytics-drilldown__head small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.erp-analytics-drilldown__content {
  display: grid;
  gap: var(--erp-ui-space-3, 12px);
  padding: 0 var(--erp-ui-space-4, 16px) var(--erp-ui-space-4, 16px);
}

.erp-analytics-hour-strip {
  min-width: 0;
  padding: 10px 0 0;
}

.erp-analytics-timeline {
  display: grid;
  min-width: 0;
  padding: 4px 0;
}

.erp-analytics-timeline__scroll {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(142px, 1fr);
  gap: 0;
  min-width: 0;
  overflow-x: auto;
  padding: 8px 0 10px;
  scroll-snap-type: x proximity;
}

.erp-analytics-timeline__event {
  position: relative;
  display: grid;
  grid-template-rows: auto 32px minmax(52px, auto);
  gap: 6px;
  min-width: 0;
  padding: 0 6px;
  border: 0;
  background: transparent;
  color: var(--erp-ui-text, #111827);
  text-align: center;
  cursor: pointer;
  scroll-snap-align: start;
}

.erp-analytics-timeline__event:hover,
.erp-analytics-timeline__event:focus-visible,
.erp-analytics-timeline__event.is-active {
  outline: none;
}

.erp-analytics-timeline__event-time {
  justify-self: center;
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

.erp-analytics-timeline__event-rail {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
}

.erp-analytics-timeline__event-rail::before,
.erp-analytics-timeline__event-rail::after {
  content: "";
  height: 1px;
  flex: 1 1 auto;
  background: var(--erp-ui-border-soft, #e5e7eb);
}

.erp-analytics-timeline__event:first-child .erp-analytics-timeline__event-rail::before,
.erp-analytics-timeline__event:last-child .erp-analytics-timeline__event-rail::after {
  background: transparent;
}

.erp-analytics-timeline__event-dot {
  position: relative;
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: 50%;
  background: var(--erp-ui-surface, #ffffff);
  color: var(--erp-ui-text, #111827);
  transition: background .12s ease, color .12s ease, border-color .12s ease;
}

.erp-analytics-timeline__event:hover .erp-analytics-timeline__event-dot,
.erp-analytics-timeline__event:focus-visible .erp-analytics-timeline__event-dot,
.erp-analytics-timeline__event.is-active .erp-analytics-timeline__event-dot {
  border-color: var(--erp-ui-text, #111827);
  background: var(--erp-ui-text, #111827);
  color: var(--erp-ui-surface, #ffffff);
}

.erp-analytics-timeline__event:hover .erp-analytics-timeline__event-time,
.erp-analytics-timeline__event:focus-visible .erp-analytics-timeline__event-time,
.erp-analytics-timeline__event.is-active .erp-analytics-timeline__event-time,
.erp-analytics-timeline__event:hover .erp-analytics-timeline__event-card strong,
.erp-analytics-timeline__event:focus-visible .erp-analytics-timeline__event-card strong,
.erp-analytics-timeline__event.is-active .erp-analytics-timeline__event-card strong {
  color: var(--erp-ui-text, #111827);
}

.erp-analytics-timeline__event-dot svg,
.erp-analytics-timeline__event-dot .lucide {
  width: 14px;
  height: 14px;
}

.erp-analytics-timeline__event-dot em {
  position: absolute;
  top: -7px;
  right: -7px;
  display: grid;
  place-items: center;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: var(--erp-ui-text, #111827);
  color: var(--erp-ui-surface, #ffffff);
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
}

.erp-analytics-timeline__event-card {
  display: grid;
  gap: 4px;
  align-content: start;
  justify-items: center;
  min-width: 0;
  padding: 4px 2px 0;
  text-align: center;
}

.erp-analytics-timeline__event-card strong {
  max-width: 100%;
  overflow: hidden;
  color: var(--erp-ui-text, #111827);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-analytics-timeline__event-card small {
  display: -webkit-box;
  max-width: 100%;
  overflow: hidden;
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.erp-analytics-drilldown-preview {
  min-width: 0;
}

.erp-analytics-drilldown-preview__empty {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 800;
}

.erp-analytics-drilldown-preview__empty svg,
.erp-analytics-drilldown-preview__empty .lucide,
.erp-analytics-drilldown-preview__icon svg,
.erp-analytics-drilldown-preview__icon .lucide {
  width: var(--erp-icon-size, 18px);
  height: var(--erp-icon-size, 18px);
}

.erp-analytics-drilldown-preview__list {
  display: grid;
  gap: 0;
}

.erp-analytics-drilldown-preview__item {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) minmax(84px, auto) auto;
  gap: 0;
  align-items: center;
  min-height: 58px;
  padding: 0;
  border: 0;
  background: transparent;
  overflow: hidden;
}

.erp-analytics-drilldown-preview__item + .erp-analytics-drilldown-preview__item {
  border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-analytics-drilldown-preview__icon {
  display: grid;
  justify-self: center;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: var(--erp-ui-radius-md, 10px);
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-ui-text, #111827);
}

.erp-analytics-drilldown-preview__body {
  min-width: 0;
  padding: 10px;
}

.erp-analytics-drilldown-preview__body strong {
  display: block;
  overflow: hidden;
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-analytics-drilldown-preview__body small {
  display: block;
  overflow: hidden;
  margin-top: 3px;
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-analytics-drilldown-preview__value {
  display: block;
  min-width: 84px;
  padding: 10px;
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 900;
  text-align: right;
  white-space: nowrap;
}

.erp-analytics-drilldown-preview__actions {
  align-self: center;
  justify-self: end;
  margin: 10px 12px;
}

.erp-analytics-document-modal {
  display: grid;
}

.erp-analytics-document-modal__row {
  display: grid;
  grid-template-columns: minmax(90px, .35fr) minmax(0, 1fr);
  gap: 12px;
  padding: 12px 0;
}

.erp-analytics-document-modal__row + .erp-analytics-document-modal__row {
  border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-analytics-document-modal__row span {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  font-weight: 800;
}

.erp-analytics-document-modal__row strong {
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.35;
}

.erp-analytics-attention {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

.erp-analytics-attention__list,
.erp-analytics-list,
.erp-analytics-bars {
  display: grid;
  min-width: 0;
}

.erp-analytics-attention__item {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  gap: 9px;
  align-items: center;
  min-width: 0;
  padding: 14px var(--erp-ui-space-4, 16px);
  color: inherit;
  text-decoration: none;
}

.erp-analytics-attention__item + .erp-analytics-attention__item,
.erp-analytics-list__item + .erp-analytics-list__item,
.erp-analytics-bars__row + .erp-analytics-bars__row {
  border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-analytics-attention__item:hover,
.erp-analytics-attention__item:focus-visible,
.erp-analytics-list__item:hover {
  background: var(--erp-ui-surface-muted, #f8fafc);
  outline: none;
}

.erp-analytics-attention__icon {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: var(--erp-ui-radius-md, 10px);
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-ui-text, #111827);
}

.erp-analytics-attention__item.is-danger .erp-analytics-attention__icon { color: var(--erp-ui-danger, #dc2626); }
.erp-analytics-attention__item.is-warning .erp-analytics-attention__icon { color: var(--erp-ui-warning, #f59e0b); }
.erp-analytics-attention__item.is-info .erp-analytics-attention__icon { color: var(--erp-ui-info, #0891b2); }

.erp-analytics-attention__item strong,
.erp-analytics-list__item strong {
  display: block;
  min-width: 0;
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  line-height: 1.25;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.erp-analytics-attention__item small,
.erp-analytics-list__item small {
  display: block;
  margin-top: 3px;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.erp-analytics-attention__item em,
.erp-analytics-list__item em {
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
}

.erp-analytics-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .9fr) minmax(0, .95fr);
  gap: var(--erp-ui-space-4, 16px);
}

.erp-analytics-card {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

.erp-analytics-list__item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 62px;
  padding: var(--erp-ui-space-4, 16px);
}

.erp-analytics-bars {
  gap: 0;
}

.erp-analytics-bars__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: var(--erp-ui-space-4, 16px);
}

.erp-analytics-bars__row span {
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 900;
}

.erp-analytics-bars__row strong {
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 900;
  white-space: nowrap;
}

.erp-analytics-bars__row i {
  grid-column: 1 / -1;
  position: relative;
  display: block;
  height: 6px;
  overflow: hidden;
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: var(--erp-ui-border-soft, #e5e7eb);
}

.erp-analytics-bars__row i::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--erp-analytics-bar, 0%);
  border-radius: inherit;
  background: var(--erp-ui-text, #111827);
}

@media (max-width: 1180px) {
  .erp-analytics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .erp-analytics-workspace {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .erp-analytics-grid {
    grid-template-columns: 1fr;
  }

  .erp-analytics-section-head {
    align-items: stretch;
    flex-direction: column;
  }

  .erp-analytics-chart-switch {
    width: 100%;
    max-width: none;
  }

  .erp-analytics-chart-stage,
  .erp-analytics-chart {
    min-height: 300px;
  }

  .erp-analytics-chart {
    padding: var(--erp-ui-space-3, 12px);
  }

  .erp-analytics-chart canvas {
    height: 276px !important;
  }

  .erp-analytics-drilldown__content {
    padding-right: var(--erp-ui-space-3, 12px);
    padding-left: var(--erp-ui-space-3, 12px);
  }

  .erp-analytics-drilldown-preview__item {
    grid-template-columns: 30px minmax(0, 1fr) auto;
  }

  .erp-analytics-drilldown-preview__value {
    grid-column: 2;
    grid-row: 2;
    min-width: 0;
    text-align: left;
  }

  .erp-analytics-drilldown-preview__actions {
    grid-column: 3;
    grid-row: 1 / span 2;
  }
}

/* == Timeline == */
.erp-timeline {
  --erp-timeline-axis-x: 9px;
  --erp-timeline-card-x: 24px;
  --erp-timeline-marker-size: 7px;
  display: grid;
  gap: 10px;
  padding: 4px 0;
  background:
    linear-gradient(180deg, transparent, var(--erp-ui-border-soft, #e5e7eb) 18px, var(--erp-ui-border-soft, #e5e7eb) calc(100% - 18px), transparent)
    var(--erp-timeline-axis-x) 0 / 1px 100% no-repeat;
}

.erp-timeline__item {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px 14px;
  min-height: 44px;
  padding: 12px 14px 12px calc(var(--erp-timeline-card-x) + 16px);
  isolation: isolate;
}

.erp-timeline__item::before {
  content: "";
  position: absolute;
  left: calc(var(--erp-timeline-axis-x) - (var(--erp-timeline-marker-size) / 2));
  top: 17px;
  width: var(--erp-timeline-marker-size);
  height: var(--erp-timeline-marker-size);
  border-radius: 50%;
  background: var(--erp-ui-text, #111827);
  border: 2px solid var(--erp-ui-surface, #fff);
  box-shadow:
    0 0 0 2px var(--erp-ui-border-soft, #e5e7eb),
    0 6px 16px rgba(15, 23, 42, 0.10);
  z-index: 3;
}

.erp-timeline__item::after {
  content: "";
  position: absolute;
  inset: 0 0 0 var(--erp-timeline-card-x);
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-ui-radius-md, 12px);
  background: linear-gradient(180deg, var(--erp-ui-surface, #fff), var(--erp-ui-surface-muted, #f8fafc));
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  z-index: -1;
}

.erp-timeline__title {
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.erp-timeline__meta {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  min-height: 18px;
  padding: 0;
  border-left: 0;
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.3;
  white-space: nowrap;
}

.erp-timeline__item p {
  grid-column: 1 / -1;
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.5;
  max-width: 72ch;
  overflow-wrap: anywhere;
}

@media (max-width: 700px) {
  .erp-timeline__item {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .erp-timeline__meta {
    justify-content: flex-start;
    width: fit-content;
    padding-left: 0;
    border-left: 0;
    white-space: normal;
  }
}

/* == Toast cards == */
.erp-toast-card {
  display: grid;
  grid-template-columns: 4px minmax(0, 1fr) auto;
  gap: 10px;
  min-width: 280px;
  max-width: 420px;
  padding: 12px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  box-shadow: var(--erp-ui-shadow);
}

.erp-toast-card__bar {
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-ui-primary);
}

.erp-toast-card--success .erp-toast-card__bar { background: var(--erp-ui-success); }
.erp-toast-card--warning .erp-toast-card__bar { background: var(--erp-ui-warning); }
.erp-toast-card--danger .erp-toast-card__bar { background: var(--erp-ui-danger); }

.erp-toast-card__title {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 900;
}

.erp-toast-card__text {
  margin: 3px 0 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.35;
}

/* == Calendar / date picker extension == */
.erp-mini-calendar {
  display: grid;
  gap: 8px;
  min-width: 260px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  overflow: hidden;
}

.erp-mini-calendar__head {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) 36px;
  min-height: 38px;
  background: var(--erp-ui-surface-soft);
}

.erp-mini-calendar__month {
  display: grid;
  place-items: center;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
}

.erp-mini-calendar__nav {
  display: grid;
  place-items: center;
  border: 0;
  background: transparent;
  color: #334155;
  cursor: pointer;
}

.erp-mini-calendar__weekdays,
.erp-mini-calendar__days {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.erp-mini-calendar__weekdays {
  padding: 0 8px;
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 900;
  text-align: center;
}

.erp-mini-calendar__days {
  gap: 3px;
  padding: 0 8px 8px;
}

.erp-mini-calendar__day {
  aspect-ratio: 1;
  border: 0;
  border-radius: var(--erp-ui-radius-sm);
  background: transparent;
  color: #334155;
  font-size: 12px;
  font-weight: 800;
}

.erp-mini-calendar__day:hover,
.erp-mini-calendar__day.is-active {
  background: #111827;
  color: #fff;
}

.erp-mini-calendar__day.is-muted {
  color: #cbd5e1;
}

/* ==========================================================================
   Social account profile
   ========================================================================== */
.erp-social-profile {
  --erp-profile-sticky-top: calc(var(--erp-header-h, 56px) + var(--erp-page-toolbar-h, 54px));
  --erp-profile-tabs-top: calc(var(--erp-profile-sticky-top) + var(--erp-profile-sticky-gap));
  --erp-profile-tabs-height: 38px;
  --erp-profile-sticky-gap: var(--erp-ui-space-3);
  display: grid;
  gap: var(--erp-ui-space-3);
  width: 100%;
  min-width: 0;
  max-width: 1680px;
  margin-inline: auto;
}

.erp-social-cover {
  position: relative;
  min-height: 178px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  overflow: hidden;
  background: linear-gradient(135deg, #111827 0%, #334155 48%, #64748b 100%);
}

.erp-social-cover--network {
  min-height: 130px;
  border-bottom: 0;
  border-radius: var(--erp-ui-radius) var(--erp-ui-radius) 0 0;
  background:
    linear-gradient(135deg, rgba(15, 23, 42, .86), rgba(51, 65, 85, .6)),
    linear-gradient(135deg, #111827 0%, #475569 54%, #cbd5e1 100%);
}

.erp-social-cover--profile {
  min-height: 188px;
  max-height: 240px;
  border-bottom: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  transition:
    min-height .24s ease,
    max-height .24s ease,
    margin .24s ease,
    opacity .2s ease,
    transform .24s ease,
    border-color .2s ease;
  will-change: min-height, max-height, opacity, transform;
}

.erp-social-cover__pattern {
  position: absolute;
  inset: 0;
  opacity: .16;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.24) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.24) 1px, transparent 1px);
  background-size: 34px 34px;
}

.erp-social-cover__content {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
  min-height: 178px;
  padding: 16px;
  color: #fff;
}

.erp-social-cover__content--profile {
  min-height: 188px;
  padding: 20px;
  transition:
    min-height .24s ease,
    padding .24s ease,
    opacity .18s ease,
    transform .24s ease;
}

.erp-social-cover__facts {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(76px, 1fr));
  gap: 8px;
  min-width: min(100%, 320px);
}

.erp-social-fact {
  display: grid;
  gap: 4px;
  min-height: 66px;
  padding: 10px 12px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: var(--erp-ui-radius);
  background: rgba(255,255,255,.1);
  color: #fff;
  backdrop-filter: blur(6px);
}

.erp-social-fact span {
  color: rgba(255,255,255,.78);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.erp-social-fact strong {
  font-size: 22px;
  line-height: 1;
  font-weight: 900;
}

.erp-social-identity {
  display: flex;
  align-items: flex-end;
  gap: 14px;
  min-width: 0;
}

.erp-social-avatar {
  width: 92px;
  height: 92px;
  border: 4px solid #fff;
  border-radius: var(--erp-ui-radius-pill);
  background: #e5e7eb;
  color: var(--erp-ui-text);
  display: grid;
  place-items: center;
  overflow: hidden;
  flex: 0 0 92px;
  font-size: 28px;
  font-weight: 900;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .22);
}

.erp-social-profile-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  min-height: 104px;
  margin-top: -34px;
  padding: 0 16px 16px;
  border: 1px solid var(--erp-ui-border);
  border-top: 0;
  border-radius: 0 0 var(--erp-ui-radius) var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-social-profile-head__avatar {
  width: 104px;
  height: 104px;
  flex-basis: 104px;
  border-width: 5px;
  font-size: 30px;
}

.erp-social-profile-head__body {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding-bottom: 4px;
}

.erp-social-profile-head__body h1 {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 24px;
  line-height: 1.1;
  font-weight: 900;
}

.erp-social-profile-head__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  color: var(--erp-ui-muted);
  font-size: 13px;
  font-weight: 800;
}

.erp-social-profile-head__badges {
  justify-content: flex-end;
  padding-bottom: 6px;
}

.erp-social-profile-head__actions {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.erp-social-profile-head__actions .erp-btn {
  min-height: 38px;
}

.erp-social-profile-head__subline {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-social-profile-head__subline span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.erp-social-profile-head__subline i,
.erp-social-profile-head__subline svg,
.erp-social-profile-head__subline .lucide {
  width: 14px !important;
  height: 14px !important;
}

.erp-social-profile-head--reference {
  position: relative;
  z-index: 2;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: 96px;
  margin-top: -24px;
  padding-top: 16px;
}

.erp-social-profile-head--reference .erp-social-profile-head__body {
  padding-bottom: 0;
}

.erp-social-profile-head--reference .erp-social-profile-head__actions {
  justify-content: flex-end;
}

.erp-social-avatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-social-identity__body {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding-bottom: 4px;
}

.erp-social-identity__eyebrow {
  color: rgba(255,255,255,.82);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.erp-social-identity h1 {
  margin: 0;
  color: #fff;
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.08;
}

.erp-social-identity__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  color: rgba(255,255,255,.84);
  font-size: 13px;
  font-weight: 700;
}

.erp-social-identity__meta a {
  color: rgba(255,255,255,.9);
  text-decoration: none;
}

.erp-social-identity__meta a:hover,
.erp-social-identity__meta a:focus-visible {
  color: #fff;
  text-decoration: underline;
  outline: none;
}

.erp-social-identity__meta--contacts {
  font-size: 12px;
  color: rgba(255,255,255,.78);
}

.erp-social-identity__name,
.erp-user-name-line {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.erp-dps-verified-icon,
.erp-dps-verified-icon.lucide {
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px;
  color: #22c55e;
  stroke-width: 2.4;
}

.erp-social-identity__name .erp-dps-verified-icon {
  color: #bbf7d0;
}

.erp-social-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 24px;
  padding: 0 9px;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  font-size: 12px;
  font-weight: 900;
}

.erp-social-badge.is-active,
.erp-social-badge.is-warning,
.erp-social-badge.is-inactive,
.erp-social-badge.is-danger,
.erp-social-badge.is-client,
.erp-social-badge.is-partner {
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
}

.erp-social-cover__actions {
  display: inline-flex;
  align-items: stretch;
  justify-content: flex-end;
  gap: 0;
  max-width: 100%;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: var(--erp-ui-radius);
  background: rgba(15, 23, 42, .18);
  box-shadow: 0 8px 22px rgba(15, 23, 42, .12);
  backdrop-filter: blur(8px);
}

.erp-social-cover__side {
  position: relative;
  z-index: 1;
  display: grid;
  justify-items: end;
  gap: 10px;
  min-width: 0;
}

.erp-social-cover__actions .erp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 42px;
  padding: 0 13px;
  border: 0;
  border-left: 1px solid rgba(255,255,255,.2);
  border-radius: 0;
  background: transparent;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

.erp-social-cover__actions .erp-btn:first-child {
  border-left: 0;
}

.erp-social-cover__actions .erp-btn:hover,
.erp-social-cover__actions .erp-btn:focus-visible {
  background: rgba(255,255,255,.16);
  color: #fff;
  outline: none;
}

.erp-social-cover__actions .erp-btn--default {
  background: rgba(255,255,255,.14);
}

.erp-social-cover__actions .erp-btn i,
.erp-social-cover__actions .erp-btn svg,
.erp-social-cover__actions .erp-btn .lucide {
  width: 18px !important;
  height: 18px !important;
  flex-shrink: 0;
}

.erp-social-cover__actions .erp-btn--danger {
  background: rgba(220, 38, 38, .88);
  color: #fff;
}

.erp-social-cover__actions .erp-btn:disabled,
.erp-social-cover__actions .erp-btn[aria-disabled="true"] {
  cursor: not-allowed;
  opacity: .48;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.72);
}

.erp-user-profile-summary {
  display: grid;
  grid-template-columns: minmax(280px, 380px) minmax(0, 1fr);
  align-items: start;
  gap: var(--erp-ui-space-3);
  min-width: 0;
  padding: var(--erp-ui-space-4);
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  box-shadow: var(--erp-ui-shadow-sm);
}

.erp-user-profile-summary__card {
  width: 100%;
  padding: var(--erp-ui-space-4);
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  box-shadow: none;
}

.erp-user-profile-summary__card .erp-home-profile-card__body strong {
  max-width: min(100%, 240px);
}

.erp-user-profile-summary__contacts {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-user-profile-summary__contacts a {
  color: inherit;
  text-decoration: none;
}

.erp-user-profile-summary__contacts a:hover,
.erp-user-profile-summary__contacts a:focus-visible {
  color: var(--erp-ui-text);
  text-decoration: underline;
  outline: none;
}

.erp-user-profile-summary__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-user-profile-summary__actions .erp-btn {
  min-height: 38px;
}

.erp-social-nav {
  display: flex;
  align-items: stretch;
  gap: 0;
  overflow-x: auto;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-social-nav--profile {
  margin-top: -1px;
}

.erp-social-nav__item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 14px;
  color: #334155;
  font-size: 13px;
  font-weight: 800;
  white-space: nowrap;
  text-decoration: none;
  border-right: 1px solid var(--erp-ui-border-soft);
}

.erp-social-nav__item:last-child {
  border-right: 0;
}

.erp-social-nav__item:hover,
.erp-social-nav__item:focus-visible {
  background: var(--erp-ui-surface-soft);
  color: #0f172a;
  outline: none;
  text-decoration: none;
}

.erp-social-nav__item.is-active {
  color: #0f172a;
  background: var(--erp-ui-surface-muted);
  box-shadow: inset 0 -3px 0 #111827;
}

.erp-profile-tabs {
  position: sticky;
  top: var(--erp-profile-tabs-top);
  z-index: 58;
  margin: 0;
  background: var(--erp-ui-surface);
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.06);
}

.erp-profile-blocked-state {
  min-height: 360px;
  display: grid;
  place-items: center;
}

.erp-profile-blocked-state .erp-empty-state {
  align-items: center;
  justify-items: center;
  text-align: center;
}

.erp-social-layout {
  display: grid;
  grid-template-columns: minmax(250px, 310px) minmax(0, 1fr) minmax(250px, 320px);
  gap: var(--erp-ui-space-3);
  align-items: start;
}

.erp-social-layout--network {
  grid-template-columns: minmax(240px, 300px) minmax(420px, 640px) minmax(240px, 300px);
  justify-content: center;
}

.erp-social-layout--profile {
  grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
  justify-content: stretch;
  width: 100%;
}

.erp-social-column {
  display: grid;
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-social-card {
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  padding: 12px;
}

.erp-social-card__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 10px;
}

.erp-social-card__title {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 900;
}

.erp-social-card__meta {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-social-about {
  display: grid;
  gap: 9px;
}

.erp-social-about__item {
  display: grid;
  gap: 3px;
}

.erp-social-about--rows {
  gap: 0;
}

.erp-social-about--rows .erp-social-about__item {
  grid-template-columns: minmax(84px, .55fr) minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 34px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-social-about--rows .erp-social-about__item:last-child {
  border-bottom: 0;
}

.erp-social-about__item span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-social-about__item strong,
.erp-social-about__item a {
  min-width: 0;
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.erp-social-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.erp-social-stat {
  display: grid;
  gap: 3px;
  min-height: 64px;
  padding: 10px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
}

.erp-social-stat span {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.erp-social-stat strong {
  color: var(--erp-ui-text);
  font-size: 16px;
  line-height: 1;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.erp-social-feed {
  display: grid;
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-social-post {
  position: relative;
  display: grid;
  gap: 10px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  padding: 12px;
}

.erp-social-post--composer {
  padding: 10px 12px;
}

.erp-social-post--summary {
  background:
    linear-gradient(180deg, rgba(248,250,252,.9), rgba(255,255,255,1)),
    var(--erp-ui-surface);
}

.erp-social-post__head {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
}

.erp-social-post__head--profile {
  grid-template-columns: 38px minmax(0, 1fr) auto;
}

.erp-social-inline-facts {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  align-self: center;
  gap: 0;
  min-width: 0;
  color: var(--erp-ui-muted);
  white-space: nowrap;
}

.erp-social-inline-facts__item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 28px;
  padding: 0 12px;
  border-left: 1px solid var(--erp-ui-border-soft);
  text-align: center;
}

.erp-social-inline-facts__item:first-child {
  border-left: 0;
}

.erp-social-inline-facts__item span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-social-inline-facts__item strong {
  color: var(--erp-ui-text);
  font-size: 15px;
  line-height: 1;
  font-weight: 900;
}

.erp-social-composer-line {
  display: flex;
  align-items: center;
  min-height: 38px;
  padding: 0 14px;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
  font-size: 14px;
  font-weight: 800;
}

.erp-social-post__avatar {
  width: 38px;
  height: 38px;
  overflow: hidden;
  border-radius: var(--erp-ui-radius-pill);
  display: grid;
  place-items: center;
  background: #e5e7eb;
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 900;
}

.erp-social-post__avatar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-social-post__avatar i,
.erp-social-post__avatar svg,
.erp-social-post__avatar .lucide {
  width: 18px !important;
  height: 18px !important;
}

.erp-social-post__title {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.erp-social-post__title strong {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 900;
}

.erp-social-post__title span {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 700;
}

.erp-social-post__time {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.erp-social-post__body {
  color: #334155;
  font-size: 14px;
  line-height: 1.45;
}

.erp-social-post__media {
  --erp-social-color-r: 20px;
  --erp-social-color-corner-r: var(--erp-ui-radius);
  --erp-social-color-bg: var(--erp-ui-surface);
  position: relative;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
}

.erp-social-post__media-shell {
  position: relative;
  min-width: 0;
}

.erp-social-post__media-shell--has-price {
  --erp-social-price-h: 40px;
  --erp-social-price-r: 20px;
  --erp-social-price-corner-r: var(--erp-ui-radius);
  --erp-social-price-bg: var(--erp-ui-surface);
  --erp-social-price-pad-left: 12px;
  --erp-social-price-pad-right: 16px;
  --erp-social-price-action-gap: 8px;
  background: var(--erp-ui-surface);
}

.erp-social-post__media--cut-price {
  border-top-color: transparent;
  border-right-color: transparent;
}

.erp-social-post__media--cut-colors {
  border: 0px;
}

.erp-social-post__price-cut {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 3;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  min-width: 76px;
  max-width: calc(100% - 42px);
  min-height: var(--erp-social-price-h);
  padding: 0 var(--erp-social-price-pad-right) 0 var(--erp-social-price-pad-left);
  border-radius: 0 var(--erp-social-price-corner-r) 0 var(--erp-social-price-r);
  background: var(--erp-social-price-bg);
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
}

.erp-social-post__price-text {
  display: inline-block;
}

.erp-social-post__price-cut::after,
.erp-social-post__price-cut::before {
  content: "";
  position: absolute;
  width: var(--erp-social-price-r);
  height: var(--erp-social-price-r);
  pointer-events: none;
}

.erp-social-post__price-cut::before {
  top: 0;
  left: calc(var(--erp-social-price-r) * -1);
  background: radial-gradient(
    circle at 0 100%,
    transparent 0 var(--erp-social-price-r),
    var(--erp-social-price-bg) var(--erp-social-price-r)
  );
}

.erp-social-post__price-cut::after {
  right: 0;
  bottom: calc(var(--erp-social-price-r) * -1);
  background: radial-gradient(
    circle at 0 100%,
    transparent 0 var(--erp-social-price-r),
    var(--erp-social-price-bg) var(--erp-social-price-r)
  );
}

.erp-social-post__media img {
  display: block;
  width: 100%;
  max-height: 520px;
  border-radius: inherit;
  object-fit: cover;
}

.erp-reaction-burst {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 4;
  display: inline-grid;
  place-items: center;
  width: 92px;
  height: 92px;
  color: rgba(255, 255, 255, .96);
  filter: drop-shadow(0 16px 28px rgba(15, 23, 42, .34));
  pointer-events: none;
  transform: translate(-50%, -50%) scale(.72);
  animation: erp-reaction-burst .72s cubic-bezier(.18, .9, .2, 1) forwards;
}

.erp-reaction-burst i,
.erp-reaction-burst svg,
.erp-reaction-burst .lucide {
  width: 100% !important;
  height: 100% !important;
  stroke-width: 2.3;
  fill: currentColor;
}

@keyframes erp-reaction-burst {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(.58);
  }

  18% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.08);
  }

  42% {
    opacity: .98;
    transform: translate(-50%, -50%) scale(.96);
  }

  100% {
    opacity: 0;
    transform: translate(-50%, -56%) scale(1.26);
  }
}

@media (prefers-reduced-motion: reduce) {
  .erp-reaction-burst {
    animation-duration: .24s;
  }
}

.erp-social-post__body p {
  margin: 0;
}

.erp-social-post__footer {
  display: flex;
  align-items: stretch;
  gap: 0;
  min-width: 0;
  border-top: 1px solid var(--erp-ui-border-soft);
}

.erp-social-post__footer span,
.erp-social-post__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 0;
  min-height: 36px;
  flex: 1 1 0;
  padding: 0 8px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 900;
  overflow-wrap: anywhere;
  text-align: center;
}

.erp-social-post__action {
  border: 0;
  background: var(--erp-button-group-bg);
  cursor: pointer;
}

.erp-social-post__action:hover,
.erp-social-post__action:focus-visible {
  color: var(--erp-button-group-hover-text);
  background: var(--erp-button-group-hover-bg);
  outline: none;
}

.erp-social-post__action.is-active,
.erp-social-post__action[aria-pressed="true"] {
  color: var(--erp-button-group-active-text);
  background: var(--erp-button-group-active-bg);
}

.erp-social-post__action:disabled {
  cursor: wait;
  opacity: .7;
}

.erp-social-post__footer i,
.erp-social-post__footer svg,
.erp-social-post__footer .lucide {
  width: 15px !important;
  height: 15px !important;
  flex-shrink: 0;
}

.erp-social-post__action-bar {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.erp-social-post__icon-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}

.erp-social-post__icon-side {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

.erp-social-post__quick-actions {
  justify-self: end;
  align-self: center;
  z-index: 8;
}

.erp-social-post.is-actions-open {
  z-index: 9;
}

.erp-social-post__icon-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: 32px;
  min-height: 32px;
  padding: 0 6px;
  border: 0;
  border-radius: var(--erp-ui-radius-pill);
  background: transparent;
  color: var(--erp-ui-muted);
  cursor: pointer;
  font-size: 12px;
  font-weight: 900;
}

.erp-social-post__icon-action:hover,
.erp-social-post__icon-action:focus-visible,
.erp-social-post__icon-action.is-active {
  color: var(--erp-ui-text);
  background: var(--erp-ui-surface-muted);
  outline: none;
}

.erp-social-post__icon-action.is-active i,
.erp-social-post__icon-action.is-active svg,
.erp-social-post__icon-action.is-active .lucide {
  fill: currentColor;
}

.erp-social-post__icon-action i,
.erp-social-post__icon-action svg,
.erp-social-post__icon-action .lucide {
  width: 18px !important;
  height: 18px !important;
  flex-shrink: 0;
}

.erp-social-post__icon-action [data-product-favorite-label] {
  display: none;
}

.erp-social-post__action-group {
  display: flex;
  align-items: stretch;
  gap: 0;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-button-group-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-button-group-bg);
}

.erp-social-post__action-group .erp-social-post__action {
  min-height: 38px;
}

.erp-social-post__action-group .erp-social-post__action + .erp-social-post__action {
  border-left: 1px solid var(--erp-button-group-divider);
}

.erp-reference-layout {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: var(--erp-ui-space-3);
  align-items: start;
}

.erp-reference-nav {
  display: grid;
  gap: 8px;
}

.erp-reference-nav__item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  padding: 9px 10px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-text);
  text-decoration: none;
}

.erp-reference-nav__item:hover,
.erp-reference-nav__item:focus-visible,
.erp-reference-nav__item.is-active {
  border-color: var(--erp-ui-border);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  outline: none;
  text-decoration: none;
}

.erp-reference-nav__item i,
.erp-reference-nav__item svg,
.erp-reference-nav__item .lucide {
  width: 17px !important;
  height: 17px !important;
  color: var(--erp-ui-muted);
}

.erp-reference-nav__item span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.erp-reference-nav__item strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
}

.erp-reference-nav__item small {
  min-height: 14px;
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.erp-reference-nav__item em {
  display: inline-grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.erp-reference-content,
.erp-reference-panel {
  min-width: 0;
}

.erp-reference-panel {
  display: none;
}

.erp-reference-panel.is-active,
.erp-reference-panel:target {
  display: grid;
  gap: var(--erp-ui-space-3);
}

.erp-reference-content:has(.erp-reference-panel:target) .erp-reference-panel.is-active {
  display: none;
}

.erp-reference-content:has(.erp-reference-panel:target) .erp-reference-panel:target {
  display: grid;
}

.erp-reference-panel:target ~ .erp-reference-panel.is-active {
  display: none;
}

.erp-reference-panel__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
}

.erp-reference-panel__head h3,
.erp-reference-panel__head p {
  margin: 0;
}

.erp-reference-panel__head h3 {
  color: var(--erp-ui-text);
  font-size: 15px;
  font-weight: 900;
}

.erp-reference-panel__head p {
  margin-top: 3px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-social-layout--profile-clean {
  grid-template-columns: minmax(0, 1fr);
  max-width: 100%;
  margin-inline: auto;
}

.erp-social-layout--profile-clean > .erp-social-feed {
  width: 100%;
}

.erp-reference-layout--profile {
  grid-template-columns: minmax(260px, 310px) minmax(0, 1fr);
  gap: 16px;
}

.erp-reference-layout--profile .erp-reference-nav {
  position: sticky;
  top: calc(var(--erp-header-h) + var(--erp-toolbar-btn-size) + 18px);
  align-self: start;
  gap: 4px;
  padding: 8px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-reference-layout--profile .erp-reference-nav__item {
  min-height: 58px;
  border-color: transparent;
  background: transparent;
}

.erp-reference-layout--profile .erp-reference-nav__item:hover,
.erp-reference-layout--profile .erp-reference-nav__item:focus-visible,
.erp-reference-layout--profile .erp-reference-nav__item.is-active {
  border-color: var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-muted);
}

.erp-reference-layout--profile .erp-reference-nav__item strong {
  font-size: 13px;
}

.erp-reference-layout--profile .erp-reference-nav__item small {
  display: block;
  max-width: 210px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-reference-layout--profile .erp-reference-content {
  min-height: 360px;
}

.erp-reference-layout--profile .erp-reference-panel {
  padding: 14px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-reference-layout--profile .erp-reference-panel__head {
  padding: 0 0 12px;
  border: 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  background: transparent;
}

.erp-reference-layout--profile .erp-detail-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.erp-social-feed--embedded {
  gap: var(--erp-ui-space-3);
}

.erp-social-feed[data-erp-tab-panel="feed"] .erp-social-feed--embedded,
.erp-social-card[data-erp-tab-panel="feed"] .erp-social-feed--embedded {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
}

.erp-collection-block {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.erp-collection-block__head {
  min-height: 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.erp-collection-block__head h2 {
  margin: 0;
  color: #111827;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.2;
}

.erp-collection-rail {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  max-width: 100%;
  margin: 0;
  padding: 2px 2px 10px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
}

.erp-collection-rail::-webkit-scrollbar {
  display: none;
}

.erp-collection-chip {
  appearance: none;
  position: relative;
  display: grid;
  justify-items: center;
  gap: 5px;
  flex: 0 0 72px;
  width: 72px;
  min-width: 72px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #334155;
  font: inherit;
  cursor: pointer;
  text-align: center;
}

.erp-collection-chip__avatar {
  width: 62px;
  height: 62px;
  display: grid;
  place-items: center;
  padding: 3px;
  border-radius: 999px;
  background:
    linear-gradient(#fff, #fff) padding-box,
    linear-gradient(135deg, #111827, #6b7280 42%, #d1d5db) border-box;
  border: 2px solid transparent;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
  overflow: hidden;
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    border-color .18s ease,
    background .18s ease;
}

.erp-collection-chip__avatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: 999px;
  background: var(--erp-ui-surface-muted);
}

.erp-collection-chip--create .erp-collection-chip__avatar {
  background:
    linear-gradient(#f8fafc, #f8fafc) padding-box,
    linear-gradient(135deg, #d1d5db, #94a3b8) border-box;
  border-style: dashed;
  box-shadow: none;
}

.erp-collection-chip--create .erp-collection-chip__avatar i,
.erp-collection-chip--create .erp-collection-chip__avatar svg,
.erp-collection-chip--create .erp-collection-chip__avatar .lucide {
  width: 24px;
  height: 24px;
}

.erp-collection-chip__avatar i,
.erp-collection-chip__avatar svg,
.erp-collection-chip__avatar .lucide {
  width: 22px;
  height: 22px;
  color: #111827;
}

.erp-collection-chip__label {
  width: 100%;
  overflow: hidden;
  color: #334155;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-collection-chip__count {
  position: absolute;
  top: -2px;
  right: 3px;
  z-index: 2;
  min-width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 5px;
  border: 2px solid var(--erp-ui-surface);
  border-radius: 999px;
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
  box-shadow: var(--erp-system-badge-shadow);
  pointer-events: none;
}

.erp-collection-chip:hover .erp-collection-chip__avatar,
.erp-collection-chip:focus-visible .erp-collection-chip__avatar,
.erp-collection-chip.is-active .erp-collection-chip__avatar {
  transform: translateY(-2px) scale(1.04);
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.14);
}

.erp-collection-chip:hover,
.erp-collection-chip:focus-visible {
  outline: none;
}

.erp-collection-chip.is-active .erp-collection-chip__label {
  color: #0f172a;
}

.erp-collection-form {
  padding: 18px;
}

.erp-picker {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  min-height: 0;
  background: #fff;
}

.erp-picker__toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
  gap: 0;
  border-bottom: 1px solid #e5e7eb;
  background: #f8fafc;
}

.erp-picker-search {
  min-width: 0;
  min-height: 52px;
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  align-items: center;
  margin: 0;
  background: transparent;
}

.erp-picker-search__icon {
  width: 52px;
  height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #64748b;
}

.erp-picker-search__icon i,
.erp-picker-search__icon svg,
.erp-picker-search__icon .lucide {
  width: 17px;
  height: 17px;
}

.erp-picker-search input {
  min-width: 0;
  width: 100%;
  height: 52px;
  border: 0;
  background: transparent;
  color: #111827;
  font: inherit;
  font-size: 14px;
  font-weight: 750;
  outline: 0;
}

.erp-picker-search input::placeholder {
  color: #94a3b8;
  font-weight: 700;
}

.erp-picker__counter {
  min-width: 116px;
  min-height: 52px;
  display: grid;
  align-content: center;
  justify-items: end;
  padding: 0 16px;
  border-left: 1px solid #e5e7eb;
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}

.erp-picker__counter strong {
  color: #111827;
  font-size: 13px;
  font-weight: 900;
}

.erp-picker__list {
  max-height: min(52vh, 520px);
  min-height: 240px;
  display: grid;
  align-content: start;
  gap: 0;
  margin: 0;
  padding: 0;
  overflow: auto;
  overscroll-behavior: contain;
  background: #fff;
}

.erp-picker-item {
  min-height: 72px;
  display: grid;
  grid-template-columns: 42px 54px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin: 0;
  padding: 9px 16px 9px 10px;
  border-bottom: 1px solid #eef2f7;
  cursor: pointer;
  transition: background .14s ease;
}

.erp-picker-item:hover,
.erp-picker-item:focus-within {
  background: #f8fafc;
}

.erp-picker-item[hidden] {
  display: none;
}

.erp-picker-item__input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.erp-picker-item__check {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  justify-self: center;
  border-radius: 8px;
  background: #f1f5f9;
  color: transparent;
  transition:
    background .14s ease,
    color .14s ease,
    transform .14s ease;
}

.erp-picker-item__check i,
.erp-picker-item__check svg,
.erp-picker-item__check .lucide {
  width: 16px;
  height: 16px;
}

.erp-picker-item__input:checked + .erp-picker-item__check {
  background: #111827;
  color: #fff;
  transform: scale(1.04);
}

.erp-picker-item__media {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  background: #f1f5f9;
  color: #475569;
  overflow: hidden;
}

.erp-picker-item__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-picker-item__media i,
.erp-picker-item__media svg,
.erp-picker-item__media .lucide {
  width: 20px;
  height: 20px;
}

.erp-picker-item__body {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.erp-picker-item__body strong,
.erp-picker-item__body small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-picker-item__body strong {
  color: #111827;
  font-size: 14px;
  font-weight: 850;
}

.erp-picker-item__body small {
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
}

.erp-picker-item__meta {
  align-self: center;
  color: #475569;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.erp-picker__empty {
  margin: 0;
  border-top: 1px solid #eef2f7;
}

.erp-lightbox-open {
  overflow: hidden;
}

.erp-lightbox-overlay {
  position: fixed;
  inset: 0;
  z-index: var(--erp-layer-modal-child);
  display: grid;
  padding: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease;
}

.erp-lightbox-overlay.is-visible {
  opacity: 1;
  pointer-events: auto;
}

.erp-lightbox-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.54);
}

.erp-lightbox-shell {
  position: relative;
  z-index: 1;
  width: min(1180px, calc(100vw - 32px));
  height: min(740px, calc(100dvh - 32px));
  min-height: 0;
  display: grid;
  place-items: stretch;
  align-self: center;
  justify-self: center;
}

.erp-lightbox-shell--comments-only {
  width: min(560px, calc(100vw - 32px));
  height: min(680px, calc(100dvh - 32px));
}

.erp-lightbox-shell__close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 5;
  border: 0;
}

.erp-lightbox-viewer {
  --erp-lightbox-thumbs-height: 86px;
  --erp-lightbox-thumbs-bg-image: none;

  position: relative;
  width: 100%;
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 390px);
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 90px rgba(0, 0, 0, 0.46);
}

.erp-lightbox-viewer--comments-only {
  grid-template-columns: minmax(0, 1fr);
}

.erp-lightbox-panel {
  --erp-lightbox-panel-x: 10px;
  --erp-lightbox-panel-x-neg: -10px;
  --erp-lightbox-panel-y: 24px;
  --erp-lightbox-panel-bottom: 18px;
  --erp-lightbox-panel-bottom-neg: -18px;

  min-height: 0;
  display: grid;
  grid-template-rows: auto auto auto auto auto minmax(0, 1fr);
  gap: 14px;
  padding: var(--erp-lightbox-panel-y) var(--erp-lightbox-panel-x) var(--erp-lightbox-panel-bottom);
  overflow: hidden;
  background: #fff;
  border-left: 1px solid var(--erp-ui-border-soft);
  color: var(--erp-ui-ink);
  backdrop-filter: none;
}

.erp-lightbox-panel--comments-only {
  grid-template-rows: auto minmax(0, 1fr);
  border-left: 0;
}

.erp-lightbox-panel__head {
  display: grid;
  gap: 12px;
  padding: 0;
}

.erp-lightbox-panel__top {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  min-height: 52px;
  margin: calc(var(--erp-lightbox-panel-y) * -1) calc(var(--erp-lightbox-panel-x) * -1) 0 calc(var(--erp-lightbox-panel-x) * -1);
  padding: 0 var(--erp-lightbox-panel-x);
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-lightbox-panel__close {
  flex: 0 0 auto;
  align-self: center;
  width: 34px;
  height: 34px;
  min-height: 34px;
  border: 0;
  border-radius: 8px;
}

.erp-lightbox-panel__title-row {
  flex: 1 1 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(68px, auto);
  align-items: center;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  padding: 6px 0;
}

.erp-lightbox-panel__title-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.erp-lightbox-panel__head h2 {
  margin: 0;
  color: var(--erp-ui-ink);
  font-size: 18px;
  font-weight: 950;
  line-height: 1.1;
}

.erp-lightbox-panel__identity {
  display: flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 850;
  line-height: 1.15;
}

.erp-lightbox-panel__identity[hidden],
.erp-lightbox-panel__identity span[hidden] {
  display: none;
}

.erp-lightbox-panel__identity span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-lightbox-panel__price {
  display: grid;
  justify-items: center;
  gap: 2px;
  align-self: center;
  max-width: 96px;
  min-width: 0;
  color: var(--erp-ui-ink);
  text-align: center;
  line-height: 1;
}

.erp-lightbox-panel__price[hidden],
.erp-lightbox-panel__price s[hidden] {
  display: none;
}

.erp-lightbox-panel__price strong,
.erp-lightbox-panel__price s {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-lightbox-panel__price strong {
  font-size: clamp(13px, 1.1vw, 16px);
  font-weight: 1000;
}

.erp-lightbox-panel__price s {
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 850;
}

.erp-lightbox-panel__head p {
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  font-weight: 650;
  line-height: 1.45;
}

.erp-lightbox-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.erp-lightbox-meta span {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 0 10px;
  border-radius: 999px;
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 850;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-lightbox-sizes {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scrollbar-width: thin;
  padding-bottom: 2px;
}

.erp-lightbox-sizes::-webkit-scrollbar {
  height: 4px;
}

.erp-lightbox-size {
  flex: 0 0 42px;
  min-width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: 10px;
  background: #fff;
  color: var(--erp-ui-ink);
  cursor: pointer;
}

.erp-lightbox-size strong {
  font-size: 13px;
  font-weight: 950;
  line-height: 1;
}

.erp-lightbox-size:hover,
.erp-lightbox-size:focus-visible,
.erp-lightbox-size.is-active {
  background: var(--erp-ui-surface-muted);
  border-color: var(--erp-ui-ink);
  outline: none;
}

.erp-lightbox-size.is-disabled,
.erp-lightbox-size:disabled {
  background: var(--erp-ui-surface-muted);
  border-color: var(--erp-ui-border-soft);
  color: #94a3b8;
  cursor: default;
}

.erp-lightbox-sizes__empty {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 750;
}

.erp-lightbox-size-actions {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-muted);
}

.erp-lightbox-size-actions[hidden] {
  display: none;
}

.erp-lightbox-size-actions__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.erp-lightbox-size-actions__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.erp-lightbox-size-action {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  background: #fff;
  color: var(--erp-ui-ink);
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.erp-lightbox-size-action span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-lightbox-size-action:hover,
.erp-lightbox-size-action:focus-visible {
  background: var(--erp-ui-surface-muted);
  outline: none;
}

.erp-lightbox-size-action:disabled {
  color: #94a3b8;
  background: var(--erp-ui-surface-muted);
  cursor: default;
}

.erp-lightbox-size-action i,
.erp-lightbox-size-action svg,
.erp-lightbox-size-action .lucide {
  width: 14px;
  height: 14px;
}

.erp-lightbox-size-actions__empty {
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 750;
  line-height: 1.4;
}

.erp-lightbox-commerce-dialog {
  position: absolute;
  inset: 0;
  z-index: 8;
  display: grid;
  place-items: center;
  padding: 18px;
}

.erp-lightbox-commerce-dialog__backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(15, 23, 42, 0.58);
  cursor: pointer;
}

.erp-lightbox-commerce-dialog__panel {
  position: relative;
  z-index: 1;
  width: min(460px, 100%);
  max-height: min(640px, calc(100dvh - 64px));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  background: #fff;
  box-shadow: 0 28px 80px rgba(15, 23, 42, 0.32);
}

.erp-lightbox-commerce-dialog__head {
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 16px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-lightbox-commerce-dialog__head h3 {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--erp-ui-ink);
  font-size: 16px;
  font-weight: 900;
}

.erp-lightbox-commerce-dialog__head i,
.erp-lightbox-commerce-dialog__head svg,
.erp-lightbox-commerce-dialog__head .lucide {
  width: 18px;
  height: 18px;
}

.erp-lightbox-commerce-dialog__close {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--erp-ui-muted);
  box-shadow: none;
  cursor: pointer;
  transition: background .18s ease, color .18s ease;
}

.erp-lightbox-commerce-dialog__close:hover,
.erp-lightbox-commerce-dialog__close:focus-visible {
  color: #111827;
  background: #eef2f7;
  outline: none;
}

.erp-lightbox-commerce-dialog__body {
  min-height: 0;
  overflow: auto;
  padding: 16px;
}

.erp-lightbox-commerce-dialog__footer {
  border-top: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-muted);
}

.erp-lightbox-commerce-modal {
  display: grid;
  gap: 14px;
}

.erp-lightbox-commerce-summary {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-muted);
}

.erp-lightbox-commerce-summary strong {
  color: var(--erp-ui-ink);
  font-size: 14px;
  font-weight: 900;
}

.erp-lightbox-commerce-summary span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 750;
  line-height: 1.35;
}

.erp-lightbox-commerce-warning {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(59, 130, 246, 0.22);
  background: rgba(239, 246, 255, 0.76);
}

.erp-lightbox-commerce-warning i,
.erp-lightbox-commerce-warning svg,
.erp-lightbox-commerce-warning .lucide {
  width: 38px;
  height: 38px;
  padding: 9px;
  color: #2563eb;
  background: #fff;
  border: 1px solid rgba(59, 130, 246, 0.18);
}

.erp-lightbox-commerce-warning strong {
  color: #1e3a8a;
  font-size: 13px;
  font-weight: 900;
}

.erp-lightbox-commerce-warning p,
.erp-lightbox-commerce-note {
  margin: 4px 0 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.45;
}

.erp-lightbox-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: 12px;
}

.erp-lightbox-action {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-ink);
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.erp-lightbox-action + .erp-lightbox-action {
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-lightbox-action:hover,
.erp-lightbox-action:focus-visible {
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-ink);
  outline: none;
}

.erp-lightbox-action i,
.erp-lightbox-action svg,
.erp-lightbox-action .lucide {
  width: 15px;
  height: 15px;
}

.erp-lightbox-comments {
  --erp-lightbox-comments-inset: var(--erp-lightbox-panel-x);

  min-height: 0;
  min-width: 0;
  height: 100%;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 10px;
  overflow: hidden;
  background: #fff;
}

.erp-lightbox-panel:not(.erp-lightbox-panel--comments-only) > .erp-lightbox-comments {
  grid-row: 6;
  min-height: 0;
}

.erp-lightbox-panel > .erp-lightbox-comments {
  margin: 0 var(--erp-lightbox-panel-x-neg) var(--erp-lightbox-panel-bottom-neg);
  padding: 0;
  border-top: 0;
}

.erp-lightbox-comments__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  padding: 12px var(--erp-lightbox-comments-inset);
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-lightbox-comments__head strong {
  color: var(--erp-ui-ink);
  font-size: 14px;
  font-weight: 900;
}

.erp-lightbox-comments__head span {
  min-width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 900;
}

.erp-lightbox-comments__list {
  min-height: 0;
  display: grid;
  align-content: start;
  gap: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  padding: 0 var(--erp-lightbox-comments-inset);
}

.erp-lightbox-comments__empty {
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 700;
}

.erp-lightbox-comment {
  --erp-lightbox-comment-action-size: 30px;
  --erp-lightbox-comment-icon-size: 14px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  padding: 12px 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-lightbox-comment:last-child {
  border-bottom: 0;
}

.erp-lightbox-comment__avatar {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 999px;
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-ink);
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
}

.erp-lightbox-comment__avatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-lightbox-comment__body {
  min-width: 0;
  display: grid;
  gap: 7px;
}

.erp-lightbox-comment__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 800;
}

.erp-lightbox-comment__head strong {
  color: var(--erp-ui-ink);
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-lightbox-comment__meta {
  flex: 0 0 auto;
  position: relative;
  min-width: 118px;
  height: var(--erp-lightbox-comment-action-size);
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
}

.erp-lightbox-comment__time {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  min-height: var(--erp-lightbox-comment-action-size);
  white-space: nowrap;
  transition: opacity .14s ease, transform .14s ease;
}

.erp-lightbox-comment__top-delete {
  position: absolute;
  top: 0;
  right: 0;
  width: var(--erp-lightbox-comment-action-size);
  height: var(--erp-lightbox-comment-action-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 7px;
  background: rgba(239, 68, 68, 0.1);
  color: #dc2626;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transition: opacity .14s ease, background .14s ease;
}

.erp-lightbox-comment.has-comment-delete:hover .erp-lightbox-comment__time,
.erp-lightbox-comment.has-comment-delete:focus-within .erp-lightbox-comment__time {
  opacity: 0;
  transform: translateX(-4px);
}

.erp-lightbox-comment.has-comment-delete:hover .erp-lightbox-comment__top-delete,
.erp-lightbox-comment.has-comment-delete:focus-within .erp-lightbox-comment__top-delete,
.erp-lightbox-comment__top-delete:focus-visible {
  opacity: 1;
  pointer-events: auto;
}

.erp-lightbox-comment__top-delete:hover,
.erp-lightbox-comment__top-delete:focus-visible {
  background: rgba(239, 68, 68, 0.18);
  outline: none;
}

.erp-lightbox-comment__top-delete i,
.erp-lightbox-comment__top-delete svg,
.erp-lightbox-comment__top-delete .lucide,
.erp-lightbox-comment__action i,
.erp-lightbox-comment__action svg,
.erp-lightbox-comment__action .lucide {
  width: var(--erp-lightbox-comment-icon-size) !important;
  height: var(--erp-lightbox-comment-icon-size) !important;
  display: block;
  flex: 0 0 auto;
  stroke-width: 2.15;
}

.erp-lightbox-comment__text {
  margin: 0;
  color: #334155;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.42;
}

.erp-lightbox-comment__actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}

.erp-lightbox-comment__actions-left,
.erp-lightbox-comment__actions-right {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.erp-lightbox-comment__actions-left {
  justify-content: flex-start;
  flex-wrap: wrap;
}

.erp-lightbox-comment__actions-right {
  justify-content: flex-end;
}

.erp-lightbox-comment__action {
  min-width: var(--erp-lightbox-comment-action-size);
  width: var(--erp-lightbox-comment-action-size);
  height: var(--erp-lightbox-comment-action-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border: 0;
  border-radius: 7px;
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 850;
  cursor: pointer;
}

.erp-lightbox-comment__action--reply {
  padding: 0;
}

.erp-lightbox-comment__action:hover,
.erp-lightbox-comment__action:focus-visible,
.erp-lightbox-comment__action.is-active {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-ink);
  outline: none;
}

.erp-lightbox-comment__like-count {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 850;
  white-space: nowrap;
}

.erp-lightbox-comment__liked-avatars {
  display: inline-flex;
  align-items: center;
  padding-left: 4px;
}

.erp-lightbox-comment__liked-avatar {
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin-left: -6px;
  border: 2px solid #fff;
  border-radius: 999px;
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-ink);
  font-size: 9px;
  font-weight: 900;
  line-height: 1;
}

.erp-lightbox-comment__liked-avatar:first-child {
  margin-left: 0;
}

.erp-lightbox-comment__liked-avatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-lightbox-comment__like-button.is-active {
  background: rgba(244, 63, 94, 0.1);
  color: #e11d48;
}

.erp-lightbox-comment.erp-comment-item {
  grid-template-columns: 32px minmax(0, 1fr);
  margin: 0;
  padding: 10px 0 8px;
}

.erp-lightbox-comment.erp-comment-item .erp-comment-item__head {
  align-items: flex-start;
  min-height: 32px;
  color: var(--erp-ui-ink);
}

.erp-lightbox-comment.erp-comment-item .erp-comment-item__actions {
  display: inline-flex;
  grid-template-columns: none;
  justify-content: flex-end;
  gap: 6px;
  justify-self: end;
  width: auto;
}

.erp-lightbox-comment.erp-comment-item .erp-comment-item__action {
  width: auto;
  height: 30px;
  min-width: 30px;
  padding: 0 8px;
  border-radius: 8px;
}

.erp-lightbox-comment.erp-comment-item .erp-comment-item__action--like.is-active {
  background: rgba(225, 29, 72, .08);
  color: #e11d48;
}

.erp-lightbox-comment__action:disabled {
  cursor: wait;
  opacity: .62;
}

.erp-lightbox-comments__form {
  position: sticky;
  bottom: 0;
  z-index: 3;
  align-self: end;
  display: grid;
  align-items: center;
  margin: 0;
  padding: 10px var(--erp-lightbox-comments-inset) var(--erp-lightbox-comments-inset);
  border-top: 0;
  background: #fff;
}

.erp-lightbox-panel:not(.erp-lightbox-panel--comments-only) .erp-lightbox-comments__form {
  min-height: auto;
  padding: 10px var(--erp-lightbox-comments-inset) var(--erp-lightbox-comments-inset);
}

.erp-lightbox-comments__compose-bar {
  position: relative;
  justify-self: stretch;
  width: 100%;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 38px;
  align-items: end;
  min-height: 38px;
  overflow: visible;
  border: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface, #fff);
}

.erp-lightbox-comments__form textarea {
  min-width: 0;
  min-height: 38px;
  max-height: 132px;
  resize: none;
  border: 0;
  border-left: 1px solid var(--erp-ui-border-soft);
  background: transparent;
  color: var(--erp-ui-ink);
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  line-height: 20px;
  outline: 0;
  padding: 9px 12px;
}

.erp-lightbox-comments__form textarea::placeholder {
  color: var(--erp-ui-muted);
}

.erp-lightbox-comments__emoji-wrap {
  position: relative;
  min-width: 0;
}

.erp-lightbox-comments__icon-btn {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-muted);
  cursor: pointer;
}

.erp-lightbox-comments__icon-btn:hover,
.erp-lightbox-comments__icon-btn:focus-visible,
.erp-lightbox-comments__icon-btn.is-active {
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-ink);
  outline: none;
}

.erp-lightbox-comments__send {
  border-left: 1px solid var(--erp-ui-border-soft);
  color: var(--erp-ui-ink);
}

.erp-lightbox-comments__icon-btn i,
.erp-lightbox-comments__icon-btn svg,
.erp-lightbox-comments__icon-btn .lucide {
  width: 15px;
  height: 15px;
}

@media (max-width: 720px) {
  .erp-lightbox-comment__actions {
    grid-template-columns: 1fr;
  }

  .erp-lightbox-comment__actions-right {
    justify-content: flex-start;
  }
}

.erp-lightbox-stage {
  position: relative;
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  overflow: hidden;
}

.erp-lightbox-stage::before {
  content: none;
}

.erp-lightbox-stage__slides {
  position: relative;
  min-height: 0;
}

.erp-lightbox-slide {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease;
}

.erp-lightbox-slide.is-active {
  opacity: 1;
  pointer-events: auto;
}

.erp-lightbox-photo-frame {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 0;
  display: block;
  border-radius: 18px 0 0 0;
  background: var(--erp-ui-surface-muted);
  overflow: visible;
}

.erp-lightbox-photo-frame img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: 18px 0 0 0;
}

.erp-lightbox-photo-frame .erp-lightbox-placeholder {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  border-radius: 0;
}

.erp-lightbox-photo-frame:not(.is-missing) img + .erp-lightbox-placeholder {
  display: none;
}

.erp-lightbox-placeholder {
  width: min(420px, 100%);
  aspect-ratio: 1 / 1;
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
}

.erp-lightbox-placeholder i,
.erp-lightbox-placeholder svg,
.erp-lightbox-placeholder .lucide {
  width: 44px;
  height: 44px;
}

.erp-lightbox-photo-action {
  position: absolute;
  bottom: 12px;
  z-index: 2;
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 14px;
  background: rgba(15, 23, 42, 0.58);
  color: #fff;
  cursor: pointer;
  backdrop-filter: blur(10px);
  transition: background .16s ease, transform .16s ease;
}

.erp-lightbox-photo-action:hover,
.erp-lightbox-photo-action:focus-visible,
.erp-lightbox-photo-action.is-active {
  background: rgba(15, 23, 42, 0.78);
  outline: none;
  transform: translateY(-1px);
}

.erp-lightbox-photo-action.is-active {
  color: #fecdd3;
}

.erp-lightbox-photo-action--like {
  left: 12px;
}

.erp-lightbox-photo-action--share {
  right: 12px;
}

.erp-lightbox-photo-action i,
.erp-lightbox-photo-action svg,
.erp-lightbox-photo-action .lucide {
  width: 19px;
  height: 19px;
}

.erp-lightbox-nav {
  position: absolute;
  top: 50%;
  z-index: 3;
  width: 52px;
  height: 76px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 0;
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.84);
  cursor: pointer;
  transform: translateY(-50%);
  backdrop-filter: blur(12px);
}

.erp-lightbox-nav:hover,
.erp-lightbox-nav:focus-visible {
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
  outline: none;
}

.erp-lightbox-nav i,
.erp-lightbox-nav svg,
.erp-lightbox-nav .lucide {
  width: 23px;
  height: 23px;
}

.erp-lightbox-nav--prev {
  left: 0;
}

.erp-lightbox-nav--next {
  right: 0;
}

.erp-lightbox-thumbs {
  position: relative;
  z-index: 2;
  isolation: isolate;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: var(--erp-lightbox-thumbs-height);
  padding: 10px;
  overflow-x: auto;
  overflow-y: hidden;
  border-top: 1px solid var(--erp-ui-border-soft);
  background: #fff;
  backdrop-filter: none;
}

.erp-lightbox-thumbs::before,
.erp-lightbox-thumbs::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.erp-lightbox-thumbs::before {
  inset: -20px;
  z-index: -2;
  background-image: var(--erp-lightbox-thumbs-bg-image);
  background-position: center;
  background-size: cover;
  filter: blur(18px);
  opacity: .28;
  transform: scale(1.04);
}

.erp-lightbox-thumbs::after {
  inset: 0;
  z-index: -1;
  background: rgba(255, 255, 255, 0.78);
}

.erp-lightbox-thumb {
  flex: 0 0 66px;
  position: relative;
  z-index: 1;
  width: 66px;
  height: 66px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 2px solid transparent;
  border-radius: 12px;
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
  cursor: pointer;
  overflow: hidden;
}

.erp-lightbox-thumb:hover,
.erp-lightbox-thumb:focus-visible,
.erp-lightbox-thumb.is-active {
  border-color: var(--erp-ui-ink);
  outline: none;
}

.erp-lightbox-thumb img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-lightbox-thumb i,
.erp-lightbox-thumb svg,
.erp-lightbox-thumb .lucide {
  width: 18px;
  height: 18px;
}

.erp-lightbox-thumb--add {
  border-color: var(--erp-ui-border-soft);
  background: #fff;
}

.erp-lightbox-thumb--add:hover,
.erp-lightbox-thumb--add:focus-visible {
  background: var(--erp-ui-surface-muted);
}

.erp-lightbox-empty {
  min-height: 320px;
  display: grid;
  place-items: center;
  text-align: center;
  color: var(--erp-ui-muted);
}

@media (max-width: 720px) {
  .erp-picker__toolbar {
    grid-template-columns: minmax(0, 1fr);
  }

  .erp-picker__counter {
    min-height: 38px;
    justify-items: start;
    border-left: 0;
    border-top: 1px solid #e5e7eb;
  }

  .erp-picker__list {
    max-height: min(54vh, 430px);
  }

  .erp-picker-item {
    grid-template-columns: 36px 48px minmax(0, 1fr);
    padding-right: 12px;
  }

  .erp-picker-item__meta {
    grid-column: 3;
    justify-self: start;
  }

  .erp-lightbox-overlay {
    padding: 0;
  }

  .erp-lightbox-viewer {
    grid-template-columns: 1fr;
    grid-template-rows: minmax(0, 1fr) minmax(260px, 42vh);
    border-radius: 0;
  }

  .erp-lightbox-shell--comments-only {
    width: 100vw;
    height: 100dvh;
  }

  .erp-lightbox-viewer--comments-only {
    grid-template-rows: minmax(0, 1fr);
  }

  .erp-lightbox-panel {
    --erp-lightbox-panel-x: 10px;
    --erp-lightbox-panel-x-neg: -10px;
    --erp-lightbox-panel-y: 16px;
    --erp-lightbox-panel-bottom: 16px;
    --erp-lightbox-panel-bottom-neg: -16px;

    order: 2;
    grid-template-rows: auto auto auto auto auto minmax(0, 1fr);
    padding: var(--erp-lightbox-panel-y) var(--erp-lightbox-panel-x) var(--erp-lightbox-panel-bottom);
  }

  .erp-lightbox-panel--comments-only {
    order: 1;
    grid-template-rows: auto minmax(0, 1fr);
  }

  .erp-lightbox-stage {
    order: 1;
  }

  .erp-lightbox-slide {
    padding: 0;
  }

  .erp-lightbox-thumbs {
    min-height: 70px;
  }

  .erp-lightbox-panel:not(.erp-lightbox-panel--comments-only) .erp-lightbox-comments__form {
    min-height: 0;
    padding: 10px var(--erp-lightbox-comments-inset) var(--erp-lightbox-comments-inset);
  }

  .erp-lightbox-thumb {
    flex-basis: 54px;
    width: 54px;
    height: 54px;
  }
}

.erp-social-feed-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-social-feed-main {
  display: grid;
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-social-feed[data-erp-tab-panel="feed"] .erp-social-feed-shell .erp-social-feed--embedded,
.erp-social-card[data-erp-tab-panel="feed"] .erp-social-feed-shell .erp-social-feed--embedded {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  min-width: 0;
}

.erp-virtual-feed-list {
  position: relative;
  display: block !important;
  min-width: 0;
  overflow-anchor: none;
}

.erp-virtual-feed-sentinel {
  display: block;
  width: 100%;
  height: 1px;
  overflow: hidden;
  pointer-events: none;
  visibility: hidden;
}

.erp-virtual-feed-row {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(var(--erp-virtual-feed-columns, 4), minmax(0, 1fr));
  align-items: stretch;
  column-gap: var(--erp-virtual-feed-column-gap, var(--erp-ui-space-3));
  overflow-anchor: none;
  contain: layout paint;
  will-change: transform;
}

.erp-virtual-feed-row > .erp-social-post,
.erp-virtual-feed-row > .erp-list-card {
  min-width: 0;
  height: 100%;
  contain: layout paint;
  contain-intrinsic-size: 360px;
}

.erp-virtual-feed-row > .erp-home-personal-feed__item {
  min-width: 0;
  contain: layout paint;
  contain-intrinsic-size: 150px;
}

.erp-realtime-motion-moving {
  will-change: transform;
  transition: transform .34s cubic-bezier(.2, .82, .2, 1);
}

.erp-realtime-motion-enter {
  opacity: 0;
  transform: translate3d(0, -10px, 0) scale(.985);
  filter: blur(2px);
  will-change: transform, opacity, filter;
}

.erp-realtime-motion-enter.is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  filter: blur(0);
  transition:
    transform .36s cubic-bezier(.2, .82, .2, 1),
    opacity .24s ease,
    filter .24s ease;
}

@media (prefers-reduced-motion: reduce) {
  .erp-realtime-motion-moving,
  .erp-realtime-motion-enter,
  .erp-realtime-motion-enter.is-visible {
    transition: none;
    transform: none;
    filter: none;
  }
}

.erp-social-feed[data-erp-tab-panel="feed"] .erp-social-post--model,
.erp-social-card[data-erp-tab-panel="feed"] .erp-social-post--model {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 9px;
  min-width: 0;
  padding: 10px;
  border: 0;
  border-radius: var(--erp-ui-radius);
  background: #fff;
  box-shadow: none;
  overflow: hidden;
}

.erp-social-feed[data-erp-tab-panel="feed"] .erp-social-post--model.is-actions-open,
.erp-social-card[data-erp-tab-panel="feed"] .erp-social-post--model.is-actions-open {
  overflow: visible;
}

.erp-social-feed[data-erp-tab-panel="feed"] .erp-social-post__content,
.erp-social-card[data-erp-tab-panel="feed"] .erp-social-post__content {
  min-width: 0;
  min-height: 0;
  height: 100%;
  display: flex;
  flex: 1 1 auto;
  align-items: stretch;
  background: #fff;
}

.erp-social-feed[data-erp-tab-panel="feed"] .erp-social-post__head,
.erp-social-card[data-erp-tab-panel="feed"] .erp-social-post__head {
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 10px;
  margin: -10px -10px 0;
  padding: 10px;
  border-radius: var(--erp-ui-radius) var(--erp-ui-radius) 0 0;
  background: #fff;
  overflow: visible;
}

.erp-social-post--model[data-social-product-preview-card] {
  cursor: pointer;
}

.erp-social-feed[data-erp-tab-panel="feed"] .erp-social-post__avatar,
.erp-social-card[data-erp-tab-panel="feed"] .erp-social-post__avatar {
  width: 34px;
  height: 34px;
}

.erp-social-feed[data-erp-tab-panel="feed"] .erp-social-post__title span,
.erp-social-card[data-erp-tab-panel="feed"] .erp-social-post__title span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-social-feed[data-erp-tab-panel="feed"] .erp-media-bound-content p,
.erp-social-card[data-erp-tab-panel="feed"] .erp-media-bound-content p {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.45;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.erp-social-post__media[data-social-product-preview-media] {
  cursor: zoom-in;
}

.erp-media-switcher {
  position: relative;
  width: 100%;
  height: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: inherit;
}

.erp-media-switcher__viewport {
  width: 100%;
  height: 100%;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  border-radius: inherit;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.erp-media-switcher__viewport::-webkit-scrollbar {
  display: none;
}

.erp-media-switcher__track {
  display: flex;
  align-items: stretch;
  width: 100%;
  height: 100%;
  min-width: 0;
}

.erp-media-switcher__item {
  flex: 0 0 100%;
  position: relative;
  min-width: 0;
  height: 100%;
  margin: 0;
  overflow: hidden;
  border-radius: inherit;
  scroll-snap-align: start;
}

.erp-media-switcher__item img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  object-fit: cover;
}

.erp-media-switcher__controls {
  position: absolute;
  right: 0;
  bottom: 8px;
  left: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 12px;
  pointer-events: none;
}

.erp-media-switcher__controls[hidden] {
  display: none;
}

.erp-media-switcher__dot {
  background: rgba(255, 255, 255, .74);
  box-shadow: 0 1px 5px rgba(15, 23, 42, .24);
  pointer-events: auto;
}

.erp-media-switcher__dot:hover,
.erp-media-switcher__dot:focus-visible {
  background: #ffffff;
}

.erp-media-switcher__dot.is-active {
  background: #ffffff;
}

.erp-social-post__media--placeholder {
  display: grid;
  place-items: center;
  background: var(--erp-ui-surface-muted);
}

.erp-social-post__media-empty {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: var(--erp-ui-muted);
}

.erp-social-post__media-empty i,
.erp-social-post__media-empty svg,
.erp-social-post__media-empty .lucide {
  width: 24px !important;
  height: 24px !important;
}

.erp-social-post__color-badges {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 3;
  display: inline-flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 6px;
  max-width: calc(100% - 42px);
  min-height: 40px;
  padding: 0 12px;
  border-radius: 0 var(--erp-social-color-r) 0 0;
  background: var(--erp-social-color-bg);
}

.erp-social-post__color-badges::before,
.erp-social-post__color-badges::after {
  content: "";
  position: absolute;
  width: var(--erp-social-color-r);
  height: var(--erp-social-color-r);
  pointer-events: none;
}

.erp-social-post__color-badges::before {
  top: calc(var(--erp-social-color-r) * -1);
  left: 0;
  background: radial-gradient(
    circle at 100% 0,
    transparent 0 calc(var(--erp-social-color-r) - 1px),
    var(--erp-social-color-bg) var(--erp-social-color-r)
  );
}

.erp-social-post__color-badges::after {
  right: calc(var(--erp-social-color-r) * -1);
  bottom: 0;
  background: radial-gradient(
    circle at 100% 0,
    transparent 0 calc(var(--erp-social-color-r) - 1px),
    var(--erp-social-color-bg) var(--erp-social-color-r)
  );
}

.erp-social-color-badge {
  position: relative;
  display: inline-flex;
  width: 18px;
  height: 18px;
  padding: 0;
  border: 2px solid rgba(255, 255, 255, .92);
  border-radius: 999px;
  background: #cbd5e1;
  appearance: none;
  cursor: pointer;
  transform: scale(1);
  transform-origin: center;
  transition:
    transform .18s ease,
    box-shadow .18s ease;
}

.erp-social-color-badge:hover,
.erp-social-color-badge:focus-visible {
  outline: none;
  transform: scale(1.12);
}

.erp-social-color-badge.is-active {
  z-index: 2;
  transform: scale(1.28);
}

.erp-social-color-badge.is-black-white { background: var(--erp-product-color-black-white); }
.erp-social-color-badge.is-black { background: var(--erp-product-color-black); }
.erp-social-color-badge.is-white { background: var(--erp-product-color-white); border-color: rgba(148, 163, 184, .65); }
.erp-social-color-badge.is-beige { background: var(--erp-product-color-beige); }
.erp-social-color-badge.is-gray { background: var(--erp-product-color-gray); }
.erp-social-color-badge.is-graphite { background: var(--erp-product-color-graphite); }
.erp-social-color-badge.is-light-brown { background: var(--erp-product-color-light-brown); }
.erp-social-color-badge.is-brown { background: var(--erp-product-color-brown); }
.erp-social-color-badge.is-cappuccino { background: var(--erp-product-color-cappuccino); }
.erp-social-color-badge.is-mocha { background: var(--erp-product-color-mocha); }
.erp-social-color-badge.is-navy { background: var(--erp-product-color-navy); }
.erp-social-color-badge.is-blue { background: var(--erp-product-color-blue); }
.erp-social-color-badge.is-sky { background: var(--erp-product-color-sky); }
.erp-social-color-badge.is-green { background: var(--erp-product-color-green); }
.erp-social-color-badge.is-olive { background: var(--erp-product-color-olive); }
.erp-social-color-badge.is-red { background: var(--erp-product-color-red); }
.erp-social-color-badge.is-burgundy { background: var(--erp-product-color-burgundy); }
.erp-social-color-badge.is-raspberry { background: var(--erp-product-color-raspberry); }
.erp-social-color-badge.is-pink { background: var(--erp-product-color-pink); }
.erp-social-color-badge.is-fuchsia { background: var(--erp-product-color-fuchsia); }
.erp-social-color-badge.is-powder { background: var(--erp-product-color-powder); }
.erp-social-color-badge.is-yellow { background: var(--erp-product-color-yellow); }
.erp-social-color-badge.is-orange { background: var(--erp-product-color-orange); }
.erp-social-color-badge.is-purple { background: var(--erp-product-color-purple); }
.erp-social-color-badge.is-cream { background: var(--erp-product-color-cream); }
.erp-social-color-badge.is-gold { background: var(--erp-product-color-gold); }
.erp-social-color-badge.is-silver { background: var(--erp-product-color-silver); }
.erp-social-color-badge.is-khaki { background: var(--erp-product-color-khaki); }
.erp-social-color-badge.is-unknown { background: var(--erp-product-color-unknown); }

.erp-social-color-badge--compound {
  display: inline-flex;
  align-items: stretch;
  overflow: hidden;
  padding: 0;
  background: transparent;
}

.erp-social-color-badge--compound > .erp-social-color-badge {
  width: auto;
  min-width: 0;
  height: 100%;
  flex: 1 1 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  cursor: inherit;
  transform: none;
  transition: none;
}

.erp-social-post__media > img,
.erp-social-post__media .erp-media-switcher {
  transition: filter .16s ease, transform .16s ease;
}

[data-social-product-preview-card].is-size-selected .erp-social-post__media > img,
[data-social-product-preview-card].is-size-selected .erp-social-post__media .erp-media-switcher {
  filter: blur(5px);
  transform: scale(1.02);
}

.erp-social-post__size-actions {
  position: absolute;
  inset: 0;
  z-index: 6;
  display: grid;
  place-items: center;
  padding: 12px;
  background: transparent;
}

.erp-social-post__size-actions[hidden] {
  display: none;
}

.erp-products-card-selection {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--erp-ui-space-1);
  max-width: 100%;
  padding: var(--erp-ui-space-2) var(--erp-ui-space-3);
  overflow: hidden;
  border: 1px solid var(--erp-tooltip-border);
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-tooltip-bg);
  color: var(--erp-tooltip-text);
  box-shadow: var(--erp-tooltip-shadow);
  font-size: 14px;
  line-height: 1.2;
  font-weight: 750;
  text-align: center;
  white-space: nowrap;
}

.erp-products-card-selection__values {
  display: block;
  min-width: 0;
  overflow: hidden;
  font-weight: 900;
  text-overflow: ellipsis;
}

.erp-social-post__size-actions-panel {
  display: grid;
  gap: 0;
  width: min(340px, 100%);
  border-radius: var(--erp-ui-radius);
  box-shadow: 0 14px 34px rgba(15, 23, 42, .14);
}

[data-products-page] [data-product-view-url] {
  cursor: pointer;
}


.erp-social-feed[data-erp-tab-panel="feed"] .erp-social-post__action-bar,
.erp-social-card[data-erp-tab-panel="feed"] .erp-social-post__action-bar {
  margin-top: auto;
  margin-right: -10px;
  margin-bottom: -10px;
  margin-left: -10px;
  padding: 8px 10px;
  border-radius: 0 0 var(--erp-ui-radius) var(--erp-ui-radius);
  background: transparent;
}

.erp-social-feed[data-erp-tab-panel="feed"] .erp-social-post__action-bar .erp-social-post__icon-row,
.erp-social-card[data-erp-tab-panel="feed"] .erp-social-post__action-bar .erp-social-post__icon-row {
  border-radius: 0 0 var(--erp-ui-radius) var(--erp-ui-radius);
  background: transparent;
}

.erp-social-feed[data-erp-tab-panel="feed"] .erp-social-post__action,
.erp-social-card[data-erp-tab-panel="feed"] .erp-social-post__action {
  min-height: 34px;
  padding: 0 6px;
  font-size: 11px;
}

@media (max-width: 1320px) {
  .erp-social-feed[data-erp-tab-panel="feed"] .erp-social-feed--embedded,
  .erp-social-card[data-erp-tab-panel="feed"] .erp-social-feed--embedded {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .erp-social-feed[data-erp-tab-panel="feed"] .erp-social-feed-shell .erp-social-feed--embedded,
  .erp-social-card[data-erp-tab-panel="feed"] .erp-social-feed-shell .erp-social-feed--embedded {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.erp-social-post__erp-box {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
}

.erp-social-post__erp-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.erp-social-post__erp-title strong {
  font-size: 13px;
  color: var(--erp-ui-text);
}

.erp-social-post__erp-title span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-social-mini-list {
  display: grid;
  gap: 8px;
}

.erp-social-mini-item {
  display: grid;
  gap: 2px;
  padding: 9px 10px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
}

.erp-social-mini-item--person {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
}

.erp-social-mini-item--model {
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
}

.erp-social-mini-item .erp-avatar i,
.erp-social-mini-item .erp-avatar svg,
.erp-social-mini-item .erp-avatar .lucide {
  width: 16px !important;
  height: 16px !important;
}

.erp-social-mini-item strong {
  color: var(--erp-ui-text);
  font-size: 13px;
}

.erp-social-mini-item span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 700;
}

.erp-social-profile-side {
  position: sticky;
  top: calc(var(--erp-header-h) + var(--erp-toolbar-btn-size) + 18px);
}

.erp-social-public-profile {
  display: grid;
  gap: 12px;
}

.erp-social-public-profile__identity {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.erp-social-public-profile__identity strong,
.erp-social-public-profile__identity span {
  display: block;
}

.erp-social-public-profile__identity strong {
  color: var(--erp-ui-text);
  font-size: 15px;
  line-height: 1.2;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.erp-social-public-profile__identity span {
  margin-top: 2px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-social-public-profile__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-social-side-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}

.erp-social-side-metrics div {
  display: grid;
  gap: 3px;
  min-height: 54px;
  padding: 8px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
}

.erp-social-side-metrics span {
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.erp-social-side-metrics strong {
  color: var(--erp-ui-text);
  font-size: 18px;
  line-height: 1;
  font-weight: 900;
}

.erp-social-side-note {
  margin: 0;
  color: #475569;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 700;
}

.erp-social-contact-list {
  display: grid;
  gap: 8px;
}

.erp-social-contact {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 10px 0 4px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}

.erp-social-contact[aria-disabled="true"] {
  color: var(--erp-ui-muted);
  pointer-events: none;
}

.erp-social-contact:hover,
.erp-social-contact:focus-visible {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
  outline: none;
  text-decoration: none;
}

.erp-social-contact i,
.erp-social-contact svg,
.erp-social-contact .lucide {
  justify-self: center;
  width: 16px !important;
  height: 16px !important;
}

.erp-social-state {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 58px;
}

.erp-social-state__icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: var(--erp-ui-radius);
  background: #111827;
  color: #fff;
}

.erp-social-state__icon i,
.erp-social-state__icon svg,
.erp-social-state__icon .lucide {
  width: 18px !important;
  height: 18px !important;
}

.erp-social-state strong,
.erp-social-state span {
  display: block;
}

.erp-social-state strong {
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 900;
}

.erp-social-state span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-empty-state--compact {
  display: grid;
  justify-items: center;
  gap: 4px;
  min-height: 92px;
  padding: 16px 8px 6px;
  border: 0;
  border-top: 0;
  border-radius: 0;
  background: transparent;
  text-align: center;
}

.erp-empty-state--compact .erp-empty-state__icon {
  width: 28px;
  height: 28px;
  margin-bottom: 2px;
  color: #64748b;
}

.erp-empty-state--compact .erp-empty-state__icon i,
.erp-empty-state--compact .erp-empty-state__icon svg,
.erp-empty-state--compact .erp-empty-state__icon .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-empty-state--compact strong {
  margin: 0;
  color: #334155;
  font-size: 13px;
  line-height: 1.25;
  font-weight: 900;
}

.erp-empty-state--compact p {
  max-width: 460px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.erp-register__products > .erp-empty-state--compact,
.erp-receipt-paper__body .erp-empty-state--compact {
  border-top: 0;
}

.erp-account-about-panel .erp-offcanvas {
  width: min(430px, 94vw);
}

.erp-account-about-panel__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.erp-account-about-panel__identity {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.erp-account-about-panel__identity h2 {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 16px;
  font-weight: 900;
}

.erp-account-about-panel__identity span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-account-about-panel__section {
  display: grid;
  gap: 10px;
  padding: 12px 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-account-about-panel__section:first-child {
  padding-top: 0;
}

.erp-account-about-panel__section:last-child {
  border-bottom: 0;
}

.erp-account-about-panel__section h3 {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
}

.erp-account-about-list {
  display: grid;
  gap: 0;
  margin: 0;
}

.erp-account-about-list div {
  display: grid;
  grid-template-columns: minmax(96px, .45fr) minmax(0, 1fr);
  gap: 12px;
  min-height: 34px;
  padding: 7px 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-account-about-list div:last-child {
  border-bottom: 0;
}

.erp-account-about-list dt,
.erp-account-about-list dd {
  margin: 0;
}

.erp-account-about-list dt {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 900;
}

.erp-account-about-list dd {
  min-width: 0;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 800;
  overflow-wrap: anywhere;
}





/* ==========================================================================
   ERP Shop / Client Portal — Instagram-like Feed v3
   --------------------------------------------------------------------------
   Призначення:
   - Новий напрям для client_user: магазин не як ERP-сітка, а як social feed.
   - Не копія Instagram, а власний ERP social-commerce layout.
   - Підходить для:
       shop_home
       shop_category
       client product feed
       partner product feed
       recommendations
       promoted products
   - Клієнту НЕ показувати:
       закуп;
       внутрішні залишки;
       owner_account_id;
       supplier/partner internal data;
       внутрішні коментарі;
       складські рухи.
   - Старі класи erp-shop-card / erp-product-feed залишені, але отримують
     нову social-feed поведінку.
   ========================================================================== */


/* ==========================================================================
   1. Tokens
   ========================================================================== */

:root {
  --erp-shop-feed-max: 560px;
  --erp-shop-side-w: 320px;

  --erp-shop-gap: var(--erp-ui-space-3, 12px);
  --erp-shop-gap-sm: var(--erp-ui-space-2, 8px);
  --erp-shop-gap-lg: var(--erp-ui-space-4, 16px);

  --erp-shop-surface: var(--erp-ui-surface, #ffffff);
  --erp-shop-surface-muted: var(--erp-ui-surface-muted, #f8fafc);
  --erp-shop-surface-soft: var(--erp-ui-surface-soft, #f1f5f9);
  --erp-shop-bg: var(--erp-ui-bg, #f3f4f6);

  --erp-shop-border: var(--erp-ui-border, #d1d5db);
  --erp-shop-border-soft: var(--erp-ui-border-soft, #e5e7eb);

  --erp-shop-text: var(--erp-ui-text, #111827);
  --erp-shop-muted: var(--erp-ui-muted, #64748b);
  --erp-shop-primary: var(--erp-ui-primary, #2563eb);
  --erp-shop-success: var(--erp-ui-success, #16a34a);
  --erp-shop-warning: var(--erp-ui-warning, #f59e0b);
  --erp-shop-danger: var(--erp-ui-danger, #dc2626);
  --erp-shop-purple: var(--erp-ui-purple, #7c3aed);

  --erp-shop-radius: var(--erp-ui-radius, 8px);
  --erp-shop-radius-sm: var(--erp-ui-radius-sm, 6px);
  --erp-shop-radius-lg: var(--erp-ui-radius-lg, 12px);
  --erp-shop-radius-pill: var(--erp-ui-radius-pill, 999px);

  --erp-shop-shadow-sm: var(--erp-ui-shadow-sm, 0 4px 10px rgba(15, 23, 42, .06));
  --erp-shop-shadow: var(--erp-ui-shadow, 0 12px 28px rgba(15, 23, 42, .10));
  --erp-shop-transition: var(--erp-ui-transition, 150ms ease);
}


/* ==========================================================================
   2. Main social shop shell
   --------------------------------------------------------------------------
   Рекомендована структура:
   .erp-shop-shell
     .erp-shop-social-layout
       main .erp-shop-feed-column
       aside .erp-shop-side-column
   ========================================================================== */

.erp-shop-shell {
  display: grid;
  gap: var(--erp-shop-gap);
  width: 100%;
  min-width: 0;
}

.erp-shop-social-layout {
  display: grid;
  grid-template-columns: minmax(0, var(--erp-shop-feed-max)) minmax(260px, var(--erp-shop-side-w));
  justify-content: center;
  align-items: start;
  gap: var(--erp-shop-gap-lg);
  width: 100%;
  min-width: 0;
}

.erp-shop-feed-column {
  display: grid;
  gap: var(--erp-shop-gap);
  min-width: 0;
}

.erp-shop-side-column {
  position: sticky;
  top: calc(var(--erp-header-h, 56px) + 12px);
  display: grid;
  gap: var(--erp-shop-gap);
  min-width: 0;
}


/* ==========================================================================
   3. Compact shop header instead of old big hero
   --------------------------------------------------------------------------
   Instagram-like home має бути легше, ніж промо-hero.
   Старий .erp-shop-hero лишається сумісним, але стає компактнішим.
   ========================================================================== */

.erp-shop-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--erp-shop-gap);
  align-items: center;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--erp-shop-border);
  border-radius: var(--erp-shop-radius);
  background: var(--erp-shop-surface);
  overflow: hidden;
}

.erp-shop-hero__main {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.erp-shop-hero__title {
  margin: 0;
  color: var(--erp-shop-text);
  font-size: clamp(18px, 2vw, 24px);
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -.02em;
}

.erp-shop-hero__text {
  max-width: 680px;
  margin: 0;
  color: var(--erp-shop-muted);
  font-size: 13px;
  line-height: 1.4;
}

.erp-shop-hero__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--erp-shop-gap-sm);
}

.erp-shop-hero__aside {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--erp-shop-muted);
  font-size: 12px;
  font-weight: 800;
}


/* ==========================================================================
   4. Stories / category rail
   --------------------------------------------------------------------------
   Це головна Instagram-like частина: категорії у вигляді stories.
   Старі .erp-shop-category-rail та .erp-shop-category підтримуються.
   ========================================================================== */

.erp-shop-story-rail,
.erp-shop-category-rail {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  overflow-x: auto;
  padding: 10px 2px 8px;
  border: 1px solid var(--erp-shop-border);
  border-radius: var(--erp-shop-radius);
  background: var(--erp-shop-surface);
  scrollbar-width: thin;
}

.erp-shop-story-rail::-webkit-scrollbar,
.erp-shop-category-rail::-webkit-scrollbar {
  height: 6px;
}

.erp-shop-story-rail::-webkit-scrollbar-thumb,
.erp-shop-category-rail::-webkit-scrollbar-thumb {
  border-radius: var(--erp-shop-radius-pill);
  background: #cbd5e1;
}

.erp-shop-story,
.erp-shop-category {
  --story-size: 62px;

  display: grid;
  justify-items: center;
  align-content: start;
  gap: 5px;
  min-width: 76px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #334155;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.15;
  text-align: center;
  white-space: normal;
  text-decoration: none;
}

.erp-shop-story:hover,
.erp-shop-story:focus-visible,
.erp-shop-category:hover,
.erp-shop-category:focus-visible {
  color: #0f172a;
  text-decoration: none;
  outline: none;
}

.erp-shop-story__avatar,
.erp-shop-category::before {
  content: "";
  display: grid;
  place-items: center;
  width: var(--story-size);
  height: var(--story-size);
  border: 2px solid #fff;
  border-radius: var(--erp-shop-radius-pill);
  background:
    linear-gradient(#fff, #fff) padding-box,
    linear-gradient(135deg, #f59e0b, #dc2626, #7c3aed, #2563eb) border-box;
  box-shadow: 0 0 0 2px transparent;
  overflow: hidden;
}

.erp-shop-story__avatar img,
.erp-shop-story__avatar .demo-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-shop-story__label,
.erp-shop-category span {
  max-width: 72px;
  overflow: hidden;
  color: inherit;
  text-overflow: ellipsis;
}

.erp-shop-story.is-active .erp-shop-story__avatar,
.erp-shop-category.is-active::before {
  box-shadow: 0 0 0 2px #111827;
}


/* ==========================================================================
   5. Feed as social posts
   --------------------------------------------------------------------------
   Старий .erp-product-feed тепер поводиться як центральна стрічка.
   Для плитки категорії можна додати .erp-product-feed--grid.
   ========================================================================== */

.erp-product-feed {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--erp-shop-gap);
  min-width: 0;
}

.erp-product-feed--grid {
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
}

.erp-product-feed--masonry {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4px;
}


/* ==========================================================================
   6. Product post card
   --------------------------------------------------------------------------
   .erp-shop-card тепер більше схожа на social post:
   header → media → actions → price/caption/meta.
   ========================================================================== */

.erp-shop-card {
  display: grid;
  grid-template-rows: auto auto auto;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-shop-border);
  border-radius: var(--erp-shop-radius);
  background: var(--erp-shop-surface);
  transition:
    border-color var(--erp-shop-transition),
    box-shadow var(--erp-shop-transition);
}

.erp-shop-card:hover {
  border-color: #cbd5e1;
  box-shadow: var(--erp-shop-shadow-sm);
}

.erp-shop-card__head {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 54px;
  padding: 8px 10px;
  border-bottom: 1px solid var(--erp-shop-border-soft);
}

.erp-shop-card__avatar {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  overflow: hidden;
  border-radius: var(--erp-shop-radius-pill);
  background: #e5e7eb;
  color: #111827;
  font-size: 12px;
  font-weight: 900;
}

.erp-shop-card__avatar img,
.erp-shop-card__avatar .demo-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-shop-card__seller {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.erp-shop-card__seller strong {
  overflow: hidden;
  color: var(--erp-shop-text);
  font-size: 13px;
  line-height: 1.1;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-shop-card__seller span {
  overflow: hidden;
  color: var(--erp-shop-muted);
  font-size: 11px;
  line-height: 1.1;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-shop-card__menu {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: var(--erp-shop-radius-pill);
  background: transparent;
  color: #334155;
  cursor: pointer;
}

.erp-shop-card__menu:hover,
.erp-shop-card__menu:focus-visible {
  background: var(--erp-shop-surface-soft);
  color: #111827;
  outline: none;
}

.erp-shop-card__media {
  position: relative;
  display: block;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background:
    linear-gradient(135deg, #e5e7eb, #f8fafc);
  color: inherit;
}

.erp-shop-card__media img,
.erp-shop-card__media .demo-img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-shop-card__media--square {
  aspect-ratio: 1 / 1;
}

.erp-shop-card__media--wide {
  aspect-ratio: 16 / 10;
}

.erp-shop-card__placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #94a3b8;
  font-size: 13px;
  font-weight: 800;
}

.erp-shop-card__badge {
  position: absolute;
  top: 8px;
  left: 8px;
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 8px;
  border-radius: var(--erp-shop-radius-pill);
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
}

.erp-shop-card__body {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 10px;
}

.erp-shop-card__social-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  margin: -2px -2px 0;
}

.erp-shop-card__social-action,
.erp-shop-card__favorite {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: var(--erp-shop-radius-pill);
  background: transparent;
  color: #111827;
  font-size: 17px;
  cursor: pointer;
}

.erp-shop-card__social-action:hover,
.erp-shop-card__social-action:focus-visible,
.erp-shop-card__favorite:hover,
.erp-shop-card__favorite:focus-visible {
  background: var(--erp-shop-surface-soft);
  outline: none;
}

.erp-shop-card__social-action--end {
  margin-left: auto;
}

.erp-shop-card__price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 8px;
  color: var(--erp-shop-text);
}

.erp-shop-card__price strong {
  color: var(--erp-shop-text);
  font-size: 17px;
  font-weight: 900;
  line-height: 1;
}

.erp-shop-card__price span {
  color: var(--erp-shop-muted);
  font-size: 12px;
  text-decoration: line-through;
}

.erp-shop-card__title {
  margin: 0;
  color: var(--erp-shop-text);
  font-size: 14px;
  line-height: 1.35;
  font-weight: 900;
}

.erp-shop-card__title a {
  color: inherit;
  text-decoration: none;
}

.erp-shop-card__title a:hover {
  text-decoration: underline;
}

.erp-shop-card__caption {
  margin: 0;
  color: #334155;
  font-size: 13px;
  line-height: 1.42;
}

.erp-shop-card__caption strong {
  color: var(--erp-shop-text);
  font-weight: 900;
}

.erp-shop-card__meta {
  min-width: 0;
  color: var(--erp-shop-muted);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.erp-shop-card__availability {
  color: var(--erp-shop-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-shop-card__availability.is-available {
  color: var(--erp-shop-success);
}

.erp-shop-card__availability.is-limited {
  color: var(--erp-shop-warning);
}

.erp-shop-card__availability.is-unavailable {
  color: var(--erp-shop-danger);
}

.erp-shop-card__actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  margin-top: 2px;
}


/* ==========================================================================
   7. Right sidebar widgets
   ========================================================================== */

.erp-shop-widget {
  display: grid;
  gap: var(--erp-shop-gap-sm);
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--erp-shop-border);
  border-radius: var(--erp-shop-radius);
  background: var(--erp-shop-surface);
}

.erp-shop-widget__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.erp-shop-widget__title {
  margin: 0;
  color: var(--erp-shop-text);
  font-size: 14px;
  font-weight: 900;
}

.erp-shop-widget__meta {
  color: var(--erp-shop-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-shop-mini-list {
  display: grid;
  gap: 8px;
}

.erp-shop-mini-item {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.erp-shop-mini-item__image {
  width: 42px;
  height: 42px;
  overflow: hidden;
  border-radius: var(--erp-shop-radius-sm);
  background: var(--erp-shop-surface-soft);
}

.erp-shop-mini-item__body {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.erp-shop-mini-item__body strong {
  overflow: hidden;
  color: var(--erp-shop-text);
  font-size: 12px;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-shop-mini-item__body span {
  overflow: hidden;
  color: var(--erp-shop-muted);
  font-size: 11px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-shop-mini-item__price {
  color: var(--erp-shop-text);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}


/* ==========================================================================
   8. Product detail
   ========================================================================== */

.erp-shop-product {
  display: grid;
  grid-template-columns: minmax(260px, 560px) minmax(0, 1fr);
  gap: var(--erp-shop-gap-lg);
  align-items: start;
  min-width: 0;
}

.erp-shop-product__gallery {
  display: grid;
  gap: var(--erp-shop-gap-sm);
  min-width: 0;
}

.erp-shop-product__main-image {
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border: 1px solid var(--erp-shop-border);
  border-radius: var(--erp-shop-radius);
  background: var(--erp-shop-surface-soft);
}

.erp-shop-product__main-image img,
.erp-shop-product__main-image .demo-img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-shop-product__thumbs {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(56px, 1fr));
  gap: 8px;
}

.erp-shop-product__thumb {
  aspect-ratio: 1;
  overflow: hidden;
  border: 1px solid var(--erp-shop-border);
  border-radius: var(--erp-shop-radius-sm);
  background: var(--erp-shop-surface-soft);
  cursor: pointer;
}

.erp-shop-product__thumb.is-active {
  border-color: #111827;
  box-shadow: inset 0 0 0 1px #111827;
}

.erp-shop-buy-panel {
  position: sticky;
  top: calc(var(--erp-header-h, 56px) + 12px);
  display: grid;
  gap: var(--erp-shop-gap);
  min-width: 0;
  padding: var(--erp-shop-gap-lg);
  border: 1px solid var(--erp-shop-border);
  border-radius: var(--erp-shop-radius);
  background: var(--erp-shop-surface);
}

.erp-shop-buy-panel__title {
  margin: 0;
  color: var(--erp-shop-text);
  font-size: clamp(22px, 2.2vw, 32px);
  line-height: 1.08;
  font-weight: 900;
}

.erp-shop-buy-panel__meta {
  color: var(--erp-shop-muted);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
}

.erp-shop-buy-panel__price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 10px;
}

.erp-shop-buy-panel__price strong {
  color: var(--erp-shop-text);
  font-size: 30px;
  line-height: 1;
  font-weight: 900;
}

.erp-shop-buy-panel__price span {
  color: var(--erp-shop-muted);
  font-size: 14px;
  text-decoration: line-through;
}

.erp-shop-buy-panel__options {
  display: grid;
  gap: var(--erp-shop-gap-sm);
}

.erp-shop-option-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.erp-shop-option {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid var(--erp-button-group-divider);
  border-radius: var(--erp-shop-radius-sm);
  background: var(--erp-button-group-bg);
  color: var(--erp-button-group-text);
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
}

.erp-shop-option:hover,
.erp-shop-option:focus-visible {
  border-color: var(--erp-button-group-border);
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-shop-option.is-active {
  border-color: var(--erp-button-group-border);
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.erp-shop-option[disabled],
.erp-shop-option.is-disabled {
  opacity: .45;
  cursor: not-allowed;
}


/* ==========================================================================
   9. Shared product cart
   ========================================================================== */

.erp-product-cart-fab {
  position: fixed;
  right: 22px;
  bottom: calc(var(--erp-footer-h, 56px) + 18px);
  z-index: var(--erp-layer-floating);
  display: inline-grid;
  place-items: center;
  width: 52px;
  height: 52px;
  padding: 0;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  box-shadow: var(--erp-ui-shadow-lg);
  cursor: pointer;
  appearance: none;
}

.erp-product-cart-fab[hidden] {
  display: none;
}

.erp-product-cart-fab:hover,
.erp-product-cart-fab:focus-visible {
  background: var(--erp-button-group-hover-bg);
  color: var(--erp-button-group-hover-text);
  outline: none;
}

.erp-product-cart-fab i,
.erp-product-cart-fab svg,
.erp-product-cart-fab .lucide {
  width: 21px !important;
  height: 21px !important;
}

.erp-product-cart-fab [data-product-feed-cart-count] {
  position: absolute;
  top: 1px;
  right: 1px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 19px;
  height: 19px;
  padding: 0 4px;
  border: 2px solid var(--erp-system-badge-border);
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  box-shadow: var(--erp-system-badge-shadow);
  font-size: 9px;
  font-weight: 900;
  line-height: 1;
}

.erp-product-cart-fab:not(.has-items) [data-product-feed-cart-count] {
  background: var(--erp-system-badge-bg);
}

.erp-marketplace-catalog-rail {
  position: sticky;
  top: var(--erp-marketplace-panel-sticky-top, calc(var(--erp-page-toolbar-h, 54px) + var(--erp-ui-space-3, 12px)));
  display: grid;
  grid-column: 2;
  grid-row: 1;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--erp-ui-space-3, 12px);
  align-self: start;
  min-width: 0;
}

.erp-marketplace-catalog-rail > .erp-products-filter-panel {
  position: relative;
  top: auto;
  grid-column: 1;
  grid-row: 1;
  height: max(260px, calc(var(--erp-products-filter-available-height, 586px) - 66px));
  max-height: max(260px, calc(var(--erp-products-filter-available-height, 586px) - 66px));
}

@media (max-width: 760px) {
  .erp-product-cart-fab {
    right: 14px;
    bottom: calc(var(--erp-footer-h, 56px) + 14px);
  }

  .erp-marketplace-catalog-rail {
    position: relative;
    top: auto;
    grid-column: 1;
    grid-row: 1;
    width: 100%;
  }

  .erp-marketplace-catalog-rail > .erp-products-filter-panel {
    height: max(260px, calc(var(--erp-products-filter-available-height, 586px) - 66px));
    max-height: max(260px, calc(var(--erp-products-filter-available-height, 586px) - 66px));
  }

}

.banking-payment-fab {
  position: fixed;
  right: 22px;
  bottom: calc(var(--erp-footer-h, 56px) + 18px);
  z-index: 1340;
  display: inline-grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border: 1px solid var(--erp-ui-border);
  border-radius: 50%;
  background: var(--erp-ui-surface);
  color: var(--erp-ui-ink);
  box-shadow: var(--erp-ui-shadow-lg);
  cursor: pointer;
  appearance: none;
  transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.banking-payment-fab:hover,
.banking-payment-fab:focus-visible {
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-ink);
  outline: none;
  transform: translateY(-2px);
}

.banking-payment-fab:active {
  transform: translateY(0);
}

.banking-payment-fab svg {
  width: 23px !important;
  height: 23px !important;
}

.banking-payment-modal {
  width: min(720px, calc(100vw - 32px));
}

.banking-payment-queue {
  margin-bottom: 14px;
  overflow: hidden;
  border-radius: 8px;
  background: var(--erp-ui-surface);
}

.banking-payment-queue__title {
  min-height: 40px;
  margin: 0;
  padding: 0 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: var(--erp-ui-surface-muted);
}

.banking-payment-queue__list {
  display: grid;
}

.banking-payment-queue__row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-width: 0;
  padding: 11px 12px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.banking-payment-queue__row:last-child {
  border-bottom: 0;
}

.banking-payment-queue__icon {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
}

.banking-payment-queue__row.is-warning .banking-payment-queue__icon {
  background: color-mix(in srgb, var(--erp-ui-warning, #f59e0b) 14%, var(--erp-ui-surface));
  color: var(--erp-ui-warning, #f59e0b);
}

.banking-payment-queue__row[data-banking-payment-status="completed"] .banking-payment-queue__icon {
  background: color-mix(in srgb, var(--erp-ui-success, #16a34a) 12%, var(--erp-ui-surface));
  color: var(--erp-ui-success, #16a34a);
}

.banking-payment-queue__row[data-banking-payment-status="failed"] .banking-payment-queue__icon {
  background: color-mix(in srgb, var(--erp-ui-danger, #dc2626) 11%, var(--erp-ui-surface));
  color: var(--erp-ui-danger, #dc2626);
}

.banking-payment-queue__row[data-banking-payment-status="cancelled"] .banking-payment-queue__icon {
  color: var(--erp-ui-muted);
}

.banking-payment-queue__content,
.banking-payment-queue__amount {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.banking-payment-queue__content small,
.banking-payment-queue__amount small {
  color: var(--erp-ui-muted);
  overflow-wrap: anywhere;
}

.banking-payment-queue__amount {
  justify-items: end;
  text-align: right;
}

.banking-payment-queue__side {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  min-width: 0;
}

.banking-payment-queue__actions {
  flex: 0 0 auto;
  min-height: 36px;
}

.banking-payment-flow {
  display: grid;
  min-width: 0;
}

.banking-payment-modal .erp-modal__content {
  background: var(--erp-ui-surface);
}

.banking-payment-progress {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-height: 44px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-muted);
}

.banking-payment-progress > span {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.banking-payment-progress > span + span {
  border-left: 1px solid var(--erp-ui-border-soft);
}

.banking-payment-progress > span::after {
  content: '';
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  height: 2px;
  background: transparent;
}

.banking-payment-progress > span.is-active {
  color: var(--erp-ui-ink);
}

.banking-payment-progress > span.is-active::after,
.banking-payment-progress > span.is-complete::after {
  background: var(--erp-button-group-active-bg);
}

.banking-payment-progress small {
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border: 1px solid var(--erp-ui-border);
  border-radius: 50%;
  background: var(--erp-ui-surface);
  color: inherit;
  font-size: 11px;
}

.banking-payment-progress > span.is-active small,
.banking-payment-progress > span.is-complete small {
  border-color: var(--erp-button-group-active-bg);
  background: var(--erp-button-group-active-bg);
  color: var(--erp-button-group-active-text);
}

.banking-payment-form {
  display: grid;
  gap: 0;
  min-width: 0;
}

.banking-payment-source {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin: 12px 16px;
  padding: 12px;
  border-radius: 8px;
  background: var(--erp-ui-surface-muted);
}

.banking-payment-source__account,
.banking-payment-source__balance {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.banking-payment-source strong,
.banking-payment-source span,
.banking-payment-source small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.banking-payment-source small {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 750;
}

.banking-payment-source__account > span {
  color: var(--erp-ui-muted);
  font-size: 12px;
}

.banking-payment-source__balance {
  justify-items: end;
  text-align: right;
}

.banking-payment-source__balance strong {
  font-size: 16px;
}

.banking-payment-unavailable {
  margin: 0 16px 12px;
}

.banking-payment-section {
  min-width: 0;
  border-top: 1px solid var(--erp-ui-border-soft);
}

.banking-payment-section__header {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 16px;
  background: var(--erp-ui-surface-muted);
}

.banking-payment-section__header > span:last-child {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.banking-payment-section__header strong {
  color: var(--erp-ui-ink);
  font-size: 13px;
  font-weight: 850;
}

.banking-payment-section__header small {
  color: var(--erp-ui-muted);
  font-size: 11px;
}

.banking-payment-section__icon {
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 50%;
  background: var(--erp-ui-surface);
  color: var(--erp-ui-muted);
}

.banking-payment-section__body {
  padding: 12px 16px 16px;
}

.banking-payment-form .erp-field--wide {
  grid-column: 1 / -1;
}

.banking-payment-amount-field {
  grid-column: 1 / -1;
}

.banking-payment-purpose-field {
  grid-column: 1 / -1;
}

.banking-payment-purpose-field textarea {
  min-height: 82px;
  resize: vertical;
}

.banking-payment-review {
  min-width: 0;
}

.banking-payment-review__list,
.banking-payment-result__meta {
  display: grid;
  margin: 0;
}

.banking-payment-review__hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  min-width: 0;
  padding: 18px 16px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-muted);
}

.banking-payment-review__hero > span {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.banking-payment-review__hero small,
.banking-payment-review__hero span > span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.banking-payment-review__hero strong {
  color: var(--erp-ui-ink);
  font-size: 16px;
  overflow-wrap: anywhere;
}

.banking-payment-review__amount {
  justify-items: end;
  text-align: right;
}

.banking-payment-review__amount strong {
  font-size: 22px;
}

.banking-payment-review__list > div,
.banking-payment-result__meta > div {
  display: grid;
  grid-template-columns: minmax(120px, 0.38fr) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  padding: 11px 16px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.banking-payment-review__list > div:last-child,
.banking-payment-result__meta > div:last-child {
  border-bottom: 0;
}

.banking-payment-review dt,
.banking-payment-result__meta dt {
  color: var(--erp-ui-muted, #60708a);
  font-size: 13px;
}

.banking-payment-review dd,
.banking-payment-result__meta dd {
  margin: 0;
  color: var(--erp-ui-ink);
  font-weight: 750;
  overflow-wrap: anywhere;
}

.banking-payment-confirmation-note {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  margin: 12px 16px 16px;
  padding: 12px;
  border-radius: 8px;
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.45;
}

.banking-payment-confirmation-note svg {
  color: var(--erp-ui-ink);
}

.banking-payment-result {
  display: grid;
  justify-items: center;
  gap: 10px;
  padding: 28px 16px;
  text-align: center;
}

.banking-payment-result[hidden] {
  display: none;
}

.banking-payment-result__icon {
  display: inline-grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--erp-ui-success, #16a34a) 12%, var(--erp-ui-surface, #ffffff));
  color: var(--erp-ui-success, #16a34a);
}

.banking-payment-result.is-warning .banking-payment-result__icon {
  background: color-mix(in srgb, var(--erp-ui-warning, #f59e0b) 14%, var(--erp-ui-surface, #ffffff));
  color: var(--erp-ui-warning, #f59e0b);
}

.banking-payment-result p {
  max-width: 520px;
  margin: 0;
  color: var(--erp-ui-muted, #60708a);
  line-height: 1.5;
}

.banking-payment-result__meta {
  width: min(100%, 520px);
  margin-top: 6px;
  text-align: left;
}

@media (max-width: 640px) {
  .banking-payment-fab {
    right: 14px;
    bottom: calc(var(--erp-footer-h, 52px) + 14px);
    width: 52px;
    height: 52px;
  }

  .banking-payment-source {
    grid-template-columns: auto minmax(0, 1fr);
    margin: 10px 12px;
  }

  .banking-payment-queue__row {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .banking-payment-queue__amount {
    justify-items: start;
    text-align: left;
  }

  .banking-payment-queue__side {
    grid-column: 2;
    width: 100%;
    justify-content: space-between;
  }

  .banking-payment-source__balance {
    grid-column: 1 / -1;
    justify-items: start;
    padding-top: 8px;
    border-top: 1px solid var(--erp-ui-border-soft);
    text-align: left;
  }

  .banking-payment-review__list > div,
  .banking-payment-result__meta > div {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .banking-payment-section__body {
    grid-template-columns: 1fr;
    padding: 12px;
  }

  .banking-payment-amount-field,
  .banking-payment-purpose-field {
    grid-column: 1;
  }

  .banking-payment-review__hero {
    grid-template-columns: 1fr;
    padding: 16px 12px;
  }

  .banking-payment-review__amount {
    justify-items: start;
    padding-top: 10px;
    border-top: 1px solid var(--erp-ui-border-soft);
    text-align: left;
  }
}

.erp-product-cart-panel {
  width: min(520px, 96vw);
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-product-cart-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 58px;
  background: var(--erp-ui-surface);
}

.erp-product-cart-head .erp-products-filter-panel__heading small {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 750;
}

.erp-product-cart-close {
  background: var(--erp-ui-surface);
}

.erp-product-cart-root--catalog {
  display: contents !important;
}

.erp-product-cart-root--catalog > .erp-offcanvas-backdrop {
  display: none;
}

.erp-product-cart-root--catalog .erp-product-cart-panel {
  position: sticky;
  inset: auto;
  top: var(--erp-marketplace-panel-sticky-top, calc(var(--erp-page-toolbar-h, 54px) + var(--erp-ui-space-3, 12px)));
  grid-column: 2;
  grid-row: 1;
  display: none;
  width: 100%;
  height: var(--erp-products-filter-available-height, 520px);
  min-height: 260px;
  max-height: var(--erp-products-filter-available-height, 520px);
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-md, 8px);
  background: var(--erp-ui-surface);
  box-shadow: none;
  opacity: 1;
  pointer-events: auto;
  transform: none;
}

.erp-marketplace-catalog-rail .erp-product-cart-root--catalog .erp-product-cart-panel {
  position: relative;
  inset: auto;
  grid-column: 1;
  grid-row: 1;
  height: max(260px, calc(var(--erp-products-filter-available-height, 586px) - 66px));
  max-height: max(260px, calc(var(--erp-products-filter-available-height, 586px) - 66px));
}

.erp-product-cart-root--catalog.is-open .erp-product-cart-panel {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.erp-product-cart-root--catalog .erp-product-cart-body {
  min-height: 0;
  overflow: auto;
}

@media (max-width: 760px) {
  .erp-marketplace-catalog-rail .erp-product-cart-root--catalog .erp-product-cart-panel {
    position: relative;
    top: auto;
    grid-column: 1;
    grid-row: 1;
    height: max(260px, calc(var(--erp-products-filter-available-height, 586px) - 66px));
    min-height: 260px;
    max-height: max(260px, calc(var(--erp-products-filter-available-height, 586px) - 66px));
  }
}

/* == Shared mobile BottomSheet pattern == */
.erp-products-filter-backdrop {
  display: none;
}

.erp-mobile-sheet-root {
  display: none;
}

@keyframes erp-mobile-bottom-sheet-in {
  from {
    transform: translateY(100%);
  }
  to {
    transform: translateY(0);
  }
}

@keyframes erp-mobile-bottom-sheet-backdrop-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@media (max-width: 900px) {
  body.erp-mobile-sheet-open {
    overflow: hidden;
  }

  .erp-mobile-sheet-root:not([hidden]) {
    position: fixed;
    inset: 0;
    z-index: var(--erp-layer-overlay);
    display: block;
  }

  .erp-mobile-sheet-root > .erp-mobile-sheet-backdrop {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: rgba(15, 23, 42, .36);
    cursor: default;
    appearance: none;
    animation: erp-mobile-bottom-sheet-backdrop-in var(--erp-ui-transition, 180ms ease);
  }

  .erp-mobile-sheet-root > .erp-mobile-sheet-panel {
    position: fixed;
    inset: auto 0 0;
    z-index: 1;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    width: 100%;
    max-height: min(82dvh, 720px);
    overflow: hidden;
    border: 1px solid var(--erp-ui-border-soft);
    border-bottom: 0;
    border-radius: var(--erp-ui-radius-lg, 20px) var(--erp-ui-radius-lg, 20px) 0 0;
    background: var(--erp-ui-surface);
    box-shadow: var(--erp-ui-shadow-lg);
    animation: erp-mobile-bottom-sheet-in var(--erp-ui-transition, 180ms ease);
  }

  .erp-mobile-sheet-root > .erp-mobile-sheet-panel::before {
    content: "";
    position: absolute;
    top: var(--erp-ui-space-2, 8px);
    left: 50%;
    z-index: 2;
    width: 40px;
    height: 4px;
    border-radius: var(--erp-ui-radius-pill);
    background: var(--erp-ui-border);
    transform: translateX(-50%);
    pointer-events: none;
  }

  .erp-mobile-sheet__header {
    display: flex;
    align-items: center;
    gap: var(--erp-ui-space-3, 12px);
    min-width: 0;
    padding: 26px var(--erp-ui-space-4, 16px) var(--erp-ui-space-3, 12px);
    border-bottom: 1px solid var(--erp-ui-border-soft);
    touch-action: pan-x;
  }

  .erp-mobile-sheet__header > span:last-child {
    display: grid;
    gap: 2px;
    min-width: 0;
  }

  .erp-mobile-sheet__header strong,
  .erp-mobile-sheet__header small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .erp-mobile-sheet__header strong {
    color: var(--erp-ui-text, #111827);
    font-size: 16px;
  }

  .erp-mobile-sheet__header small {
    color: var(--erp-ui-muted, #64748b);
    font-size: 12px;
  }

  .erp-mobile-sheet__icon {
    display: inline-grid;
    place-items: center;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    border-radius: var(--erp-ui-radius, 12px);
    background: var(--erp-ui-surface-muted, #f8fafc);
    color: var(--erp-ui-text, #111827);
  }

  .erp-mobile-sheet__icon :is(i, svg, .lucide) {
    width: 18px;
    height: 18px;
  }

  .erp-mobile-sheet__body {
    min-height: 0;
    overflow: auto;
    padding: var(--erp-ui-space-4, 16px);
    padding-bottom: max(var(--erp-ui-space-4, 16px), env(safe-area-inset-bottom));
  }
}

@media (max-width: 760px) {
  body:has(.erp-products-filter-panel.erp-mobile-bottom-sheet:not([hidden])),
  body:has(.erp-product-cart-root.erp-mobile-bottom-sheet-root.is-open) {
    overflow: hidden;
  }

  .erp-products-filter-backdrop:not([hidden]) {
    position: fixed;
    inset: 0;
    z-index: var(--erp-layer-overlay);
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: rgba(15, 23, 42, .36);
    cursor: default;
    appearance: none;
    animation: erp-mobile-bottom-sheet-backdrop-in var(--erp-ui-transition, 180ms ease);
  }

  .erp-marketplace-catalog-rail > .erp-products-filter-panel.erp-mobile-bottom-sheet {
    position: fixed;
    inset: auto 0 0;
    z-index: var(--erp-layer-modal);
    width: 100%;
    height: min(82dvh, 720px);
    min-height: 0;
    max-height: calc(100dvh - var(--erp-ui-space-2, 8px));
    overflow: hidden;
    border: 1px solid var(--erp-ui-border-soft);
    border-bottom: 0;
    border-radius: var(--erp-ui-radius-lg, 20px) var(--erp-ui-radius-lg, 20px) 0 0;
    background: var(--erp-ui-surface);
    box-shadow: var(--erp-ui-shadow-lg);
    animation: erp-mobile-bottom-sheet-in var(--erp-ui-transition, 180ms ease);
  }

  .erp-mobile-bottom-sheet::before {
    content: "";
    position: absolute;
    top: var(--erp-ui-space-2, 8px);
    left: 50%;
    z-index: 2;
    width: 40px;
    height: 4px;
    border-radius: var(--erp-ui-radius-pill);
    background: var(--erp-ui-border);
    transform: translateX(-50%);
    pointer-events: none;
  }

  .erp-mobile-bottom-sheet > .erp-products-filter-panel__head,
  .erp-mobile-bottom-sheet > .erp-offcanvas__head {
    padding-top: 24px;
    touch-action: pan-x;
  }

  .erp-mobile-bottom-sheet .erp-mobile-bottom-sheet__desktop-close {
    display: none !important;
  }

  .erp-products-filter-panel.erp-mobile-bottom-sheet .erp-products-filter-panel__body {
    max-height: none;
    padding-bottom: max(var(--erp-ui-space-4, 16px), env(safe-area-inset-bottom));
  }

  .erp-product-cart-root.erp-mobile-bottom-sheet-root {
    position: fixed;
    inset: 0;
    z-index: var(--erp-layer-overlay);
    display: block !important;
    pointer-events: none;
  }

  .erp-product-cart-root.erp-mobile-bottom-sheet-root.is-open {
    pointer-events: auto;
  }

  .erp-product-cart-root.erp-mobile-bottom-sheet-root > .erp-mobile-bottom-sheet-backdrop {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: block;
  }

  .erp-product-cart-root.erp-mobile-bottom-sheet-root
    .erp-product-cart-panel.erp-mobile-bottom-sheet {
    position: fixed;
    inset: auto 0 0;
    z-index: 1;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    width: 100%;
    height: min(82dvh, 720px);
    min-height: 0;
    max-height: calc(100dvh - var(--erp-ui-space-2, 8px));
    overflow: hidden;
    border: 1px solid var(--erp-ui-border-soft);
    border-bottom: 0;
    border-radius: var(--erp-ui-radius-lg, 20px) var(--erp-ui-radius-lg, 20px) 0 0;
    background: var(--erp-ui-surface);
    box-shadow: var(--erp-ui-shadow-lg);
    visibility: hidden;
    transform: translateY(100%);
    transition: transform var(--erp-ui-transition, 180ms ease), visibility var(--erp-ui-transition, 180ms ease);
  }

  .erp-product-cart-root.erp-mobile-bottom-sheet-root.is-open
    .erp-product-cart-panel.erp-mobile-bottom-sheet {
    visibility: visible;
    transform: translateY(0);
  }

  .erp-product-cart-root.erp-mobile-bottom-sheet-root .erp-product-cart-footer {
    padding-bottom: max(var(--erp-ui-space-3, 12px), env(safe-area-inset-bottom));
  }

}

@media (max-width: 900px) and (prefers-reduced-motion: reduce) {
  .erp-mobile-sheet-root > .erp-mobile-sheet-backdrop,
  .erp-mobile-sheet-root > .erp-mobile-sheet-panel {
    animation: none;
  }
}

@media (max-width: 760px) and (prefers-reduced-motion: reduce) {
  .erp-products-filter-backdrop:not([hidden]),
  .erp-marketplace-catalog-rail > .erp-products-filter-panel.erp-mobile-bottom-sheet {
    animation: none;
  }

  .erp-product-cart-root.erp-mobile-bottom-sheet-root
    .erp-product-cart-panel.erp-mobile-bottom-sheet {
    transition: none;
  }
}

/* == Centralized mobile module dock and module BottomSheets == */
.app-mobile-bottom-shell {
  display: contents;
}

.app-mobile-bottom-menu-module-slot {
  position: relative;
  min-width: 0;
}

.app-mobile-module-launcher,
button.app-mobile-module-launcher {
  position: relative;
  z-index: 2;
  overflow: visible;
  background: transparent;
  color: var(--erp-ui-text, #0f172a);
  touch-action: manipulation;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}

.app-mobile-module-launcher:hover,
.app-mobile-module-launcher:focus-visible,
.app-mobile-module-launcher.is-holding,
.app-mobile-module-launcher.is-long-press-complete {
  background: transparent;
}

.app-mobile-module-launcher__orb {
  position: relative;
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  flex: 0 0 58px;
  border: 5px solid var(--erp-ui-surface, #fff);
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: linear-gradient(145deg, var(--erp-action-accent, #0095f6), var(--erp-action-accent-strong, #1877f2));
  color: var(--erp-action-active-text, #fff);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .2), 0 0 0 1px rgba(148, 163, 184, .22);
  transition: transform var(--erp-ui-transition, 180ms ease), box-shadow var(--erp-ui-transition, 180ms ease);
}

.app-mobile-module-launcher:is(:hover, :focus-visible) .app-mobile-module-launcher__orb {
  transform: translateY(-1px);
  box-shadow: 0 12px 28px rgba(15, 23, 42, .24), 0 0 0 1px rgba(148, 163, 184, .24);
}

.app-mobile-module-launcher.is-holding .app-mobile-module-launcher__orb {
  transform: scale(.96);
}

.app-mobile-module-launcher__orb .app-mobile-bottom-menu-icon,
.app-mobile-module-launcher__orb .app-mobile-bottom-menu-icon > i,
.app-mobile-module-launcher__orb .app-mobile-bottom-menu-icon > svg {
  width: 24px;
  height: 24px;
}

.app-mobile-module-launcher__progress {
  position: absolute;
  inset: -5px;
  width: 58px;
  height: 58px;
  overflow: visible;
  pointer-events: none;
  transform: rotate(-90deg);
}

.app-mobile-module-launcher__progress circle {
  fill: none;
  stroke: var(--erp-ui-success, #16a34a);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
}

.app-mobile-module-actions {
  display: grid;
  gap: var(--erp-ui-space-4, 16px);
}

.app-mobile-global-search-sheet .erp-marketplace-search {
  display: block;
  width: 100%;
  margin: 0;
}

.app-mobile-global-search-sheet .erp-marketplace-search__field {
  min-height: 46px;
  overflow: hidden;
  border-radius: var(--erp-ui-radius-pill, 999px);
}

.app-mobile-global-search-sheet .erp-marketplace-search__field input {
  min-height: 44px;
  padding-inline: var(--erp-ui-space-4, 16px);
}

.app-mobile-global-search-sheet .erp-marketplace-search__field .erp-field-control__button--right {
  min-width: 46px;
  min-height: 44px;
  border-left: 1px solid var(--erp-ui-border-soft, #e2e8f0);
}

.app-mobile-global-notifications__body {
  min-height: min(58dvh, 520px);
}

.app-mobile-global-notifications__body > [data-mobile-notifications-content],
.app-mobile-global-notifications__body .erp-home-notifications-shell {
  min-height: 0;
}

.app-mobile-global-notifications__body > [data-mobile-notifications-content] {
  height: 100%;
}

.app-mobile-global-notifications__body > [data-mobile-notifications-content][hidden],
.app-mobile-global-notifications__state[hidden] {
  display: none;
}

.app-mobile-global-notifications__state {
  display: grid;
  place-items: center;
  align-content: center;
  gap: var(--erp-ui-space-2, 8px);
  min-height: 260px;
  padding: var(--erp-ui-space-4, 16px);
  color: var(--erp-ui-muted, #64748b);
  text-align: center;
  outline: none;
}

.app-mobile-global-notifications__state .erp-spinner {
  --erp-spinner-size: 28px;
  margin-bottom: var(--erp-ui-space-2, 8px);
}

.app-mobile-global-notifications__state strong {
  color: var(--erp-ui-text, #0f172a);
  font-size: 14px;
}

.app-mobile-global-notifications__state small {
  max-width: 300px;
  font-size: 12px;
  line-height: 1.45;
}

.app-mobile-global-notifications__state .erp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 38px;
  margin-top: var(--erp-ui-space-2, 8px);
}

.app-mobile-global-notifications__state .erp-btn :is(i, svg),
.app-mobile-global-notifications__guest .erp-btn :is(i, svg) {
  width: 16px;
  height: 16px;
}

.app-mobile-global-notifications__guest {
  min-height: 300px;
}

.app-mobile-module-actions__primary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--erp-ui-space-3, 12px);
  min-height: 68px;
  padding: var(--erp-ui-space-3, 12px);
  border: 1px solid var(--erp-ui-border-soft, #e2e8f0);
  border-radius: var(--erp-ui-radius-lg, 20px);
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-ui-text, #0f172a);
  text-decoration: none;
}

.app-mobile-module-actions__primary > span:nth-child(2) {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.app-mobile-module-actions__primary strong,
.app-mobile-module-actions__primary small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-mobile-module-actions__primary strong {
  font-size: 14px;
}

.app-mobile-module-actions__primary small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
}

.app-mobile-module-actions__primary-icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: var(--erp-ui-radius, 14px);
  background: var(--erp-action-active-bg, #0095f6);
  color: var(--erp-action-active-text, #fff);
}

.app-mobile-module-actions__primary-icon :is(i, svg),
.app-mobile-module-actions__primary > svg {
  width: 20px;
  height: 20px;
}

.app-mobile-module-actions__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(72px, 1fr));
  gap: var(--erp-ui-space-3, 12px);
}

.app-mobile-module-action {
  display: grid;
  justify-items: center;
  align-content: start;
  gap: var(--erp-ui-space-2, 8px);
  min-width: 0;
  min-height: 86px;
  padding: 0 2px;
  border: 0;
  border-radius: var(--erp-ui-radius, 14px);
  background: transparent;
  color: var(--erp-ui-text, #0f172a);
  font: inherit;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}

.app-mobile-module-action > span {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border: 1px solid var(--erp-ui-border-soft, #e2e8f0);
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-action-accent-strong, #1877f2);
  transition: transform var(--erp-ui-transition, 180ms ease), background var(--erp-ui-transition, 180ms ease);
}

.app-mobile-module-action:is(:hover, :focus-visible) > span {
  background: var(--erp-action-hover-bg, #f2f3f5);
  transform: translateY(-1px);
}

.app-mobile-module-action > span :is(i, svg) {
  width: 22px;
  height: 22px;
}

.app-mobile-module-action strong {
  max-width: 100%;
  overflow: hidden;
  color: inherit;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-mobile-module-actions__empty,
.app-mobile-module-actions__hint {
  margin: 0;
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
}

.app-mobile-module-actions__empty {
  padding: var(--erp-ui-space-3, 12px);
  border-radius: var(--erp-ui-radius, 14px);
  background: var(--erp-ui-surface-muted, #f8fafc);
  text-align: center;
}

.app-mobile-module-actions__hint {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--erp-ui-space-2, 8px);
  text-align: center;
}

.app-mobile-module-actions__hint :is(i, svg) {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

.app-mobile-module-switcher__body {
  display: grid;
  align-content: start;
  gap: var(--erp-ui-space-4, 16px);
}

.app-mobile-module-switcher__search {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--erp-ui-space-2, 8px);
  min-height: 46px;
  padding: 0 var(--erp-ui-space-3, 12px);
  border: 1px solid var(--erp-ui-border, #d1d5db);
  border-radius: var(--erp-field-radius, 16px);
  background: var(--erp-ui-surface, #fff);
  color: var(--erp-ui-muted, #64748b);
}

.app-mobile-module-switcher__search > :is(i, svg),
.app-mobile-module-switcher__search button :is(i, svg) {
  width: 18px;
  height: 18px;
}

.app-mobile-module-switcher__search input {
  min-width: 0;
  width: 100%;
  height: 44px;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--erp-ui-text, #0f172a);
  font: inherit;
  font-size: 14px;
}

.app-mobile-module-switcher__search button {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0;
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: inherit;
  cursor: pointer;
}

.app-mobile-module-switcher__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--erp-ui-space-4, 16px) var(--erp-ui-space-2, 8px);
}

.app-mobile-module-switcher__item {
  display: grid;
  justify-items: center;
  align-content: start;
  gap: var(--erp-ui-space-2, 8px);
  min-width: 0;
  color: var(--erp-ui-text, #0f172a);
  text-align: center;
  text-decoration: none;
}

.app-mobile-module-switcher__icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border: 1px solid var(--erp-ui-border-soft, #e2e8f0);
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-ui-muted, #64748b);
  transition: transform var(--erp-ui-transition, 180ms ease), box-shadow var(--erp-ui-transition, 180ms ease);
}

.app-mobile-module-switcher__item:is(:hover, :focus-visible) .app-mobile-module-switcher__icon {
  transform: translateY(-2px);
  box-shadow: var(--erp-ui-shadow-sm, 0 6px 18px rgba(15, 23, 42, .12));
}

.app-mobile-module-switcher__icon > :is(i, svg) {
  width: 23px;
  height: 23px;
}

.app-mobile-module-switcher__item.is-active .app-mobile-module-switcher__icon {
  border-color: transparent;
  background: linear-gradient(145deg, var(--erp-action-accent, #0095f6), var(--erp-action-accent-strong, #1877f2));
  color: var(--erp-action-active-text, #fff);
  box-shadow: 0 8px 20px rgba(0, 149, 246, .26);
}

.app-mobile-module-switcher__item.is-disabled {
  opacity: .52;
  cursor: not-allowed;
}

.app-mobile-module-switcher__item.is-disabled .app-mobile-module-switcher__icon {
  background: var(--erp-ui-surface-muted, #f8fafc);
  box-shadow: none;
  transform: none;
}

.app-mobile-module-switcher__check {
  position: absolute;
  top: -3px;
  right: -3px;
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border: 2px solid var(--erp-ui-surface, #fff);
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: var(--erp-ui-success, #16a34a);
  color: #fff;
}

.app-mobile-module-switcher__check :is(i, svg) {
  width: 11px;
  height: 11px;
  stroke-width: 3;
}

.app-mobile-module-switcher__check--locked {
  background: var(--erp-ui-muted, #64748b);
}

.app-mobile-module-switcher__item strong {
  display: -webkit-box;
  max-width: 100%;
  overflow: hidden;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.2;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.app-mobile-module-switcher__empty {
  text-align: center;
}

@media (max-width: 900px) {
  body:has(.app-mobile-module-launcher) {
    --erp-footer-h: calc(76px + env(safe-area-inset-bottom));
  }

  .app-mobile-bottom-menu {
    left: var(--erp-ui-space-2, 8px);
    right: var(--erp-ui-space-2, 8px);
    bottom: max(var(--erp-ui-space-1, 4px), env(safe-area-inset-bottom));
    height: 64px;
    border: 1px solid var(--erp-ui-border-soft, #e2e8f0);
    border-radius: var(--erp-ui-radius-lg, 20px);
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 12px 34px rgba(15, 23, 42, .16);
    backdrop-filter: blur(14px);
  }

  .app-mobile-bottom-menu-list {
    height: 64px;
    padding: 0 var(--erp-ui-space-1, 4px);
  }

  .app-mobile-bottom-menu-list > li {
    min-width: 0;
  }

  .app-mobile-bottom-menu-item {
    min-width: 0;
    height: 64px;
    padding: 7px 2px 6px;
    border-radius: var(--erp-ui-radius, 14px);
    gap: 3px;
  }

  .app-mobile-bottom-menu-item .app-mobile-bottom-menu-icon,
  .app-mobile-bottom-menu-item .app-mobile-bottom-menu-icon > :is(i, svg) {
    width: 21px;
    height: 21px;
  }

  .app-mobile-bottom-menu-item .app-mobile-bottom-menu-label {
    max-width: 100%;
    overflow: hidden;
    font-size: 10px;
    font-weight: 700;
    text-overflow: ellipsis;
  }

  .app-mobile-module-launcher,
  button.app-mobile-module-launcher {
    height: 80px;
    padding-top: 0;
    transform: translateY(-16px);
  }

  .app-mobile-module-launcher .app-mobile-bottom-menu-label {
    color: var(--erp-ui-text, #0f172a);
  }

  .app-mobile-module-sheet > .erp-mobile-sheet-panel {
    max-height: min(86dvh, 760px);
  }
}

@media (max-width: 360px) {
  .app-mobile-bottom-menu {
    left: 4px;
    right: 4px;
  }

  .app-mobile-bottom-menu-item .app-mobile-bottom-menu-label {
    font-size: 9px;
  }

  .app-mobile-module-switcher__grid {
    gap-inline: 4px;
  }

  .app-mobile-module-switcher__icon {
    width: 52px;
    height: 52px;
  }
}

@media (max-width: 900px) and (prefers-reduced-motion: reduce) {
  .app-mobile-module-launcher__orb,
  .app-mobile-module-action > span,
  .app-mobile-module-switcher__icon {
    transition: none;
  }
}

.erp-product-cart-body {
  padding: 0;
}

.erp-product-cart-list {
  display: grid;
  gap: 0;
}

.erp-product-cart-item {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: 10px 12px;
  align-items: start;
  min-width: 0;
  padding: 12px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.erp-product-cart-item__image {
  display: grid;
  place-items: center;
  grid-row: 1 / span 2;
  width: 96px;
  height: 96px;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
}

.erp-product-cart-item__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-product-cart-item__image i,
.erp-product-cart-item__image svg,
.erp-product-cart-item__image .lucide {
  width: 22px !important;
  height: 22px !important;
}

.erp-product-cart-item__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
  min-width: 0;
}

.erp-product-cart-item__info {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-product-cart-item__info strong,
.erp-product-cart-item__info span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-product-cart-item__info strong {
  color: var(--erp-ui-ink);
  font-size: 14px;
  font-weight: 950;
}

.erp-product-cart-item__info span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 750;
}

.erp-product-cart-item__price {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 10px;
  border: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-ink);
  font-size: 15px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

.erp-product-cart-item__actions {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) 40px 40px;
  grid-column: 2;
  align-items: center;
  justify-self: stretch;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border);
  background: var(--erp-ui-surface-muted);
}

.erp-product-cart-item__actions .erp-icon-btn--table-action,
.erp-product-cart-remove {
  width: 40px;
  flex: 0 0 40px;
  min-width: 40px;
  height: 40px;
  min-height: 40px;
}

.erp-product-cart-item__actions > strong {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  height: 40px;
  border-right: 1px solid var(--erp-ui-border);
  color: var(--erp-ui-ink);
  font-size: 12px;
  font-weight: 950;
  text-align: center;
}

.erp-product-cart-item__actions .erp-product-cart-remove {
  border-left: 0 !important;
  border-right: 0 !important;
}

.erp-product-cart-empty {
  margin: 12px;
}

.erp-product-cart-footer {
  display: grid;
  gap: 0;
  padding: 0;
  border-top: 0;
  background: var(--erp-ui-surface);
}

.erp-product-cart-footer__totals {
  display: grid;
  padding: 12px;
  border-top: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.erp-product-cart-summary {
  display: grid;
  gap: 8px;
}

.erp-product-cart-summary div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-product-cart-summary strong {
  color: var(--erp-ui-ink);
  font-weight: 950;
}

.erp-product-cart-footer__actions {
  width: 100%;
  max-width: none;
  border-right: 0;
  border-bottom: 0;
  border-left: 0;
  border-radius: 0;
}

.erp-product-cart-footer__actions .erp-segmented__btn {
  min-height: 48px;
}

.erp-product-cart-footer__actions .erp-segmented__btn.is-disabled {
  opacity: .55;
  pointer-events: none;
}


/* ==========================================================================
   10. Partner offers / marketplace
   ========================================================================== */

.erp-offer-card {
  display: grid;
  gap: var(--erp-shop-gap);
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--erp-shop-border);
  border-radius: var(--erp-shop-radius);
  background: var(--erp-shop-surface);
}

.erp-offer-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--erp-shop-gap);
  min-width: 0;
}

.erp-offer-card__title {
  margin: 0;
  color: var(--erp-shop-text);
  font-size: 15px;
  line-height: 1.25;
  font-weight: 900;
}

.erp-offer-card__meta {
  margin-top: 3px;
  color: var(--erp-shop-muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.erp-offer-card__body {
  display: grid;
  gap: var(--erp-shop-gap-sm);
}

.erp-offer-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-shop-gap);
  padding-top: 10px;
  border-top: 1px solid var(--erp-shop-border-soft);
}

.erp-offer-source,
.erp-moderation-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 24px;
  padding: 0 7px;
  border: 1px solid transparent;
  border-radius: 5px;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: .02em;
  text-transform: uppercase;
  white-space: nowrap;
}

.erp-offer-source::before,
.erp-moderation-status::before {
  content: "";
  width: 10px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
}

.erp-offer-source--internal {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
}

.erp-offer-source--partner {
  border-color: #ddd6fe;
  background: #f5f3ff;
  color: #6d28d9;
}

.erp-offer-source--supply {
  border-color: #fde68a;
  background: #fffbeb;
  color: #b45309;
}

.erp-offer-source--dropship {
  border-color: #a5f3fc;
  background: #ecfeff;
  color: #0e7490;
}

.erp-moderation-status--draft {
  border-color: var(--erp-shop-border-soft);
  background: var(--erp-shop-surface-muted);
  color: var(--erp-shop-muted);
}

.erp-moderation-status--pending {
  border-color: #fde68a;
  background: #fffbeb;
  color: #b45309;
}

.erp-moderation-status--published {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #15803d;
}

.erp-moderation-status--rejected {
  border-color: #fecaca;
  background: #fef2f2;
  color: #b91c1c;
}


/* ==========================================================================
   11. Pricing / rating / comments / kanban
   ========================================================================== */

.erp-pricing-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: var(--erp-shop-gap);
}

.erp-pricing-card {
  display: grid;
  gap: var(--erp-shop-gap);
  min-width: 0;
  padding: var(--erp-shop-gap-lg);
  border: 1px solid var(--erp-shop-border);
  border-radius: var(--erp-shop-radius);
  background: var(--erp-shop-surface);
}

.erp-pricing-card.is-featured {
  border-color: #bfdbfe;
  box-shadow: var(--erp-shop-shadow-sm);
}

.erp-pricing-card__title {
  margin: 0;
  color: var(--erp-shop-text);
  font-size: 16px;
  font-weight: 900;
}

.erp-pricing-card__price {
  color: var(--erp-shop-text);
  font-size: 30px;
  line-height: 1;
  font-weight: 900;
}

.erp-pricing-card__meta {
  color: var(--erp-shop-muted);
  font-size: 13px;
  font-weight: 700;
}

.erp-rating {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  color: var(--erp-shop-warning);
}

.erp-rating__star {
  font-size: 16px;
  line-height: 1;
}

.erp-rating__meta {
  margin-left: 4px;
  color: var(--erp-shop-muted);
  font-size: 12px;
  font-weight: 700;
}

.erp-comment-list {
  display: grid;
  gap: var(--erp-shop-gap);
}

.erp-comment {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 10px;
  min-width: 0;
}

.erp-comment__avatar {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: var(--erp-shop-radius-pill);
  background: #e5e7eb;
  color: #111827;
  font-size: 12px;
  font-weight: 900;
}

.erp-comment__body {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--erp-shop-border-soft);
  border-radius: var(--erp-shop-radius);
  background: var(--erp-shop-surface-muted);
}

.erp-comment__head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  color: var(--erp-shop-muted);
  font-size: 12px;
  line-height: 1.25;
  font-weight: 800;
}

.erp-comment__text {
  color: #334155;
  font-size: 14px;
  line-height: 1.45;
}

.erp-comment__text p {
  margin: 0;
}

.erp-kanban {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(260px, 320px);
  gap: var(--erp-shop-gap);
  min-width: 0;
  overflow-x: auto;
  padding-bottom: 4px;
}

.erp-kanban-column {
  display: grid;
  align-content: start;
  gap: var(--erp-shop-gap-sm);
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--erp-shop-border);
  border-radius: var(--erp-shop-radius);
  background: var(--erp-shop-surface-muted);
}

.erp-kanban-column__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-shop-gap-sm);
  margin-bottom: 2px;
}

.erp-kanban-column__title {
  margin: 0;
  color: var(--erp-shop-text);
  font-size: 14px;
  font-weight: 900;
}

.erp-kanban-column__count {
  color: var(--erp-shop-muted);
  font-size: 12px;
  font-weight: 900;
}

.erp-kanban-card {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--erp-shop-border-soft);
  border-radius: var(--erp-shop-radius);
  background: var(--erp-shop-surface);
}

.erp-kanban-card__title {
  color: var(--erp-shop-text);
  font-size: 13px;
  font-weight: 900;
}

.erp-kanban-card__meta {
  color: var(--erp-shop-muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}


/* ==========================================================================
   12. Preview grid compatibility
   ========================================================================== */

.erp-ui-preview-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: var(--erp-shop-gap);
}


/* ==========================================================================
   13. Responsive
   ========================================================================== */

@media (max-width: 1180px) {
  .erp-social-layout {
    grid-template-columns: minmax(240px, 320px) minmax(0, 1fr);
  }

  .erp-social-layout--network {
    grid-template-columns: minmax(240px, 300px) minmax(0, 640px);
  }

  .erp-social-layout--profile {
    grid-template-columns: minmax(230px, 300px) minmax(0, 1fr);
  }

  .erp-social-layout > .erp-social-column:last-child {
    grid-column: 1 / -1;
  }

  .erp-shop-social-layout {
    grid-template-columns: minmax(0, var(--erp-shop-feed-max));
  }

  .erp-shop-side-column {
    display: none;
  }

  .erp-social-feed-shell {
    grid-template-columns: 1fr;
  }

  .erp-collection-rail {
    gap: 10px;
    margin-bottom: 10px;
    padding-bottom: 8px;
  }

  .erp-collection-chip {
    flex-basis: 66px;
    width: 66px;
    min-width: 66px;
  }

  .erp-collection-chip__avatar {
    width: 56px;
    height: 56px;
  }

}

@media (max-width: 980px) {
  .erp-social-cover--network {
    min-height: 120px;
  }

  .erp-social-cover--profile {
    min-height: 172px;
  }

  .erp-social-cover__content--profile {
    align-items: stretch;
    min-height: 172px;
  }

  .erp-social-cover__facts {
    min-width: 0;
  }

  .erp-social-profile-head {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: end;
  }

  .erp-social-profile-head--reference {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .erp-social-profile-head__actions {
    grid-column: 1 / -1;
  }

  .erp-social-cover__content--profile {
    align-items: flex-end;
  }

  .erp-social-cover__side {
    justify-items: start;
    width: 100%;
  }

  .erp-social-cover__actions {
    justify-content: flex-start;
    width: 100%;
  }

  .erp-social-cover__actions .erp-btn {
    flex: 1 1 0;
    min-width: 0;
  }

  .erp-social-post__head--profile {
    grid-template-columns: 38px minmax(0, 1fr);
  }

  .erp-social-inline-facts {
    grid-column: 2;
    justify-content: flex-start;
    flex-wrap: wrap;
    white-space: normal;
  }

  .erp-social-inline-facts__item:first-child {
    padding-left: 0;
  }

  .erp-social-profile-head__badges {
    grid-column: 1 / -1;
    justify-content: flex-start;
    padding-bottom: 0;
  }

  .erp-social-profile-head__avatar {
    width: 92px;
    height: 92px;
    flex-basis: 92px;
    font-size: 28px;
  }

  .erp-social-profile-head__body h1 {
    font-size: 23px;
  }

  .erp-social-cover__content,
  .erp-social-identity {
    align-items: flex-start;
  }

  .erp-social-cover__content {
    flex-direction: column;
  }

  .erp-social-layout {
    grid-template-columns: 1fr;
  }

  .erp-social-layout--profile {
    grid-template-columns: 1fr;
  }

  .erp-social-profile-side {
    position: static;
  }

  .erp-social-layout > .erp-social-column:last-child {
    grid-column: auto;
  }

  .erp-reference-layout {
    grid-template-columns: 1fr;
  }

  .erp-reference-layout--profile .erp-reference-nav {
    position: static;
  }

  .erp-social-feed[data-erp-tab-panel="feed"] .erp-social-feed--embedded,
  .erp-social-card[data-erp-tab-panel="feed"] .erp-social-feed--embedded {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .erp-social-feed[data-erp-tab-panel="feed"] .erp-social-feed-shell .erp-social-feed--embedded,
  .erp-social-card[data-erp-tab-panel="feed"] .erp-social-feed-shell .erp-social-feed--embedded {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .erp-reference-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .erp-shop-hero,
  .erp-shop-product {
    grid-template-columns: 1fr;
  }

  .erp-shop-buy-panel {
    position: static;
  }
}

@media (max-width: 640px) {
  .erp-user-profile-summary {
    grid-template-columns: 1fr;
  }

  .erp-user-profile-summary__actions {
    justify-content: flex-start;
  }

  .erp-social-cover__actions {
    flex-direction: column;
  }

  .erp-social-cover__actions .erp-btn {
    justify-content: flex-start;
    width: 100%;
    border-left: 0;
    border-top: 1px solid rgba(255,255,255,.2);
  }

  .erp-social-cover__actions .erp-btn:first-child {
    border-top: 0;
  }

  .erp-social-cover__facts,
  .erp-social-stats,
  .erp-reference-nav {
    grid-template-columns: 1fr;
  }

  .erp-social-post__action-group {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .erp-social-feed[data-erp-tab-panel="feed"] .erp-social-feed--embedded,
  .erp-social-card[data-erp-tab-panel="feed"] .erp-social-feed--embedded {
    grid-template-columns: 1fr;
  }

  .erp-social-feed[data-erp-tab-panel="feed"] .erp-social-feed-shell .erp-social-feed--embedded,
  .erp-social-card[data-erp-tab-panel="feed"] .erp-social-feed-shell .erp-social-feed--embedded {
    grid-template-columns: 1fr;
  }

  .erp-reference-layout--profile .erp-detail-grid {
    grid-template-columns: 1fr;
  }

  .erp-social-mini-item--model {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .erp-social-mini-item--model > .erp-status {
    grid-column: 2;
    justify-self: start;
  }

  .erp-social-about--rows .erp-social-about__item {
    grid-template-columns: 1fr;
    gap: 2px;
    padding: 8px 0;
  }

  .erp-social-profile-head__actions .erp-btn {
    flex: 1 1 100%;
  }

  .erp-account-about-list div {
    grid-template-columns: 1fr;
    gap: 3px;
  }
}

@media (max-width: 700px) {
  .erp-shop-shell {
    gap: 10px;
  }

  .erp-shop-hero {
    grid-template-columns: 1fr;
  }

  .erp-shop-story-rail,
  .erp-shop-category-rail {
    margin-inline: -16px;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    padding-left: 12px;
    padding-right: 12px;
  }

  .erp-product-feed--grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
  }

  .erp-product-feed--masonry {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .erp-shop-card {
    border-radius: 0;
  }

  .erp-product-feed > .erp-shop-card {
    margin-inline: -16px;
    border-left: 0;
    border-right: 0;
  }

  .erp-product-feed--grid > .erp-shop-card,
  .erp-product-feed--masonry > .erp-shop-card {
    margin-inline: 0;
    border: 0;
    border-radius: 0;
  }

  .erp-product-feed--grid .erp-shop-card__head,
  .erp-product-feed--grid .erp-shop-card__body,
  .erp-product-feed--masonry .erp-shop-card__head,
  .erp-product-feed--masonry .erp-shop-card__body {
    display: none;
  }

  .erp-product-feed--grid .erp-shop-card__media,
  .erp-product-feed--masonry .erp-shop-card__media {
    aspect-ratio: 1 / 1;
  }

  .erp-shop-card__body {
    padding: 10px 12px 12px;
  }

  .erp-shop-card__title {
    font-size: 13px;
  }

  .erp-shop-card__price strong {
    font-size: 15px;
  }

  .erp-shop-card__actions {
    grid-template-columns: 1fr;
  }

  .erp-offer-card__head,
  .erp-offer-card__footer {
    align-items: stretch;
    flex-direction: column;
  }

  .erp-kanban {
    grid-auto-columns: minmax(240px, 86vw);
  }
}


/* ==========================================================================
   14. Print
   ========================================================================== */

@media print {
  .erp-no-print,
  .erp-shop-card__actions,
  .erp-shop-card__favorite,
  .erp-shop-card__social-actions,
  .erp-shop-category-rail,
  .erp-shop-story-rail,
  .erp-kanban {
    display: none !important;
  }

  .erp-shop-card,
  .erp-offer-card,
  .erp-pricing-card {
    break-inside: avoid;
    box-shadow: none !important;
  }
}






/* ==========================================================================
   14. Preview grid compatibility
   --------------------------------------------------------------------------
   Тільки для UI preview / демо-сторінок.
   Не використовувати в production-сторінках як основну сітку.
   ========================================================================== */

.erp-ui-preview-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: var(--erp-shop-gap);
}


/* ==========================================================================
   15. Responsive
   ========================================================================== */

@media (max-width: 980px) {
  .erp-shop-hero,
  .erp-shop-product {
    grid-template-columns: 1fr;
  }

  .erp-shop-buy-panel {
    position: static;
  }
}

@media (max-width: 700px) {
  .erp-product-feed {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .erp-shop-card__body {
    padding: 10px;
  }

  .erp-shop-card__title {
    font-size: 13px;
  }

  .erp-shop-card__price strong {
    font-size: 15px;
  }

  .erp-shop-card__actions {
    grid-template-columns: 1fr;
  }

  .erp-offer-card__head,
  .erp-offer-card__footer {
    align-items: stretch;
    flex-direction: column;
  }

  .erp-kanban {
    grid-auto-columns: minmax(240px, 86vw);
  }
}


/* ==========================================================================
   16. Print helpers for shop layer
   ========================================================================== */

@media print {
  .erp-no-print,
  .erp-shop-card__actions,
  .erp-shop-card__favorite,
  .erp-shop-category-rail,
  .erp-kanban {
    display: none !important;
  }

  .erp-shop-card,
  .erp-offer-card,
  .erp-pricing-card {
    break-inside: avoid;
    box-shadow: none !important;
  }
}








/* ==========================================================================
   ERP UI Utilities v2
   --------------------------------------------------------------------------
   Призначення:
   - Малий utility layer для точкового layout-вирівнювання.
   - Використовувати тільки там, де створення нового компонента зайве.
   - НЕ використовувати utilities як заміну глобальним компонентам:
     erp-btn, erp-table, erp-modal, erp-field, erp-status, page-toolbar.
   - НЕ будувати цілу сторінку тільки з utilities. Для повторюваних блоків
     створювати нормальний компонент: erp-shop-card, erp-social-card тощо.

   Важливе правило:
   - Utilities мають право бути з !important, бо це останній малий helper-шар.
   - Але саме тому їх треба використовувати обережно.
   ========================================================================== */


/* ==========================================================================
   1. Spacing scale
   --------------------------------------------------------------------------
   Єдина шкала відступів для utilities.
   Якщо в основному app.css уже будуть --erp-space-*, цей layer автоматично
   підхопить їх. Якщо ні — використає fallback значення.
   ========================================================================== */

:root {
  --erp-u-0: 0;
  --erp-u-1: var(--erp-space-1, 4px);
  --erp-u-2: var(--erp-space-2, 8px);
  --erp-u-3: var(--erp-space-3, 12px);
  --erp-u-4: var(--erp-space-4, 16px);
  --erp-u-5: var(--erp-space-5, 20px);
  --erp-u-6: var(--erp-space-6, 24px);
  --erp-u-8: var(--erp-space-8, 32px);
  --erp-u-10: var(--erp-space-10, 40px);
  --erp-u-12: var(--erp-space-12, 48px);

  --erp-u-border: var(--erp-ui-border, #d1d5db);
  --erp-u-border-soft: var(--erp-ui-border-soft, #e5e7eb);
  --erp-u-surface: var(--erp-ui-surface, #ffffff);
  --erp-u-surface-muted: var(--erp-ui-surface-muted, #f8fafc);
  --erp-u-surface-soft: var(--erp-ui-surface-soft, #f1f5f9);
  --erp-u-text: var(--erp-ui-text, #111827);
  --erp-u-muted: var(--erp-ui-muted, #64748b);
  --erp-u-radius-sm: var(--erp-ui-radius-sm, 6px);
  --erp-u-radius: var(--erp-ui-radius, 8px);
  --erp-u-radius-lg: var(--erp-ui-radius-lg, 12px);
  --erp-u-shadow-sm: var(--erp-ui-shadow-sm, 0 4px 10px rgba(15, 23, 42, .06));
  --erp-u-shadow: var(--erp-ui-shadow, 0 12px 28px rgba(15, 23, 42, .10));
}


/* ==========================================================================
   2. Display / visibility
   --------------------------------------------------------------------------
   Використання:
   - .erp-d-flex / .erp-d-grid — швидко вирівняти дрібний блок.
   - .erp-hidden / .erp-d-none — повністю приховати.
   - .erp-invisible — елемент займає місце, але невидимий.
   ========================================================================== */

.erp-hidden,
.erp-d-none { display: none !important; }

.erp-d-block { display: block !important; }
.erp-d-inline { display: inline !important; }
.erp-d-inline-block { display: inline-block !important; }
.erp-d-flex { display: flex !important; }
.erp-d-inline-flex { display: inline-flex !important; }
.erp-d-grid { display: grid !important; }
.erp-d-contents { display: contents !important; }

.erp-visible { visibility: visible !important; }
.erp-invisible { visibility: hidden !important; }

.erp-opacity-0 { opacity: 0 !important; }
.erp-opacity-25 { opacity: .25 !important; }
.erp-opacity-50 { opacity: .5 !important; }
.erp-opacity-75 { opacity: .75 !important; }
.erp-opacity-100 { opacity: 1 !important; }

/*
   Обережно:
   pointer-events utilities можуть зламати кліки, якщо застосувати їх
   до повноекранного fixed-layer. Використовувати тільки точково.
*/
.erp-pointer-none { pointer-events: none !important; }
.erp-pointer-auto { pointer-events: auto !important; }


/* ==========================================================================
   3. Position / z-index / overflow / size
   --------------------------------------------------------------------------
   Sticky/top helpers корисні для колонок фільтрів, side widgets, headers.
   Не використовувати z-index utilities для модалок — у модалок своя система.
   ========================================================================== */

.erp-static { position: static !important; }
.erp-relative { position: relative !important; }
.erp-absolute { position: absolute !important; }
.erp-fixed { position: fixed !important; }
.erp-sticky { position: sticky !important; }

.erp-inset-0 { inset: 0 !important; }
.erp-top-0 { top: 0 !important; }
.erp-right-0 { right: 0 !important; }
.erp-bottom-0 { bottom: 0 !important; }
.erp-left-0 { left: 0 !important; }

.erp-z-0 { z-index: 0 !important; }
.erp-z-1 { z-index: 1 !important; }
.erp-z-10 { z-index: 10 !important; }
.erp-z-20 { z-index: 20 !important; }
.erp-z-50 { z-index: 50 !important; }
.erp-z-auto { z-index: auto !important; }

.erp-overflow-visible { overflow: visible !important; }
.erp-overflow-hidden { overflow: hidden !important; }
.erp-overflow-auto { overflow: auto !important; }
.erp-scroll-x { overflow-x: auto !important; }
.erp-scroll-y { overflow-y: auto !important; }
.erp-overflow-x-hidden { overflow-x: hidden !important; }
.erp-overflow-y-hidden { overflow-y: hidden !important; }

.erp-min-w-0 { min-width: 0 !important; }
.erp-min-h-0 { min-height: 0 !important; }
.erp-w-full { width: 100% !important; }
.erp-w-auto { width: auto !important; }
.erp-h-full { height: 100% !important; }
.erp-h-auto { height: auto !important; }
.erp-max-w-none { max-width: none !important; }
.erp-fit-content { width: fit-content !important; }


/* ==========================================================================
   4. Flex / grid alignment
   --------------------------------------------------------------------------
   Це helpers для дрібного layout. Якщо блок повторюється — створити компонент.
   ========================================================================== */

.erp-flex-row { flex-direction: row !important; }
.erp-flex-column { flex-direction: column !important; }
.erp-flex-wrap { flex-wrap: wrap !important; }
.erp-flex-nowrap { flex-wrap: nowrap !important; }

.erp-flex-1 { flex: 1 1 0 !important; }
.erp-flex-auto { flex: 1 1 auto !important; }
.erp-flex-none { flex: none !important; }

.erp-items-start { align-items: flex-start !important; }
.erp-items-center { align-items: center !important; }
.erp-items-end { align-items: flex-end !important; }
.erp-items-stretch { align-items: stretch !important; }

.erp-justify-start { justify-content: flex-start !important; }
.erp-justify-center { justify-content: center !important; }
.erp-justify-end { justify-content: flex-end !important; }
.erp-justify-between { justify-content: space-between !important; }
.erp-justify-around { justify-content: space-around !important; }

.erp-content-start { align-content: flex-start !important; }
.erp-content-center { align-content: center !important; }
.erp-content-between { align-content: space-between !important; }

.erp-self-start { align-self: flex-start !important; }
.erp-self-center { align-self: center !important; }
.erp-self-end { align-self: flex-end !important; }
.erp-self-stretch { align-self: stretch !important; }

.erp-place-center { place-items: center !important; }
.erp-place-start { place-items: start !important; }
.erp-place-end { place-items: end !important; }

/* Simple grid helpers */
.erp-grid-cols-1 { grid-template-columns: 1fr !important; }
.erp-grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.erp-grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.erp-grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
.erp-grid-auto-sm { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)) !important; }
.erp-grid-auto-md { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important; }
.erp-grid-auto-lg { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important; }

.erp-col-span-1 { grid-column: span 1 !important; }
.erp-col-span-2 { grid-column: span 2 !important; }
.erp-col-span-3 { grid-column: span 3 !important; }
.erp-col-span-full { grid-column: 1 / -1 !important; }


/* ==========================================================================
   5. Text alignment / wrapping / font helpers
   ========================================================================== */

.erp-text-left { text-align: left !important; }
.erp-text-center { text-align: center !important; }
.erp-text-right { text-align: right !important; }

.erp-text-nowrap { white-space: nowrap !important; }
.erp-text-wrap { white-space: normal !important; }
.erp-text-ellipsis {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.erp-break-word { overflow-wrap: anywhere !important; }

.erp-uppercase { text-transform: uppercase !important; }
.erp-lowercase { text-transform: lowercase !important; }
.erp-capitalize { text-transform: capitalize !important; }

.erp-font-normal { font-weight: 400 !important; }
.erp-font-semibold { font-weight: 700 !important; }
.erp-font-bold { font-weight: 800 !important; }
.erp-font-black { font-weight: 900 !important; }

.erp-leading-1 { line-height: 1 !important; }
.erp-leading-tight { line-height: 1.2 !important; }
.erp-leading-normal { line-height: 1.4 !important; }


/* ==========================================================================
   6. Gap
   ========================================================================== */

.erp-gap-0 { gap: var(--erp-u-0) !important; }
.erp-gap-1 { gap: var(--erp-u-1) !important; }
.erp-gap-2 { gap: var(--erp-u-2) !important; }
.erp-gap-3 { gap: var(--erp-u-3) !important; }
.erp-gap-4 { gap: var(--erp-u-4) !important; }
.erp-gap-5 { gap: var(--erp-u-5) !important; }
.erp-gap-6 { gap: var(--erp-u-6) !important; }
.erp-gap-8 { gap: var(--erp-u-8) !important; }
.erp-gap-10 { gap: var(--erp-u-10) !important; }
.erp-gap-12 { gap: var(--erp-u-12) !important; }

.erp-row-gap-0 { row-gap: var(--erp-u-0) !important; }
.erp-row-gap-2 { row-gap: var(--erp-u-2) !important; }
.erp-row-gap-3 { row-gap: var(--erp-u-3) !important; }
.erp-row-gap-4 { row-gap: var(--erp-u-4) !important; }
.erp-row-gap-6 { row-gap: var(--erp-u-6) !important; }

.erp-col-gap-0 { column-gap: var(--erp-u-0) !important; }
.erp-col-gap-2 { column-gap: var(--erp-u-2) !important; }
.erp-col-gap-3 { column-gap: var(--erp-u-3) !important; }
.erp-col-gap-4 { column-gap: var(--erp-u-4) !important; }
.erp-col-gap-6 { column-gap: var(--erp-u-6) !important; }


/* ==========================================================================
   7. Margin
   ========================================================================== */

.erp-m-0 { margin: 0 !important; }
.erp-m-1 { margin: var(--erp-u-1) !important; }
.erp-m-2 { margin: var(--erp-u-2) !important; }
.erp-m-3 { margin: var(--erp-u-3) !important; }
.erp-m-4 { margin: var(--erp-u-4) !important; }
.erp-m-5 { margin: var(--erp-u-5) !important; }
.erp-m-6 { margin: var(--erp-u-6) !important; }
.erp-m-8 { margin: var(--erp-u-8) !important; }
.erp-m-auto { margin: auto !important; }

.erp-mt-0 { margin-top: 0 !important; }
.erp-mt-1 { margin-top: var(--erp-u-1) !important; }
.erp-mt-2 { margin-top: var(--erp-u-2) !important; }
.erp-mt-3 { margin-top: var(--erp-u-3) !important; }
.erp-mt-4 { margin-top: var(--erp-u-4) !important; }
.erp-mt-5 { margin-top: var(--erp-u-5) !important; }
.erp-mt-6 { margin-top: var(--erp-u-6) !important; }
.erp-mt-8 { margin-top: var(--erp-u-8) !important; }
.erp-mt-10 { margin-top: var(--erp-u-10) !important; }
.erp-mt-12 { margin-top: var(--erp-u-12) !important; }

.erp-mr-0 { margin-right: 0 !important; }
.erp-mr-1 { margin-right: var(--erp-u-1) !important; }
.erp-mr-2 { margin-right: var(--erp-u-2) !important; }
.erp-mr-3 { margin-right: var(--erp-u-3) !important; }
.erp-mr-4 { margin-right: var(--erp-u-4) !important; }
.erp-mr-6 { margin-right: var(--erp-u-6) !important; }
.erp-mr-auto { margin-right: auto !important; }

.erp-mb-0 { margin-bottom: 0 !important; }
.erp-mb-1 { margin-bottom: var(--erp-u-1) !important; }
.erp-mb-2 { margin-bottom: var(--erp-u-2) !important; }
.erp-mb-3 { margin-bottom: var(--erp-u-3) !important; }
.erp-mb-4 { margin-bottom: var(--erp-u-4) !important; }
.erp-mb-5 { margin-bottom: var(--erp-u-5) !important; }
.erp-mb-6 { margin-bottom: var(--erp-u-6) !important; }
.erp-mb-8 { margin-bottom: var(--erp-u-8) !important; }
.erp-mb-10 { margin-bottom: var(--erp-u-10) !important; }
.erp-mb-12 { margin-bottom: var(--erp-u-12) !important; }

.erp-ml-0 { margin-left: 0 !important; }
.erp-ml-1 { margin-left: var(--erp-u-1) !important; }
.erp-ml-2 { margin-left: var(--erp-u-2) !important; }
.erp-ml-3 { margin-left: var(--erp-u-3) !important; }
.erp-ml-4 { margin-left: var(--erp-u-4) !important; }
.erp-ml-6 { margin-left: var(--erp-u-6) !important; }
.erp-ml-auto { margin-left: auto !important; }

.erp-mx-0 { margin-left: 0 !important; margin-right: 0 !important; }
.erp-mx-2 { margin-left: var(--erp-u-2) !important; margin-right: var(--erp-u-2) !important; }
.erp-mx-3 { margin-left: var(--erp-u-3) !important; margin-right: var(--erp-u-3) !important; }
.erp-mx-4 { margin-left: var(--erp-u-4) !important; margin-right: var(--erp-u-4) !important; }
.erp-mx-auto { margin-left: auto !important; margin-right: auto !important; }

.erp-my-0 { margin-top: 0 !important; margin-bottom: 0 !important; }
.erp-my-2 { margin-top: var(--erp-u-2) !important; margin-bottom: var(--erp-u-2) !important; }
.erp-my-3 { margin-top: var(--erp-u-3) !important; margin-bottom: var(--erp-u-3) !important; }
.erp-my-4 { margin-top: var(--erp-u-4) !important; margin-bottom: var(--erp-u-4) !important; }
.erp-my-6 { margin-top: var(--erp-u-6) !important; margin-bottom: var(--erp-u-6) !important; }


/* ==========================================================================
   8. Padding
   ========================================================================== */

.erp-p-0 { padding: 0 !important; }
.erp-p-1 { padding: var(--erp-u-1) !important; }
.erp-p-2 { padding: var(--erp-u-2) !important; }
.erp-p-3 { padding: var(--erp-u-3) !important; }
.erp-p-4 { padding: var(--erp-u-4) !important; }
.erp-p-5 { padding: var(--erp-u-5) !important; }
.erp-p-6 { padding: var(--erp-u-6) !important; }
.erp-p-8 { padding: var(--erp-u-8) !important; }
.erp-p-10 { padding: var(--erp-u-10) !important; }
.erp-p-12 { padding: var(--erp-u-12) !important; }

.erp-pt-0 { padding-top: 0 !important; }
.erp-pt-1 { padding-top: var(--erp-u-1) !important; }
.erp-pt-2 { padding-top: var(--erp-u-2) !important; }
.erp-pt-3 { padding-top: var(--erp-u-3) !important; }
.erp-pt-4 { padding-top: var(--erp-u-4) !important; }
.erp-pt-6 { padding-top: var(--erp-u-6) !important; }
.erp-pt-8 { padding-top: var(--erp-u-8) !important; }

.erp-pr-0 { padding-right: 0 !important; }
.erp-pr-1 { padding-right: var(--erp-u-1) !important; }
.erp-pr-2 { padding-right: var(--erp-u-2) !important; }
.erp-pr-3 { padding-right: var(--erp-u-3) !important; }
.erp-pr-4 { padding-right: var(--erp-u-4) !important; }
.erp-pr-6 { padding-right: var(--erp-u-6) !important; }
.erp-pr-8 { padding-right: var(--erp-u-8) !important; }

.erp-pb-0 { padding-bottom: 0 !important; }
.erp-pb-1 { padding-bottom: var(--erp-u-1) !important; }
.erp-pb-2 { padding-bottom: var(--erp-u-2) !important; }
.erp-pb-3 { padding-bottom: var(--erp-u-3) !important; }
.erp-pb-4 { padding-bottom: var(--erp-u-4) !important; }
.erp-pb-6 { padding-bottom: var(--erp-u-6) !important; }
.erp-pb-8 { padding-bottom: var(--erp-u-8) !important; }

.erp-pl-0 { padding-left: 0 !important; }
.erp-pl-1 { padding-left: var(--erp-u-1) !important; }
.erp-pl-2 { padding-left: var(--erp-u-2) !important; }
.erp-pl-3 { padding-left: var(--erp-u-3) !important; }
.erp-pl-4 { padding-left: var(--erp-u-4) !important; }
.erp-pl-6 { padding-left: var(--erp-u-6) !important; }
.erp-pl-8 { padding-left: var(--erp-u-8) !important; }

.erp-px-0 { padding-left: 0 !important; padding-right: 0 !important; }
.erp-px-1 { padding-left: var(--erp-u-1) !important; padding-right: var(--erp-u-1) !important; }
.erp-px-2 { padding-left: var(--erp-u-2) !important; padding-right: var(--erp-u-2) !important; }
.erp-px-3 { padding-left: var(--erp-u-3) !important; padding-right: var(--erp-u-3) !important; }
.erp-px-4 { padding-left: var(--erp-u-4) !important; padding-right: var(--erp-u-4) !important; }
.erp-px-6 { padding-left: var(--erp-u-6) !important; padding-right: var(--erp-u-6) !important; }

.erp-py-0 { padding-top: 0 !important; padding-bottom: 0 !important; }
.erp-py-1 { padding-top: var(--erp-u-1) !important; padding-bottom: var(--erp-u-1) !important; }
.erp-py-2 { padding-top: var(--erp-u-2) !important; padding-bottom: var(--erp-u-2) !important; }
.erp-py-3 { padding-top: var(--erp-u-3) !important; padding-bottom: var(--erp-u-3) !important; }
.erp-py-4 { padding-top: var(--erp-u-4) !important; padding-bottom: var(--erp-u-4) !important; }
.erp-py-6 { padding-top: var(--erp-u-6) !important; padding-bottom: var(--erp-u-6) !important; }


/* ==========================================================================
   9. Borders / radius / shadows / background helpers
   --------------------------------------------------------------------------
   Не використовувати ці helpers для створення нової кнопки або картки.
   Для повторюваних блоків краще створювати компонент.
   ========================================================================== */

.erp-rounded-0 { border-radius: 0 !important; }
.erp-rounded-sm { border-radius: var(--erp-u-radius-sm) !important; }
.erp-rounded { border-radius: var(--erp-u-radius) !important; }
.erp-rounded-lg { border-radius: var(--erp-u-radius-lg) !important; }
.erp-rounded-pill { border-radius: 999px !important; }

.erp-border { border: 1px solid var(--erp-u-border) !important; }
.erp-border-0 { border: 0 !important; }
.erp-border-top { border-top: 1px solid var(--erp-u-border-soft) !important; }
.erp-border-right { border-right: 1px solid var(--erp-u-border-soft) !important; }
.erp-border-bottom { border-bottom: 1px solid var(--erp-u-border-soft) !important; }
.erp-border-left { border-left: 1px solid var(--erp-u-border-soft) !important; }

.erp-shadow-none { box-shadow: none !important; }
.erp-shadow-sm { box-shadow: var(--erp-u-shadow-sm) !important; }
.erp-shadow { box-shadow: var(--erp-u-shadow) !important; }

.erp-bg-surface { background: var(--erp-u-surface) !important; }
.erp-bg-muted { background: var(--erp-u-surface-muted) !important; }
.erp-bg-soft { background: var(--erp-u-surface-soft) !important; }
.erp-bg-transparent { background: transparent !important; }

.erp-color-text { color: var(--erp-u-text) !important; }
.erp-color-muted { color: var(--erp-u-muted) !important; }


/* ==========================================================================
   10. Media helpers
   ========================================================================== */

.erp-aspect-square { aspect-ratio: 1 / 1 !important; }
.erp-aspect-video { aspect-ratio: 16 / 9 !important; }
.erp-object-cover { object-fit: cover !important; }
.erp-object-contain { object-fit: contain !important; }


/* ==========================================================================
   11. Responsive visibility
   --------------------------------------------------------------------------
   Виправлено проблему старого варіанту:
   - .erp-desktop-only тепер прихований за замовчуванням і показується тільки
     з 901px.
   - .erp-show-sm прихований за замовчуванням і показується тільки до 640px.
   - Для точного display є варіанти: -block, -flex, -grid.
   ========================================================================== */

.erp-show-sm,
.erp-show-sm-block,
.erp-show-sm-flex,
.erp-show-sm-grid,
.erp-show-md,
.erp-show-md-block,
.erp-show-md-flex,
.erp-show-md-grid,
.erp-desktop-only,
.erp-desktop-only-block,
.erp-desktop-only-flex,
.erp-desktop-only-grid {
  display: none !important;
}

@media (max-width: 640px) {
  .erp-hide-sm { display: none !important; }

  .erp-show-sm,
  .erp-show-sm-block,
  .erp-sm-d-block { display: block !important; }

  .erp-show-sm-flex,
  .erp-sm-d-flex { display: flex !important; }

  .erp-show-sm-grid,
  .erp-sm-d-grid { display: grid !important; }

  .erp-sm-text-left { text-align: left !important; }
  .erp-sm-text-center { text-align: center !important; }
  .erp-sm-text-right { text-align: right !important; }
  .erp-sm-w-full { width: 100% !important; }
  .erp-sm-grid-cols-1 { grid-template-columns: 1fr !important; }
  .erp-sm-p-2 { padding: var(--erp-u-2) !important; }
  .erp-sm-p-3 { padding: var(--erp-u-3) !important; }
}

@media (min-width: 641px) {
  .erp-mobile-only { display: none !important; }
}

@media (max-width: 900px) {
  .erp-hide-md { display: none !important; }

  .erp-show-md,
  .erp-show-md-block,
  .erp-md-d-block { display: block !important; }

  .erp-show-md-flex,
  .erp-md-d-flex { display: flex !important; }

  .erp-show-md-grid,
  .erp-md-d-grid { display: grid !important; }

  .erp-md-w-full { width: 100% !important; }
  .erp-md-grid-cols-1 { grid-template-columns: 1fr !important; }
  .erp-md-grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (min-width: 901px) {
  .erp-desktop-only,
  .erp-desktop-only-block { display: block !important; }

  .erp-desktop-only-flex { display: flex !important; }
  .erp-desktop-only-grid { display: grid !important; }

  .erp-desktop-hidden { display: none !important; }
}

/* ==========================================================================
   Messages inbox
   ========================================================================== */

.page-messages {
  --messages-sidebar-w: minmax(286px, 360px);
  --messages-button-icon-size: var(--erp-toolbar-btn-icon-size);
  height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h) - var(--erp-page-toolbar-h));
  min-height: 0;
  padding: 0;
}

.messages-thread-invite,
.messages-selection-bar__action,
.messages-invite-card__action,
.messages-message__select,
.messages-message__action,
.messages-compose__reply button,
.messages-compose__icon-btn,
.messages-compose__send,
.messages-thread-menu > .erp-icon-btn,
.messages-thread__back,
.messages-conversation__action,
.messages-sidebar-search__create,
.messages-sidebar__switch-btn,
.messages-user-result {
  --messages-local-icon-size: var(--messages-button-icon-size);
}

.messages-thread-invite i,
.messages-thread-invite svg,
.messages-thread-invite .lucide,
.messages-selection-bar__action i,
.messages-selection-bar__action svg,
.messages-selection-bar__action .lucide,
.messages-invite-card__action i,
.messages-invite-card__action svg,
.messages-invite-card__action .lucide,
.messages-message__select i,
.messages-message__select svg,
.messages-message__select .lucide,
.messages-message__action i,
.messages-message__action svg,
.messages-message__action .lucide,
.messages-compose__reply button i,
.messages-compose__reply button svg,
.messages-compose__reply button .lucide,
.messages-compose__icon-btn i,
.messages-compose__icon-btn svg,
.messages-compose__icon-btn .lucide,
.messages-compose__send i,
.messages-compose__send svg,
.messages-compose__send .lucide,
.messages-thread-menu > .erp-icon-btn i,
.messages-thread-menu > .erp-icon-btn svg,
.messages-thread-menu > .erp-icon-btn .lucide,
.messages-thread__back i,
.messages-thread__back svg,
.messages-thread__back .lucide,
.messages-conversation__action i,
.messages-conversation__action svg,
.messages-conversation__action .lucide,
.messages-sidebar-search__create i,
.messages-sidebar-search__create svg,
.messages-sidebar-search__create .lucide,
.messages-sidebar__switch-btn i,
.messages-sidebar__switch-btn svg,
.messages-sidebar__switch-btn .lucide,
.messages-user-result > i,
.messages-user-result > svg,
.messages-user-result > .lucide {
  display: block;
  flex: 0 0 var(--messages-local-icon-size);
  width: var(--messages-local-icon-size) !important;
  min-width: var(--messages-local-icon-size);
  height: var(--messages-local-icon-size) !important;
  margin: 0;
}

.messages-invite-card__action,
.messages-invite-card__action.erp-btn,
.messages-selection-bar__action,
.messages-selection-bar__action.erp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.messages-shell {
  display: grid;
  grid-template-columns: var(--messages-sidebar-w) minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
  height: 100%;
  min-height: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border);
  border-radius: 0;
  background: var(--erp-ui-surface);
}

.messages-sidebar,
.messages-thread {
  min-width: 0;
  min-height: 0;
}

.messages-sidebar {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-right: 1px solid var(--erp-ui-border);
  background: var(--erp-ui-surface);
}

.messages-sidebar__head {
  display: block;
  height: 48px;
  min-height: 48px;
  padding: 0;
  border-bottom: 0;
}

.messages-conversation__body small,
.messages-conversation__meta,
.messages-user-result__body small,
.messages-thread__title small {
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.messages-sidebar__switch {
  width: 100%;
  height: 48px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  overflow: hidden;
  border: 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  background: var(--erp-ui-surface);
}

.messages-sidebar__switch-btn {
  min-width: 0;
  height: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 8px;
  border: 0;
  border-left: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 850;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
}

.messages-sidebar__switch-badge {
  min-width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 5px;
  border-radius: 4px;
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
}

.messages-sidebar__switch-btn:first-child {
  border-left: 0;
}

.messages-sidebar__switch-btn.is-active,
.messages-sidebar__switch-btn[aria-pressed="true"] {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
}

.messages-sidebar__switch-btn:hover,
.messages-sidebar__switch-btn:focus-visible {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
  outline: 0;
}

.messages-user-search {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 0;
  padding: 0;
  margin: 0;
}

.messages-sidebar-search.has-action {
  grid-template-columns: minmax(0, 1fr) 48px;
  grid-template-rows: 48px;
}

.messages-user-search .erp-field {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  height: 48px;
  margin: 0;
}

.messages-user-search .erp-input-group {
  height: 48px;
  min-height: 48px;
  border: 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  box-shadow: none;
}

.messages-user-search .erp-input-addon,
.messages-user-search .erp-input {
  height: 48px;
  min-height: 48px;
  border-radius: 0;
}

.messages-user-search .erp-input-group .erp-input {
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.messages-user-search .erp-field .erp-input-group input.erp-input:not([type='hidden']):not([type='file']):not([type='checkbox']):not([type='radio']) {
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.messages-sidebar-search__create {
  grid-column: 2;
  grid-row: 1;
  width: 48px;
  flex: 0 0 48px;
  min-width: 48px;
  height: 48px;
  min-height: 48px;
  max-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  padding: 0;
  margin: 0;
  border: 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  border-left: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  line-height: 1;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
}

.messages-sidebar-search__create:hover,
.messages-sidebar-search__create:focus-visible {
  background: var(--erp-ui-surface-soft);
}

.messages-user-results {
  display: grid;
  flex: 0 0 auto;
  min-height: 0;
  max-height: min(360px, 42%);
  align-content: start;
  overflow-y: auto;
  border: 0;
  border-radius: 0;
  background: var(--erp-ui-surface);
}

.messages-user-result {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  border: 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.messages-user-result:hover,
.messages-user-result:focus-visible {
  background: var(--erp-ui-surface-soft);
  outline: none;
}

.messages-user-result:last-child {
  border-bottom: 0;
}

.messages-user-result[hidden] {
  display: none;
}

.messages-user-result__body {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.messages-user-result__body strong,
.messages-user-result__body small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.messages-user-result > i,
.messages-user-result > svg,
.messages-user-result > .lucide {
  color: var(--erp-ui-muted);
}

.messages-sidebar__divider {
  display: none;
}

.messages-conversation-list {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
}

.messages-conversation-row[hidden] {
  display: none;
}

.messages-conversation-list > .messages-search-empty {
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.messages-sidebar__summary {
  flex: 0 0 49px;
  margin-top: auto;
  min-height: 49px;
  height: 49px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 12px;
  border-top: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 850;
}

.messages-sidebar__summary strong {
  min-width: 28px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 8px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
  font-size: 12px;
  line-height: 1;
}

.messages-conversation-row {
  position: relative;
  min-width: 0;
  min-height: 64px;
  overflow: hidden;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.messages-conversation-row:last-child {
  border-bottom: 0;
}

.messages-conversation-row:hover,
.messages-conversation-row:focus-within,
.messages-conversation-row.is-actions-open,
.messages-conversation-row.is-active {
  background: var(--erp-ui-surface-soft);
}

.messages-conversation-row.is-active {
  box-shadow: inset 3px 0 0 var(--erp-ui-primary);
}

.messages-conversation-row.is-pinned {
  background: color-mix(in srgb, var(--erp-ui-surface-soft) 72%, var(--erp-ui-surface));
}

.messages-conversation {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) 64px;
  align-items: center;
  gap: var(--erp-ui-space-2);
  min-height: 64px;
  padding: 9px 12px;
  padding-right: 12px;
  color: inherit;
  text-decoration: none;
  transition: transform var(--erp-ui-transition), background var(--erp-ui-transition), padding-right var(--erp-ui-transition);
}

.messages-conversation:hover,
.messages-conversation.is-active {
  background: transparent;
}

.messages-avatar {
  border-radius: 50%;
  background: var(--erp-ui-surface-soft);
}

.messages-discussion-create {
  display: grid;
  gap: var(--erp-ui-space-4);
  min-width: 0;
}

.messages-discussion-create__head {
  display: grid;
  grid-template-columns: 116px minmax(0, 1fr);
  align-items: center;
  gap: var(--erp-ui-space-4);
  min-width: 0;
}

.messages-discussion-create__avatar {
  display: grid;
  justify-items: center;
  align-self: center;
  min-width: 0;
}

.messages-discussion-create__avatar-button {
  padding: 0;
  border: 1px solid var(--erp-ui-border);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  cursor: pointer;
  overflow: hidden;
  transition: border-color var(--erp-ui-transition), box-shadow var(--erp-ui-transition), transform var(--erp-ui-transition);
}

.messages-discussion-create__avatar-button:hover,
.messages-discussion-create__avatar-button:focus-visible {
  border-color: color-mix(in srgb, var(--erp-ui-primary) 36%, var(--erp-ui-border));
  box-shadow: var(--erp-shadow-sm, 0 8px 22px rgba(15, 23, 42, 0.08));
  outline: none;
  transform: translateY(-1px);
}

.messages-discussion-create__avatar-button img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.messages-discussion-create__avatar-fallback {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.messages-discussion-create__avatar-fallback i,
.messages-discussion-create__avatar-fallback svg,
.messages-discussion-create__avatar-fallback .lucide {
  width: 24px;
  height: 24px;
}

.messages-conversation__body {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.messages-conversation__body strong,
.messages-conversation__body small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.messages-conversation__meta {
  width: 64px;
  min-width: 64px;
  display: grid;
  gap: 2px;
  justify-items: end;
  text-align: right;
  white-space: nowrap;
}

.messages-conversation__pin {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  color: var(--erp-ui-muted);
}

.messages-conversation__pin i,
.messages-conversation__pin svg,
.messages-conversation__pin .lucide {
  width: 13px;
  height: 13px;
}

.messages-conversation__time {
  width: 100%;
  display: grid;
  gap: 2px;
  justify-items: end;
  transition: opacity var(--erp-ui-transition), transform var(--erp-ui-transition);
}

.messages-conversation__meta small {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 800;
}

.messages-conversation__unread {
  min-width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text) !important;
  font-size: 11px;
  line-height: 1;
}

.messages-participant-stack {
  flex: 0 1 auto;
  display: inline-flex;
  flex-direction: row-reverse;
  align-items: center;
  overflow: hidden;
  min-width: 0;
}

.messages-avatar--participant {
  width: 24px;
  min-width: 24px;
  height: 24px;
  border: 2px solid var(--erp-ui-surface);
  font-size: 9px;
  font-weight: 900;
}

.messages-avatar--participant + .messages-avatar--participant {
  margin-right: -8px;
}

.messages-participant-stack__more {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
}

.messages-conversation__actions {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  width: 128px;
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: repeat(2, 64px);
  align-items: stretch;
  overflow: hidden;
  border-left: 1px solid var(--erp-ui-border-soft);
  background: color-mix(in srgb, var(--erp-ui-surface) 94%, transparent);
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transform: none;
  transition: opacity var(--erp-ui-transition);
  will-change: opacity;
}

.messages-conversation-row:hover .messages-conversation__actions,
.messages-conversation-row:focus-within .messages-conversation__actions,
.messages-conversation-row.is-actions-open .messages-conversation__actions {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transform: none;
}

.messages-conversation-row:hover .messages-conversation__time,
.messages-conversation-row:focus-within .messages-conversation__time,
.messages-conversation-row.is-actions-open .messages-conversation__time {
  opacity: 0;
  transform: none;
}

.messages-conversation__action {
  width: 64px;
  min-width: 64px;
  height: 64px;
  min-height: 64px;
  border: 0;
  border-left: 1px solid var(--erp-ui-border-soft);
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-muted);
}

.messages-conversation__action:first-child {
  border-left: 0;
}

.messages-conversation__action:hover,
.messages-conversation__action:focus-visible {
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-text);
}

.messages-conversation__action--danger:hover,
.messages-conversation__action--danger:focus-visible {
  color: var(--erp-ui-danger);
}

.messages-invite-panel {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.messages-invite-search {
  margin: 0;
}

.messages-invite-list {
  display: grid;
  min-height: 0;
  max-height: min(390px, 56vh);
  overflow-y: auto;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-md);
  background: var(--erp-ui-surface);
}

.messages-invite-user {
  min-width: 0;
  min-height: 52px;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) 44px;
  align-items: center;
  gap: 8px;
  padding: 8px 0 8px 10px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.messages-invite-user:last-child {
  border-bottom: 0;
}

.messages-invite-user[hidden] {
  display: none;
}

.messages-invite-user:hover {
  background: var(--erp-ui-surface-soft);
}

.messages-invite-user__body {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.messages-invite-user__body strong,
.messages-invite-user__body small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.messages-invite-user__body strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
}

.messages-invite-user__body small {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 750;
}

.messages-invite-user__action {
  width: 44px;
  min-width: 44px;
  height: 52px;
  min-height: 52px;
  border-top: 0;
  border-right: 0;
  border-bottom: 0;
  border-radius: 0;
}

.messages-thread {
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
  background: var(--erp-ui-surface);
}

.messages-thread__head {
  height: 48px;
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: var(--erp-ui-space-2);
  padding: 4px 12px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.messages-thread__back {
  display: none;
  border-radius: 0;
}

.messages-avatar--thread {
  width: 40px;
  height: 40px;
}

.messages-thread__title {
  flex: 1 1 auto;
  min-width: 0;
  display: grid;
  gap: 1px;
}

.messages-thread__title strong {
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.messages-thread__title small {
  font-size: 11px;
  line-height: 1.2;
}

.messages-thread-participants {
  flex: 0 1 auto;
  max-width: min(42vw, 360px);
  min-width: 0;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  overflow: hidden;
}

.messages-thread-invite {
  flex: 0 0 auto;
  height: 40px;
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 12px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
}

.messages-thread-invite:hover,
.messages-thread-invite:focus-visible {
  background: var(--erp-ui-surface-muted);
  outline: 0;
}

.messages-selection-bar {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding-left: 8px;
}

.messages-selection-bar[hidden] {
  display: none;
}

.messages-selection-bar > span {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}

.messages-selection-bar__action {
  min-height: 32px;
  padding: 0 10px;
  border-radius: 0;
  gap: 6px;
  font-size: 12px;
}

.messages-thread-menu {
  flex: 0 0 auto;
  position: relative;
}

.messages-thread__body {
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow-y: auto;
  padding: 14px 16px;
  background: var(--erp-ui-surface-muted);
}

.messages-date-separator {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: var(--erp-ui-space-2) 0;
}

.messages-date-separator span {
  padding: 4px 10px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: 999px;
  background: var(--erp-ui-surface);
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 850;
}

.messages-message {
  --messages-actions-reserve: 32px;
  --messages-avatar-half: 16px;
  --messages-tail-center-offset: 18px;
  position: relative;
  width: fit-content;
  min-width: min(220px, 100%);
  max-width: min(50%, 620px);
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: end;
  gap: 16px;
  align-self: flex-start;
}

.messages-message.is-mine {
  grid-template-columns: minmax(0, 1fr) 32px;
  align-self: flex-end;
}

.messages-message.is-mine .messages-message__avatar {
  grid-column: 2;
  grid-row: 1;
}

.messages-message.is-mine .messages-message__content {
  grid-column: 1;
  grid-row: 1;
}

.messages-message__select {
  position: absolute;
  top: calc((100% - var(--messages-actions-reserve)) / 2);
  right: -30px;
  transform: translateY(-50%);
  z-index: 3;
  width: 26px;
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid var(--erp-ui-border);
  border-radius: 50%;
  background: var(--erp-ui-surface);
  color: transparent;
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--erp-ui-surface) 86%, transparent);
  cursor: pointer;
  opacity: 0;
  transition: opacity .16s ease, border-color .16s ease, background .16s ease, color .16s ease;
}

.messages-message.is-mine .messages-message__select {
  right: auto;
  left: -30px;
}

.messages-message:hover .messages-message__select,
.messages-message:focus-within .messages-message__select,
.messages-message.is-selected .messages-message__select {
  opacity: 1;
}

.messages-message.is-selected .messages-message__select {
  border-color: var(--erp-ui-primary);
  background: var(--erp-ui-primary);
  color: #fff;
}

.messages-message.is-selected .messages-bubble {
  border-color: color-mix(in srgb, var(--erp-ui-primary) 45%, var(--erp-ui-border));
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--erp-ui-primary) 12%, transparent);
}

.messages-message.is-deleted {
  --messages-actions-reserve: 0px;
}

.messages-message.is-deleted .messages-bubble {
  border: 1px dashed color-mix(in srgb, var(--erp-ui-muted) 52%, var(--erp-ui-border));
  border-radius: 16px;
  background: var(--erp-ui-surface);
}

.messages-message.is-deleted .messages-bubble::before {
  border-right-color: color-mix(in srgb, var(--erp-ui-muted) 52%, var(--erp-ui-border));
}

.messages-message.is-deleted .messages-bubble::after {
  border-right-color: var(--erp-ui-surface);
}

.messages-message.is-deleted .messages-bubble__head {
  opacity: .72;
}

.messages-message__deleted-label {
  color: var(--erp-ui-muted) !important;
  font-style: italic;
  font-weight: 750;
}

.messages-message__avatar {
  align-self: end;
  padding-top: 0;
  padding-bottom: calc(var(--messages-actions-reserve) + var(--messages-tail-center-offset) - var(--messages-avatar-half));
}

.messages-message__avatar .messages-avatar {
  width: 32px;
  height: 32px;
  font-size: 11px;
  box-shadow: 0 0 0 2px var(--erp-ui-surface);
}

.messages-message__content {
  min-width: 0;
  display: grid;
  gap: 4px;
  justify-items: start;
}

.messages-message.is-mine .messages-message__content {
  justify-items: end;
}

.messages-bubble {
  position: relative;
  width: 100%;
  min-width: 0;
  display: grid;
  gap: 7px;
  padding: 10px 12px;
  border: 1px solid var(--erp-ui-border);
  border-radius: 18px;
  background: var(--erp-ui-surface);
}

.messages-bubble::before {
  content: "";
  position: absolute;
  left: -11px;
  top: auto;
  bottom: 10px;
  transform: none;
  width: 0;
  height: 0;
  border-top: 8px solid transparent;
  border-right: 11px solid var(--erp-ui-border);
  border-bottom: 8px solid transparent;
  z-index: 0;
}

.messages-bubble::after {
  content: "";
  position: absolute;
  left: -9px;
  top: auto;
  bottom: 11px;
  transform: none;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-right: 10px solid var(--erp-ui-surface);
  border-bottom: 7px solid transparent;
  z-index: 1;
}

.messages-message.is-mine .messages-bubble {
  --messages-own-bubble-bg: color-mix(in srgb, var(--erp-ui-muted) 8%, var(--erp-ui-surface));
  --messages-own-bubble-border: color-mix(in srgb, var(--erp-ui-muted) 26%, var(--erp-ui-border));
  border-color: var(--messages-own-bubble-border);
  border-radius: 18px;
  background: var(--messages-own-bubble-bg);
}

.messages-message.is-mine .messages-bubble::before {
  right: -11px;
  left: auto;
  border-top: 8px solid transparent;
  border-right: 0;
  border-bottom: 8px solid transparent;
  border-left: 11px solid var(--messages-own-bubble-border);
}

.messages-message.is-mine .messages-bubble::after {
  right: -9px;
  left: auto;
  border-top: 7px solid transparent;
  border-right: 0;
  border-bottom: 7px solid transparent;
  border-left: 10px solid var(--messages-own-bubble-bg);
}

.messages-message.is-mine .messages-bubble__author,
.messages-message.is-mine .messages-bubble time,
.messages-message.is-mine .messages-bubble p,
.messages-message.is-mine .messages-bubble__reply,
.messages-message.is-mine .messages-bubble__reply-preview,
.messages-message.is-mine .messages-bubble__reply strong,
.messages-message.is-mine .messages-bubble__body-row i,
.messages-message.is-mine .messages-bubble__body-row .lucide {
  color: var(--erp-ui-text);
}

.messages-message.is-mine .messages-bubble__author,
.messages-message.is-mine .messages-bubble time {
  color: var(--erp-ui-muted);
}

.messages-message.is-mine .messages-bubble__reply,
.messages-message.is-mine .messages-bubble__reply strong,
.messages-message.is-mine .messages-bubble__reply-preview {
  border-color: var(--erp-ui-border-soft);
  color: var(--erp-ui-text);
}

.messages-message.is-mine .messages-bubble__reply {
  background: var(--erp-ui-surface);
}

.messages-message.is-mine.messages-message--typing .messages-bubble::before,
.messages-message.is-mine.messages-message--typing .messages-bubble::after {
  display: none;
}

.messages-message.is-mine .messages-bubble__reply-preview i,
.messages-message.is-mine .messages-bubble__reply-preview svg,
.messages-message.is-mine .messages-bubble__reply-preview .lucide {
  color: var(--erp-ui-muted);
}

.messages-message.is-deleted.messages-message.is-mine .messages-bubble {
  background: var(--erp-ui-surface);
  border-color: color-mix(in srgb, var(--erp-ui-muted) 52%, var(--erp-ui-border));
}

.messages-message.is-deleted.messages-message.is-mine .messages-bubble::before {
  border-left-color: color-mix(in srgb, var(--erp-ui-muted) 52%, var(--erp-ui-border));
  border-right-color: transparent;
  right: -11px;
  left: auto;
}

.messages-message.is-deleted.messages-message.is-mine .messages-bubble::after {
  border-left-color: var(--erp-ui-surface);
  border-right-color: transparent;
  right: -9px;
  left: auto;
}

.messages-message.is-deleted .messages-bubble__author,
.messages-message.is-deleted .messages-bubble time,
.messages-message.is-deleted .messages-bubble p,
.messages-message.is-deleted .messages-bubble__reply,
.messages-message.is-deleted .messages-bubble__reply-preview,
.messages-message.is-deleted .messages-bubble__reply strong,
.messages-message.is-deleted .messages-bubble__body-row i,
.messages-message.is-deleted .messages-bubble__body-row .lucide {
  color: var(--erp-ui-text);
}

.messages-message.is-deleted .messages-bubble__reply-row .messages-avatar--reply {
  box-shadow: 0 0 0 2px var(--erp-ui-surface);
}

.messages-bubble__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
}

.messages-bubble__author,
.messages-bubble time {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 800;
}

.messages-bubble__author {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.messages-bubble time {
  justify-self: end;
  white-space: nowrap;
}

.messages-bubble p {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 14px;
  line-height: 1.45;
  white-space: normal;
  overflow-wrap: anywhere;
}

.messages-bubble__body-row {
  min-width: 0;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: start;
  gap: 8px;
}

.messages-bubble__body-row i,
.messages-bubble__body-row svg,
.messages-bubble__body-row .lucide {
  justify-self: center;
  width: 14px;
  height: 14px;
  margin-top: 3px;
  transform: translateX(5px);
  color: var(--erp-ui-primary);
}

.messages-bubble__reply-row {
  min-width: 0;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: end;
  gap: 12px;
}

.messages-bubble__reply-row .messages-avatar--reply {
  align-self: end;
  width: 24px;
  height: 24px;
  margin-bottom: 4px;
  font-size: 9px;
  box-shadow: 0 0 0 2px var(--erp-ui-surface);
}

.messages-bubble__reply {
  position: relative;
  min-width: 0;
  display: grid;
  gap: 3px;
  padding: 8px 10px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: 8px;
  background: color-mix(in srgb, var(--erp-ui-primary) 5%, var(--erp-ui-surface));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--erp-ui-primary) 4%, transparent);
}

.messages-bubble__reply::before {
  content: "";
  position: absolute;
  left: -8px;
  bottom: 10px;
  width: 0;
  height: 0;
  border-top: 6px solid transparent;
  border-right: 8px solid var(--erp-ui-border-soft);
  border-bottom: 6px solid transparent;
}

.messages-bubble__reply::after {
  content: "";
  position: absolute;
  left: -6px;
  bottom: 11px;
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-right: 7px solid color-mix(in srgb, var(--erp-ui-primary) 5%, var(--erp-ui-surface));
  border-bottom: 5px solid transparent;
}

.messages-bubble__reply strong {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  overflow: hidden;
  white-space: nowrap;
  color: var(--erp-ui-primary);
  font-size: 11px;
  font-weight: 850;
}

.messages-bubble__reply strong,
.messages-bubble__reply-preview span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.messages-bubble__reply-preview {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.3;
}

.messages-bubble__reply-preview i,
.messages-bubble__reply-preview svg,
.messages-bubble__reply-preview .lucide {
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
  color: var(--erp-ui-primary);
}

.messages-message--invite .messages-bubble,
.messages-message--event .messages-bubble {
  gap: 8px;
}

.messages-message--invite {
  --messages-actions-reserve: 0px;
}

.messages-message--event {
  --messages-actions-reserve: 0px;
  width: min(82%, 560px);
  grid-template-columns: minmax(0, 1fr);
  align-self: center;
  justify-items: center;
}

.messages-message--event .messages-message__avatar,
.messages-message--event .messages-bubble__head,
.messages-message--event .messages-bubble::before,
.messages-message--event .messages-bubble::after {
  display: none;
}

.messages-message.messages-message--event .messages-message__content {
  width: 100%;
  justify-items: center;
}

.messages-message--event .messages-bubble {
  width: auto;
  max-width: 100%;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.messages-invite-card,
.messages-event-card {
  min-width: 0;
  display: grid;
  gap: 10px;
}

.messages-invite-card__head {
  min-width: 0;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.messages-invite-card__head span,
.messages-invite-card__body-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.messages-invite-card__head strong,
.messages-invite-card__body strong {
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.messages-invite-card__head small {
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.messages-invite-card__body {
  min-width: 0;
  display: block;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.messages-invite-card__discussion {
  min-width: 0;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border: 0;
  border-radius: 8px;
  background: color-mix(in srgb, var(--erp-ui-muted) 5%, var(--erp-ui-surface));
}

.messages-discussion-avatar {
  background: color-mix(in srgb, var(--erp-ui-primary) 8%, var(--erp-ui-surface));
  color: var(--erp-ui-text);
  box-shadow: 0 0 0 1px var(--erp-ui-border-soft);
}

.messages-invite-card__body p,
.messages-event-card p {
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.35;
}

.messages-invite-card__actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: 8px;
  background: var(--erp-ui-surface-muted);
}

.messages-invite-card__action {
  min-width: 0;
  min-height: 36px;
  border: 0;
  border-radius: 0;
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 850;
}

.messages-invite-card__action.erp-btn {
  justify-content: center;
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-text);
}

.messages-invite-card__action + .messages-invite-card__action {
  border-left: 1px solid var(--erp-ui-border-soft);
}

.messages-invite-card__action i,
.messages-invite-card__action svg,
.messages-invite-card__action .lucide {
  color: currentColor;
}

.messages-invite-card__action[data-messages-invite-response="accept"] {
  color: var(--erp-ui-success);
}

.messages-invite-card__action[data-messages-invite-response="decline"] {
  color: var(--erp-ui-danger);
}

.messages-invite-card__action[data-messages-order-decision="accept"] {
  color: var(--erp-ui-success);
}

.messages-invite-card__action[data-messages-order-decision="decline"] {
  color: var(--erp-ui-danger);
}

.messages-invite-card__action:hover,
.messages-invite-card__action:focus-visible {
  background: color-mix(in srgb, var(--erp-ui-muted) 10%, var(--erp-ui-surface));
}

.messages-invite-card__status {
  grid-column: 1 / -1;
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 850;
}

.messages-event-card {
  align-items: start;
  gap: 8px;
  justify-items: center;
  max-width: 100%;
  text-align: center;
}

.messages-event-card .messages-participant-stack {
  width: 100%;
  justify-content: center;
  justify-self: center;
}

.messages-product-preview.erp-list-card {
  width: min(100%, 320px);
  min-width: min(100%, var(--erp-product-card-min-width, 220px));
  padding: 0;
  border: 0;
}

.messages-message--product {
  width: min(100%, 400px);
  min-width: min(100%, var(--erp-product-card-min-width, 220px));
  max-width: min(100%, 400px);
}

.messages-message--product .messages-bubble {
  justify-items: center;
}

.messages-message--product .messages-bubble__head {
  width: 100%;
}

.messages-order-card {
  width: min(100%, 340px);
  justify-items: stretch;
}

.messages-message--order {
  --messages-actions-reserve: 0px;
}

.messages-order-card__head {
  width: 100%;
}

.messages-order-card__heading {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 32px;
  align-items: center;
  gap: var(--erp-ui-space-2);
}

.messages-order-card__heading strong {
  min-width: 0;
}

.messages-order-card__view {
  width: 32px;
  min-width: 32px;
  height: 32px;
  min-height: 32px;
  padding: 0;
  border: 0;
  border-radius: var(--erp-ui-radius-sm);
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-text);
  box-shadow: none;
}

.messages-order-card__view :is(i, svg, .lucide) {
  width: 16px !important;
  height: 16px !important;
}

.messages-order-card__products {
  width: 100%;
  min-width: 0;
  display: grid;
  justify-items: center;
  gap: 10px;
}

.messages-order-product-card.erp-list-card {
  width: min(100%, 320px);
  max-width: 320px;
  margin-inline: auto;
}

.messages-invite-card__actions[data-messages-order-actions] {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--erp-ui-space-2);
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.messages-invite-card__actions[data-messages-order-actions] .messages-invite-card__action {
  flex: 0 0 auto;
  width: auto;
  min-height: 34px;
  padding-inline: var(--erp-ui-space-3);
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-sm);
}

.messages-invite-card__actions[data-messages-order-actions] .messages-invite-card__action + .messages-invite-card__action {
  border-left: 1px solid var(--erp-ui-border-soft);
}

.messages-invite-card__actions[data-messages-order-actions] .messages-invite-card__status {
  flex: 0 1 auto;
  grid-column: auto;
  min-height: 0;
  padding: 2px 0;
  background: transparent;
  text-align: center;
}

.messages-order-product-card__sizes {
  pointer-events: none;
}

.messages-product-preview .erp-list-card__media-shell {
  width: auto;
  max-width: none;
}

.messages-product-preview .erp-list-card__media {
  height: auto;
  min-height: 0;
  max-height: none;
  aspect-ratio: var(--erp-product-card-media-ratio);
}

.messages-product-preview .erp-list-card__media img {
  height: 100%;
  max-height: none;
  object-fit: cover;
  object-position: center center;
}

.messages-product-preview .erp-social-post__price-cut {
  --erp-social-price-h: var(--erp-product-card-price-height);
  min-width: var(--erp-product-card-price-min-width);
}

.messages-product-preview__price {
  color: inherit;
  font-size: var(--erp-product-card-price-font-size);
  font-weight: 900;
  white-space: nowrap;
}

.messages-product-preview .erp-social-post__color-badges {
  min-height: var(--erp-product-card-color-height);
  padding-inline: var(--erp-product-card-color-padding-inline);
}

.messages-product-preview .erp-social-color-badge {
  cursor: default;
  pointer-events: none;
}

.messages-product-preview__body.erp-list-card__body {
  display: grid;
  gap: var(--erp-product-card-space);
  padding: var(--erp-product-card-body-padding);
}

@media (max-width: 520px) {
  .erp-product-card-pattern .erp-list-card__body {
    padding: var(--erp-product-card-body-padding);
  }

  .erp-product-card-pattern .erp-list-card__media-shell {
    margin: var(--erp-product-card-space) var(--erp-product-card-space) 0;
  }
}

.messages-product-preview__comment {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.messages-product-preview__comment small,
.messages-product-discussion__reply {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.3;
}

.messages-product-discussion__reply {
  width: min(100%, 320px);
  margin-inline: auto;
  text-align: center;
}

.messages-product-preview__comment p {
  margin: 0;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
}

.messages-message__actions {
  display: inline-flex;
  align-items: center;
  justify-self: start;
  gap: 2px;
  padding-left: 2px;
}

.messages-message.is-mine .messages-message__actions {
  justify-self: start;
  margin-left: 6px;
  padding-left: 0;
}

.messages-message:not(.is-mine) .messages-message__actions {
  justify-self: end;
  margin-right: 6px;
  padding-left: 0;
}

.messages-message__action {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--erp-ui-muted);
  cursor: pointer;
}

.messages-message__action:hover,
.messages-message__action:focus-visible {
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  outline: 0;
}

.messages-message__action[aria-pressed="true"] {
  color: var(--erp-ui-danger);
  background: color-mix(in srgb, var(--erp-ui-danger) 10%, transparent);
}

.messages-message__read-state {
  align-self: center;
  margin-left: 4px;
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 750;
  line-height: 1;
}

.messages-message__read-state.is-read {
  color: var(--erp-ui-primary);
}

.messages-message--typing {
  --messages-actions-reserve: 0px;
  --messages-tail-center-offset: 16px;
  pointer-events: none;
}

.messages-message--typing .messages-message__avatar {
  padding-bottom: calc(var(--messages-actions-reserve) + var(--messages-tail-center-offset) - var(--messages-avatar-half));
}

.messages-message--typing .messages-bubble::before {
  bottom: 8px;
}

.messages-message--typing .messages-bubble::after {
  bottom: 9px;
}

.messages-message--typing .messages-bubble {
  width: auto;
  max-width: min(100%, 380px);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 11px;
}

.messages-typing-text {
  min-width: 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  font-weight: 750;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.messages-typing-dots {
  display: inline-flex;
  align-items: center;
  gap: 3px;
}

.messages-typing-dots i {
  width: 4px;
  height: 4px;
  display: block;
  border-radius: 50%;
  background: var(--erp-ui-muted);
  opacity: .45;
  animation: messagesTypingDot 1.1s infinite ease-in-out;
}

.messages-typing-dots i:nth-child(2) {
  animation-delay: .16s;
}

.messages-typing-dots i:nth-child(3) {
  animation-delay: .32s;
}

@keyframes messagesTypingDot {
  0%,
  80%,
  100% {
    transform: translateY(0);
    opacity: .45;
  }

  40% {
    transform: translateY(-3px);
    opacity: .9;
  }
}

.messages-compose {
  padding: 0;
  border-top: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.messages-compose__reply {
  min-height: 38px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px;
  align-items: center;
  gap: 8px;
  padding: 6px 8px 6px 12px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.messages-compose__reply[hidden] {
  display: none;
}

.messages-compose__reply span {
  min-width: 0;
  display: grid;
  gap: 2px;
  padding: 7px 9px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: 10px;
  background: var(--erp-ui-surface-soft);
}

.messages-compose__reply strong,
.messages-compose__reply small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.messages-compose__reply strong {
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 850;
}

.messages-compose__reply small {
  color: var(--erp-ui-muted);
  font-size: 12px;
}

.messages-compose__reply button {
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--erp-ui-muted);
  cursor: pointer;
}

.messages-compose__reply button:hover,
.messages-compose__reply button:focus-visible {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
  outline: 0;
}

.messages-compose__bar {
  position: relative;
  min-height: 48px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 48px;
  align-items: stretch;
  overflow: visible;
  padding: 0;
  background: var(--erp-ui-surface);
  border: 0;
  border-radius: 0;
}

.messages-compose__bar.erp-field-control {
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.messages-compose__bar.erp-field-control:focus-within {
  z-index: auto;
  border-color: transparent;
  box-shadow: none;
}

.messages-compose__field {
  min-width: 0;
  display: flex;
  align-items: stretch;
  margin: 0;
}

.messages-compose__field textarea {
  width: 100%;
  min-height: 48px;
  max-height: 132px;
  resize: none;
  display: block;
  padding: 14px 12px 10px;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--erp-ui-text);
  font-size: 14px;
  line-height: 1.35;
}

.messages-compose__field textarea:focus,
.messages-compose__field textarea.erp-input:focus {
  border-color: transparent;
  outline: 0;
  box-shadow: none;
}

.messages-compose__icon-btn,
.messages-compose__send {
  width: 48px;
  min-width: 48px;
  height: 48px;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  padding: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  line-height: 1;
}

.messages-compose__icon-btn {
  background: transparent;
  border-right: 1px solid var(--erp-ui-border-soft);
  color: var(--erp-ui-muted);
}

.messages-compose__icon-btn:hover,
.messages-compose__icon-btn:focus-visible {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
}

.messages-compose__send {
  margin: 0;
  justify-self: end;
  border-left: 1px solid color-mix(in srgb, var(--erp-ui-primary) 65%, #fff);
  background: var(--erp-ui-primary);
  color: #fff;
}

.messages-compose__send.erp-btn,
.messages-compose__icon-btn.erp-icon-btn {
  border-radius: 0;
  padding: 0;
}

.messages-compose__send:disabled {
  opacity: .55;
  cursor: progress;
}

.messages-emoji {
  position: static;
  display: flex;
  min-width: 0;
}

.erp-emoji-picker {
  position: absolute;
  z-index: var(--erp-layer-floating);
  width: min(360px, 100%, calc(100vw - 24px));
  max-height: min(420px, calc(100vh - 160px));
  display: block;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  padding: 0;
  border: 1px solid var(--erp-ui-border);
  border-radius: 0;
  background: #fff;
  box-shadow: var(--erp-shadow-popover, 0 16px 34px rgba(15, 23, 42, 0.14));
  -webkit-overflow-scrolling: touch;
}

.messages-emoji .erp-emoji-picker,
.erp-comment-panel__emoji-wrap .erp-emoji-picker,
.erp-lightbox-comments__emoji-wrap .erp-emoji-picker {
  left: 0;
  bottom: calc(100% + 8px);
}

.erp-invoice-description-emoji-wrap .erp-emoji-picker {
  top: calc(100% + 8px);
  right: 0;
}

.erp-emoji-picker-toggle.is-active {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
}

.erp-emoji-picker-toggle i,
.erp-emoji-picker-toggle svg,
.erp-emoji-picker-toggle .lucide {
  width: 17px;
  height: 17px;
}

.erp-emoji-picker__group {
  padding: 8px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-emoji-picker__group:last-child {
  border-bottom: 0;
}

.erp-emoji-picker__title {
  margin: 0 0 6px;
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
}

.erp-emoji-picker__grid {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 4px;
}

.erp-emoji-picker__button {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 0;
  background: transparent;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.erp-emoji-picker__button:hover,
.erp-emoji-picker__button:focus-visible {
  background: var(--erp-ui-surface-soft);
  outline: 0;
}

@media (max-width: 760px) {
  .messages-discussion-create__head {
    grid-template-columns: 92px minmax(0, 1fr);
    gap: var(--erp-ui-space-3);
  }

  .messages-discussion-create__avatar-button {
    width: 82px;
    height: 82px;
    font-size: 22px;
  }

  .page-messages {
    height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h) - var(--erp-page-toolbar-h));
    min-height: 0;
    padding-bottom: 0;
  }

  .messages-shell {
    grid-template-columns: 1fr;
    grid-template-rows: minmax(0, 1fr);
    height: 100%;
  }

  .messages-shell.is-list-open .messages-thread,
  .messages-shell.is-thread-open .messages-sidebar {
    display: none;
  }

  .messages-shell.is-list-open .messages-sidebar {
    display: flex;
    height: 100%;
  }

  .messages-shell.is-thread-open .messages-thread {
    display: grid;
    height: 100%;
  }

  .messages-sidebar {
    max-height: none;
    border-right: 0;
    border-bottom: 0;
  }

  .messages-conversation-row .messages-conversation__actions {
    transform: translateX(100%);
    opacity: 1;
  }

  .messages-conversation-row.is-actions-open .messages-conversation {
    transform: translateX(-128px);
  }

  .messages-conversation-row.is-actions-open .messages-conversation__actions {
    visibility: visible;
    pointer-events: auto;
    transform: translateX(0);
  }

  .messages-conversation-row.is-actions-open .messages-conversation__time {
    opacity: 0;
  }

  .messages-conversation__action {
    width: 64px;
    min-width: 64px;
  }

  .messages-thread {
    min-height: 0;
  }

  .messages-thread__back {
    width: 40px;
    min-width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .messages-thread__head {
    flex-wrap: nowrap;
    gap: 4px;
    padding: 4px 8px;
  }

  .messages-thread-participants {
    flex: 0 0 40px;
    max-width: 40px;
    gap: 4px;
  }

  .messages-thread-participants .messages-participant-stack {
    display: none;
  }

  .messages-thread-invite {
    width: 40px;
    min-width: 40px;
    padding: 0;
  }

  .messages-thread-invite span {
    display: none;
  }

  .messages-selection-bar {
    flex: 1 0 100%;
    width: 100%;
    justify-content: flex-start;
    padding: 8px 0 0;
    border-top: 1px solid var(--erp-ui-border-soft);
    border-left: 0;
  }

  .messages-selection-bar__action {
    min-width: 34px;
    padding: 0 8px;
  }

  .messages-selection-bar__action span {
    display: none;
  }

  .messages-thread__body {
    padding: 12px 10px;
  }

  .messages-message {
    --messages-avatar-half: 14px;
    width: 100%;
    gap: 12px;
    grid-template-columns: 28px minmax(0, 1fr);
  }

  .messages-message.is-mine {
    grid-template-columns: minmax(0, 1fr) 28px;
  }

  .messages-message.messages-message--event {
    width: min(92%, 560px);
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
  }

  .messages-message__avatar {
    padding-bottom: calc(var(--messages-actions-reserve) + var(--messages-tail-center-offset) - var(--messages-avatar-half));
  }

  .messages-message__avatar .messages-avatar {
    width: 28px;
    height: 28px;
  }

  .messages-message__select {
    top: calc((100% - var(--messages-actions-reserve)) / 2);
    right: 3px;
    opacity: 0 !important;
    pointer-events: none;
    transform: translateY(-50%);
  }

  .messages-message.is-selected .messages-message__select {
    opacity: 1 !important;
    pointer-events: auto;
  }

  .messages-message.is-mine .messages-message__select {
    right: auto;
    left: 3px;
    transform: translateY(-50%);
  }

  .messages-bubble {
    border-radius: 16px;
  }

  .messages-message.is-mine .messages-bubble {
    border-radius: 16px;
  }

  .erp-emoji-picker {
    width: min(100%, calc(100vw - 20px));
    max-height: min(360px, calc(100vh - 140px));
  }

  .erp-emoji-picker__grid {
    grid-template-columns: repeat(7, 1fr);
  }

  .erp-emoji-picker__button {
    width: 32px;
    height: 32px;
  }
}


/* ==========================================================================
   Home profile dashboard
   ========================================================================== */
.page-home {
  gap: var(--erp-ui-space-4);
  padding-bottom: var(--erp-ui-space-3);
}

.erp-home-cover .erp-social-cover__content--profile {
  min-height: 176px;
}

.page-home[data-home-desktop-active-index="0"] > .erp-home-cover,
.page-home[data-home-desktop-active-index="1"] > .erp-home-cover,
.page-home[data-home-desktop-active-index="2"] > .erp-home-cover,
.page-home[data-home-desktop-active-index="0"] .erp-home-desktops__head,
.page-home[data-home-desktop-active-index="0"] [data-home-desktop-index="0"] > .erp-home-desktop-title,
.page-home[data-home-desktop-active-index="1"] .erp-home-desktops__head,
.page-home[data-home-desktop-active-index="1"] [data-home-desktop-index="1"] > .erp-home-desktop-title,
.page-home[data-home-desktop-active-index="2"] .erp-home-desktops__head,
.page-home[data-home-desktop-active-index="2"] [data-home-desktop-index="2"] > .erp-home-desktop-title {
  display: none;
}

.page-home[data-home-desktop-active-index="0"],
.page-home[data-home-desktop-active-index="1"],
.page-home[data-home-desktop-active-index="2"] {
  gap: 0;
}

.page-home[data-home-desktop-active-index="0"] [data-home-desktop-index="0"],
.page-home[data-home-desktop-active-index="1"] [data-home-desktop-index="1"],
.page-home[data-home-desktop-active-index="2"] [data-home-desktop-index="2"] {
  gap: 0;
}

.erp-home-desktops {
  display: grid;
  grid-template-rows: minmax(0, 1fr);
  gap: var(--erp-ui-space-3);
  height: 100%;
  min-height: 0;
  min-width: 0;
}

.erp-home-desktops[data-home-desktop-active-index="0"] {
  --erp-home-desktop-index: 0;
}

.erp-home-desktops[data-home-desktop-active-index="1"] {
  --erp-home-desktop-index: 1;
}

.erp-home-desktops[data-home-desktop-active-index="2"] {
  --erp-home-desktop-index: 2;
}

.erp-home-desktops__head {
  display: flex;
  align-items: flex-end;
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-home-desktops__head > div:first-child {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.erp-home-desktops__head span {
  color: var(--erp-ui-text);
  font-size: 18px;
  line-height: 1.2;
  font-weight: 950;
}

.erp-home-desktops__head p {
  max-width: 720px;
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.4;
  font-weight: 750;
}

.erp-home-desktops__controls {
  position: fixed;
  left: 50%;
  bottom: calc(var(--erp-footer-h) + var(--erp-ui-space-3));
  z-index: 1210;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 10px 12px;
  border: 1px solid rgba(203, 213, 225, .82);
  border-radius: var(--erp-ui-radius-pill);
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 16px 42px rgba(15, 23, 42, .18);
  transform: translateX(-50%);
  backdrop-filter: blur(14px);
  transition:
    width .3s cubic-bezier(.22, 1, .36, 1),
    height .3s cubic-bezier(.22, 1, .36, 1),
    min-width .3s cubic-bezier(.22, 1, .36, 1),
    min-height .3s cubic-bezier(.22, 1, .36, 1),
    padding .3s cubic-bezier(.22, 1, .36, 1),
    border-radius .3s cubic-bezier(.22, 1, .36, 1),
    border-color .22s ease,
    background-color .22s ease,
    box-shadow .22s ease;
}

.erp-home-desktops__controls:empty {
  display: none;
}

.erp-home-goo-defs {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  pointer-events: none;
}

.erp-home-desktops__dots {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 14px;
  transition:
    width .3s cubic-bezier(.22, 1, .36, 1),
    gap .3s cubic-bezier(.22, 1, .36, 1),
    opacity .16s ease,
    transform .28s cubic-bezier(.22, 1, .36, 1);
}

.erp-home-desktop-dot {
  width: 7px;
  height: 7px;
  min-width: 7px;
  min-height: 7px;
  padding: 0;
  border: 0;
  border-radius: var(--erp-ui-radius-pill);
  background: #cbd5e1;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  transition:
    width .22s ease,
    height .22s ease,
    transform .28s cubic-bezier(.22, 1, .36, 1),
    background-color .16s ease,
    box-shadow .16s ease,
    opacity .16s ease;
}

.erp-home-desktop-dot:hover,
.erp-home-desktop-dot:focus-visible,
.erp-home-desktop-dot.is-active {
  background: #334155;
  outline: none;
}

.erp-home-desktop-dot.is-active {
  width: 22px;
  box-shadow: 0 2px 8px rgba(15, 23, 42, .18);
}

.erp-home-desktops.is-home-feed-loading .erp-home-desktop-dot {
  pointer-events: none;
}

.erp-home-desktops.is-home-feed-loading .erp-home-desktops__controls {
  min-width: 70px;
}

.erp-home-desktops.is-home-feed-loading .erp-home-desktops__dots {
  opacity: 0;
}

.erp-home-desktop-loader {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 50px;
  height: 18px;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, -50%) scale(.94);
  transition:
    opacity .16s ease,
    transform .22s cubic-bezier(.22, 1, .36, 1);
}

.erp-home-desktops.is-home-feed-loading .erp-home-desktop-loader {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

@media (prefers-reduced-motion: reduce) {
  .erp-home-desktop-loader animate {
    display: none;
  }
}

.erp-home-desktop-viewport {
  display: flex;
  align-items: stretch;
  gap: 0;
  width: 100%;
  height: 100%;
  min-height: 0;
  min-width: 0;
  overflow-x: hidden;
  overflow-y: hidden;
  scrollbar-width: none;
  transition: height .22s ease;
}

.erp-home-desktop-viewport::-webkit-scrollbar {
  display: none;
}

.erp-home-desktops.is-switching .erp-home-desktop-viewport {
  overflow-y: hidden;
}

.erp-home-desktop-slide {
  flex: 0 0 100%;
  display: grid;
  grid-template-rows: minmax(0, 1fr);
  align-content: start;
  gap: var(--erp-ui-space-3);
  height: 100%;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
  padding: 0 1px;
  transform: translate3d(calc(var(--erp-home-desktop-index, 0) * -100%), 0, 0);
  transition: transform .46s cubic-bezier(.22, 1, .36, 1);
  will-change: transform;
}

.erp-home-desktop-slide[aria-hidden="true"] {
  pointer-events: none;
}

.erp-home-desktop-slide.is-active {
  pointer-events: auto;
}

.erp-home-desktop-lazy-state {
  min-height: 100%;
  display: grid;
  place-items: center;
  padding: var(--erp-ui-space-4);
}

.erp-home-inline-loading {
  min-height: 240px;
  display: grid;
  place-items: center;
}

@media (prefers-reduced-motion: reduce) {
  .erp-home-desktop-slide {
    transition: none;
  }

  .erp-home-desktop-viewport {
    transition: none;
  }
}

.erp-home-desktop-title {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.erp-home-desktop-title span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.2;
  font-weight: 950;
  text-transform: uppercase;
}

.erp-home-desktop-title span svg,
.erp-home-desktop-title span .lucide {
  width: 15px !important;
  height: 15px !important;
}

.erp-home-desktop-title strong {
  color: var(--erp-ui-text);
  font-size: 20px;
  line-height: 1.16;
  font-weight: 950;
}

.erp-home-desktop-title p {
  max-width: 760px;
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.45;
  font-weight: 750;
}

.erp-home-widget-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-home-widget {
  display: grid;
  gap: var(--erp-ui-space-3);
  min-width: 0;
  padding: var(--erp-ui-space-4);
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  box-shadow: var(--erp-ui-shadow-sm);
}

.erp-home-widget--focus,
.erp-home-widget--shortcuts,
.erp-home-widget--commerce-actions,
.erp-home-widget--social-actions {
  grid-column: span 4;
}

.erp-home-widget--metrics,
.erp-home-widget--products,
.erp-home-widget--feed {
  grid-column: span 8;
}

.erp-home-widget__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  min-height: 30px;
  padding-bottom: var(--erp-ui-space-2);
  border-bottom: 1px solid var(--erp-ui-border);
}

.erp-home-widget__head span {
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 950;
}

.erp-home-widget__head strong {
  min-width: 28px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  padding: 0 8px;
  border-radius: var(--erp-ui-radius-pill);
  background: #f1f5f9;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 950;
}

.erp-home-workspace {
  display: grid;
  grid-template-columns: minmax(260px, .85fr) minmax(0, 1.55fr) minmax(260px, .9fr);
  grid-template-rows: auto minmax(0, 1fr);
  grid-template-areas:
    "summary composer side"
    "summary feed side";
  align-items: stretch;
  gap: var(--erp-ui-space-3);
  height: 100%;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

.erp-home-workspace-block {
  display: grid;
  align-content: start;
  gap: var(--erp-ui-space-3);
  min-width: 0;
  padding: var(--erp-ui-space-4);
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  box-shadow: var(--erp-ui-shadow-sm);
}

.erp-home-workspace-block--summary {
  grid-area: summary;
  align-self: stretch;
  align-content: stretch;
  grid-template-rows: minmax(0, 1fr);
  height: 100%;
  max-height: 100%;
  min-height: 0;
  overflow: hidden;
}

.erp-home-workspace-block--summary:has(> .erp-home-profile-slider) {
  padding: 0;
}

.erp-home-profile-slider {
  --erp-home-profile-slide-index: 0;
  display: grid;
  grid-template-rows: minmax(0, 1fr);
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
}

.erp-home-profile-slider__viewport {
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  outline: none;
  touch-action: pan-y;
}

.erp-home-profile-slider__track {
  display: flex;
  width: 100%;
  height: 100%;
  transform: translate3d(calc(var(--erp-home-profile-slide-index) * -100%), 0, 0);
  transition: transform .32s cubic-bezier(.22, 1, .36, 1);
  will-change: transform;
}

.erp-home-profile-slider__slide {
  box-sizing: border-box;
  flex: 0 0 100%;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  padding: var(--erp-ui-space-4);
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: thin;
}

.erp-home-profile-slider__slide > .erp-home-profile-card {
  align-self: stretch;
  align-content: start;
  height: 100%;
  max-height: 100%;
  min-height: 0;
}

.erp-home-profile-slider__slide > .erp-home-profile-card.is-info-expanded,
.erp-home-profile-slider__slide > .erp-home-profile-card.is-counter-expanded {
  align-content: stretch;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
}

.erp-home-profile-slider__slide > .erp-home-profile-card.is-info-expanded.erp-home-profile-card--has-bio,
.erp-home-profile-slider__slide > .erp-home-profile-card.is-counter-expanded.erp-home-profile-card--has-bio {
  grid-template-rows: auto auto auto auto minmax(0, 1fr) auto;
}

.erp-home-company-card {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  align-content: start;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  min-height: 100%;
}

.erp-home-company-card__cover {
  position: relative;
  grid-column: 1 / -1;
  width: 100%;
  height: 112px;
  overflow: hidden;
  border-radius: var(--erp-ui-radius) var(--erp-ui-radius) 0 0;
  background: var(--erp-ui-surface-muted);
}

.erp-home-company-card__cover img,
.erp-home-company-card__logo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-home-company-card__logo {
  position: relative;
  z-index: 1;
  width: 82px;
  height: 82px;
  margin-top: -46px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 4px solid #fff;
  border-radius: 50%;
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-text);
  font-size: 18px;
  font-weight: 950;
}

.erp-home-company-card__identity {
  align-self: start;
  display: grid;
  gap: 3px;
  min-width: 0;
  padding-top: 4px;
}

.erp-home-company-card__name {
  display: flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
}

.erp-home-company-card__name strong {
  min-width: 0;
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 16px;
  line-height: 1.2;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-company-card__identity > span,
.erp-home-company-card__description {
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.4;
  font-weight: 800;
}

.erp-home-company-card__description,
.erp-home-company-card__counters,
.erp-home-company-card__details,
.erp-home-company-card__action {
  grid-column: 1 / -1;
}

.erp-home-company-card__description {
  margin: 0;
}

.erp-home-company-card__counters {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: var(--erp-ui-space-2) 0;
  border-top: 1px solid var(--erp-ui-border);
  border-bottom: 1px solid var(--erp-ui-border);
}

.erp-home-company-card__counters > span {
  display: grid;
  justify-items: center;
  gap: 2px;
  min-width: 0;
}

.erp-home-company-card__counters > span + span {
  border-left: 1px solid var(--erp-ui-border);
}

.erp-home-company-card__counters strong {
  color: var(--erp-ui-text);
  font-size: 16px;
  font-weight: 950;
}

.erp-home-company-card__counters small {
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 850;
}

.erp-home-company-card__details {
  display: grid;
  gap: var(--erp-ui-space-2);
}

.erp-home-company-card__details > span {
  display: grid;
  grid-template-columns: 18px minmax(86px, auto) minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  min-width: 0;
}

.erp-home-company-card__details svg,
.erp-home-company-card__details .lucide {
  width: 14px !important;
  height: 14px !important;
  color: var(--erp-ui-muted);
}

.erp-home-company-card__details small {
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 850;
}

.erp-home-company-card__details strong {
  min-width: 0;
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 11px;
  font-weight: 850;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-company-card__action {
  align-self: end;
  margin-top: auto;
}

.erp-home-company-card--empty {
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr) auto;
  align-items: center;
  padding-top: var(--erp-ui-space-4);
}

.erp-home-profile-card.erp-home-company-profile-panel {
  row-gap: var(--erp-ui-space-1);
}

.erp-home-company-profile-panel.erp-home-profile-card--has-bio {
  grid-template-rows: auto auto auto auto minmax(0, 1fr) auto;
}

.erp-home-company-profile-panel.erp-home-profile-card--no-bio {
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
}

.erp-home-company-profile-panel.is-info-expanded.erp-home-profile-card--has-bio {
  grid-template-rows: auto auto auto auto minmax(0, 1fr) auto auto;
}

.erp-home-company-profile-panel.is-info-expanded.erp-home-profile-card--no-bio {
  grid-template-rows: auto auto auto minmax(0, 1fr) auto auto;
}

.erp-home-company-profile-panel.is-counter-expanded.erp-home-profile-card--has-bio {
  grid-template-rows: auto auto auto auto minmax(0, 1fr) auto;
}

.erp-home-company-profile-panel.is-counter-expanded.erp-home-profile-card--no-bio {
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
}

.erp-home-company-profile-panel__actions {
  width: 100%;
  grid-column: 1 / -1;
  align-self: end;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--erp-ui-space-2);
  min-width: 0;
  margin-top: auto;
  padding-top: var(--erp-ui-space-2);
  border-top: 1px solid var(--erp-ui-border);
}

.erp-home-company-profile-panel .erp-home-profile-card__info-panel,
.erp-home-company-profile-panel .erp-home-profile-card__contacts {
  align-content: start;
}

.erp-home-company-profile-panel .erp-home-profile-card__contacts {
  gap: var(--erp-ui-space-1);
}

.erp-home-company-profile-panel__actions > .erp-btn,
.erp-home-company-profile-panel__actions > .erp-home-profile-card__more {
  width: 100%;
  min-height: var(--erp-ui-control-height);
  margin: 0;
}

.erp-home-company-profile-panel__entity {
  display: grid;
  gap: 6px;
  padding: 8px 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
}

.erp-home-company-profile-panel__entity:last-child {
  border-bottom: 0;
}

.erp-home-company-profile-panel__entity > div,
.erp-home-company-profile-panel__entity > p {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  min-width: 0;
  margin: 0;
}

.erp-home-company-profile-panel__entity > p {
  grid-template-columns: 18px minmax(0, 1fr);
  padding-left: 14px;
}

.erp-home-company-profile-panel__entity :is(svg, .lucide) {
  width: 14px !important;
  height: 14px !important;
  color: var(--erp-ui-muted);
}

.erp-home-company-profile-panel__entity span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.erp-home-company-profile-panel__entity strong,
.erp-home-company-profile-panel__entity small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-company-profile-panel__entity strong {
  color: var(--erp-ui-text);
  font-size: 11px;
  font-weight: 900;
}

.erp-home-company-profile-panel__entity small,
.erp-home-company-profile-panel__entity b {
  color: var(--erp-ui-muted);
  font-size: 9px;
  font-weight: 800;
}

@media (prefers-reduced-motion: reduce) {
  .erp-home-profile-slider__track {
    transition: none;
  }
}

.erp-home-workspace-block--composer {
  grid-area: composer;
  align-self: start;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.erp-home-workspace-block--feed {
  grid-area: feed;
  grid-template-rows: auto;
  align-content: stretch;
  align-self: stretch;
  height: 100%;
  max-height: 100%;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  scrollbar-width: thin;
}

.erp-home-feed-loader {
  width: 100%;
  height: 1px;
  min-height: 1px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}

.erp-home-workspace-block--side {
  grid-area: side;
  position: sticky;
  top: calc(var(--erp-header-h) + var(--erp-page-toolbar-h) + var(--erp-ui-space-3));
  align-self: stretch;
  grid-template-rows: auto minmax(0, 1fr);
  height: 100%;
  max-height: 100%;
  min-height: 0;
  overflow: hidden;
}

.erp-home-notifications-shell {
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  min-height: 0;
}

.erp-home-workspace-block--side > .erp-home-notifications-shell {
  grid-row: 1 / -1;
  height: 100%;
  max-height: 100%;
}

.page-home-notifications {
  display: grid;
  width: 100%;
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.erp-home-notifications-shell--full {
  width: min(760px, 100%);
  height: 100%;
  min-height: 0;
  margin-inline: auto;
}

.erp-home-notifications-shell--full .erp-home-notifications-head {
  padding: 0 8px 12px;
}

.erp-home-notifications-shell--full .erp-home-account-notifications {
  padding-inline: 2px;
}

.erp-home-workspace-block__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  padding-bottom: var(--erp-ui-space-2);
  border-bottom: 1px solid var(--erp-ui-border);
}

.erp-home-workspace-block__head > div,
.erp-home-workspace-block__head > span:not(.erp-home-workspace-block__icon) {
  min-width: 0;
}

.erp-home-workspace-block__head span:not(.erp-home-workspace-block__icon),
.erp-home-workspace-block__head strong {
  color: var(--erp-ui-text);
  font-size: 14px;
  line-height: 1.2;
  font-weight: 950;
}

.erp-home-workspace-block__head small {
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.25;
  font-weight: 850;
}

.erp-home-notifications-head {
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 2px 2px 8px;
}

.erp-home-notifications-head__filters {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

.erp-home-notifications-head__filter {
  min-height: 32px;
  padding: 0 13px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--erp-ui-text);
  font: inherit;
  font-size: 13px;
  line-height: 1;
  font-weight: 900;
  cursor: pointer;
  transition: color .16s ease, background .16s ease;
}

.erp-home-notifications-head__filter:is(:hover, :focus-visible) {
  background: var(--erp-action-hover-bg);
  color: var(--erp-action-hover-text);
  outline: none;
}

.erp-home-notifications-head__filter.is-active {
  background: color-mix(in srgb, var(--erp-action-accent) 10%, var(--erp-ui-surface));
  color: var(--erp-action-accent-strong);
}

.erp-home-notifications-head__section {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-home-notifications-head__section strong {
  color: var(--erp-ui-text);
  font-size: 14px;
  line-height: 1.2;
  font-weight: 950;
}

.erp-home-notifications-head__mark-all,
.erp-home-notifications-head__view-all {
  min-height: 30px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--erp-action-accent-strong);
  font: inherit;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 850;
  cursor: pointer;
  text-decoration: none;
}

.erp-home-notifications-head__mark-all:is(:hover, :focus-visible),
.erp-home-notifications-head__view-all:is(:hover, :focus-visible) {
  color: var(--erp-ui-text);
  outline: none;
}

.erp-home-notifications-head__mark-all:disabled {
  color: var(--erp-ui-muted);
  cursor: default;
  opacity: .55;
}

.erp-home-workspace-block__icon-action {
  width: 32px;
  height: 32px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 32px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-muted);
  cursor: pointer;
}

.erp-home-workspace-block__icon-action:hover,
.erp-home-workspace-block__icon-action:focus-visible {
  border-color: #cbd5e1;
  background: #f8fafc;
  color: var(--erp-ui-text);
  outline: none;
}

.erp-home-workspace-block__icon-action:disabled {
  opacity: .42;
  cursor: default;
}

.erp-home-workspace-block__icon-action svg,
.erp-home-workspace-block__icon-action .lucide {
  width: 16px !important;
  height: 16px !important;
}

.erp-home-workspace-block__icon,
.erp-home-workspace-stat span,
.erp-home-workspace-list-item > span {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  display: inline-grid;
  place-items: center;
  border-radius: var(--erp-ui-radius);
  background: #eef2ff;
  color: #3730a3;
}

.erp-home-workspace-block__icon svg,
.erp-home-workspace-block__icon .lucide,
.erp-home-workspace-stat svg,
.erp-home-workspace-stat .lucide,
.erp-home-workspace-list-item svg,
.erp-home-workspace-list-item .lucide {
  width: 18px !important;
  height: 18px !important;
}

.erp-home-workspace-block p,
.erp-home-workspace-empty {
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.45;
  font-weight: 750;
}

.erp-home-profile-card {
  width: 100%;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  justify-items: stretch;
  column-gap: 6px;
  row-gap: var(--erp-ui-space-2);
  min-width: 0;
  text-align: left;
}

.erp-home-workspace-block--summary > .erp-home-profile-card {
  align-self: start;
  height: auto;
  max-height: none;
  min-height: 0;
}

/* Shared profile modifier for summaries that must occupy the full workspace column. */
.erp-home-workspace-block--summary > .erp-home-profile-card--fill {
  align-self: stretch;
  align-content: start;
  height: 100%;
  max-height: 100%;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded {
  align-self: stretch;
  align-content: stretch;
  height: 100%;
  max-height: 100%;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded {
  align-self: stretch;
  align-content: stretch;
  height: 100%;
  max-height: 100%;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded.erp-home-profile-card--has-bio {
  grid-template-rows: auto auto auto auto minmax(0, 1fr) auto;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded.erp-home-profile-card--has-bio {
  grid-template-rows: auto auto auto auto minmax(0, 1fr) auto;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded .erp-home-profile-card__cover {
  grid-row: 1;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded .erp-home-profile-card__cover {
  grid-row: 1;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded .erp-home-profile-card__avatar,
.erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded .erp-home-profile-card__body {
  grid-row: 2;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded .erp-home-profile-card__avatar,
.erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded .erp-home-profile-card__body {
  grid-row: 2;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded .erp-home-profile-card__bio,
.erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded.erp-home-profile-card--no-bio .erp-home-profile-card__counters {
  grid-row: 3;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded .erp-home-profile-card__bio,
.erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded.erp-home-profile-card--no-bio .erp-home-profile-card__counters {
  grid-row: 3;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded.erp-home-profile-card--has-bio .erp-home-profile-card__counters,
.erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded.erp-home-profile-card--no-bio .erp-home-profile-card__info-panel {
  grid-row: 4;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded.erp-home-profile-card--has-bio .erp-home-profile-card__counters,
.erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded.erp-home-profile-card--no-bio .erp-home-profile-card__counter-panel {
  grid-row: 4;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded.erp-home-profile-card--has-bio .erp-home-profile-card__info-panel,
.erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded.erp-home-profile-card--no-bio .erp-home-profile-card__collapse {
  grid-row: 5;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded.erp-home-profile-card--has-bio .erp-home-profile-card__counter-panel,
.erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded.erp-home-profile-card--no-bio .erp-home-profile-card__counter-close {
  grid-row: 5;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded.erp-home-profile-card--has-bio .erp-home-profile-card__collapse {
  grid-row: 6;
}

.erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded.erp-home-profile-card--has-bio .erp-home-profile-card__counter-close {
  grid-row: 6;
}

.erp-home-profile-card__cover {
  position: relative;
  grid-column: 1 / -1;
  width: calc(100% + (var(--erp-ui-space-4) * 2));
  height: 132px;
  margin: calc(var(--erp-ui-space-4) * -1) calc(var(--erp-ui-space-4) * -1) 0;
  overflow: hidden;
  border-radius: var(--erp-ui-radius) var(--erp-ui-radius) 0 0;
  background:
    linear-gradient(135deg, rgba(15, 23, 42, .08), rgba(148, 163, 184, .18)),
    var(--erp-ui-surface-muted);
}

.erp-home-profile-card__cover::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0) 42%,
    rgba(255, 255, 255, .72) 78%,
    rgba(255, 255, 255, .98) 100%
  );
  pointer-events: none;
}

.erp-home-profile-card__cover img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-home-profile-card__cover-actions {
  position: absolute;
  inset: var(--erp-ui-space-2) var(--erp-ui-space-2) auto;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  pointer-events: none;
}

.erp-home-profile-card__cover-actions--end {
  justify-content: flex-end;
}

.erp-home-profile-card__cover-action,
.erp-home-profile-card__cover-action:link {
  --erp-icon-size: var(--erp-toolbar-btn-icon-size);
  flex: 0 0 var(--erp-ui-control-height);
  width: var(--erp-ui-control-height);
  height: var(--erp-ui-control-height);
  border: 1px solid color-mix(in srgb, var(--erp-ui-border) 72%, transparent);
  border-radius: var(--erp-ui-radius);
  background: color-mix(in srgb, var(--erp-ui-surface) 90%, transparent);
  color: var(--erp-ui-text);
  box-shadow: var(--erp-ui-shadow-sm);
  pointer-events: auto;
}

.erp-home-profile-card__cover-action:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--erp-action-accent) 42%, transparent);
  outline-offset: 2px;
}

.erp-home-profile-card__avatar {
  position: relative;
  grid-column: 1;
  align-self: start;
  justify-self: start;
  z-index: 1;
  width: 96px;
  height: 96px;
  margin-top: -58px;
  display: inline-grid;
  place-items: center;
  overflow: hidden;
  border: 4px solid var(--erp-ui-surface);
  border-radius: 50%;
  background: #f8fafc;
  color: var(--erp-ui-text);
  font-size: 30px;
  font-weight: 950;
  box-shadow: var(--erp-ui-shadow-sm);
}

.erp-home-profile-card__avatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-home-profile-card__body {
  position: relative;
  width: 100%;
  grid-column: 2;
  align-self: start;
  display: grid;
  justify-items: start;
  gap: 2px;
  min-width: 0;
  z-index: 2;
  margin-top: -38px;
  text-align: left;
}

.erp-home-profile-card__name {
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 5px;
  min-width: 0;
}

.erp-home-profile-card__body small {
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.25;
  font-weight: 850;
}

.erp-home-profile-card__body strong {
  max-width: min(100%, 180px);
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 18px;
  line-height: 1.15;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-profile-card__name .erp-dps-verified-icon {
  flex: 0 0 auto;
  color: #22c55e;
}

.erp-home-profile-card__body .erp-home-profile-card__groups {
  max-width: 100%;
  overflow: hidden;
  color: #334155;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 800;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-profile-card__company-context {
  max-width: 100%;
  min-width: 0;
  display: grid;
  justify-items: start;
  gap: 1px;
  color: #475569;
  font-size: 10px;
  line-height: 1.2;
  font-weight: 800;
}

.erp-home-profile-card__body .erp-home-profile-card__company-role {
  flex: 0 0 auto;
  overflow: visible;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  text-overflow: clip;
}

.erp-home-profile-card__company-link {
  min-width: 0;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #334155;
  font: inherit;
  font-weight: 850;
  text-align: left;
  cursor: pointer;
}

.erp-home-profile-card__body .erp-home-profile-card__company-link > span {
  min-width: 0;
  overflow: hidden;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-profile-card__company-link .erp-dps-verified-icon {
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
  color: #22c55e;
}

.erp-home-profile-card__company-link:is(:hover, :focus-visible) {
  color: var(--erp-action-accent-strong);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.erp-home-profile-card__company-link:focus-visible {
  border-radius: 3px;
  outline: 2px solid color-mix(in srgb, var(--erp-action-accent) 42%, transparent);
  outline-offset: 2px;
}

.erp-home-profile-card__company-context--empty .erp-home-profile-card__company-link {
  color: var(--erp-action-accent-strong);
}

.erp-account-profile-company-card {
  align-content: start;
  row-gap: var(--erp-ui-space-1);
}

.erp-account-profile-user-card .erp-home-profile-card__body strong,
.erp-home-company-profile-panel .erp-home-profile-card__body strong,
.erp-account-profile-company-card .erp-home-profile-card__body strong {
  max-width: 100%;
  overflow: visible;
  overflow-wrap: anywhere;
  text-overflow: clip;
  white-space: normal;
}

.erp-home-profile-card__body span {
  max-width: 100%;
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.3;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-profile-card__identity {
  position: relative;
  z-index: 2;
  grid-column: 2;
  align-self: start;
  display: grid;
  gap: 3px;
  min-width: 0;
  margin-top: -38px;
}

.erp-home-profile-card__identity .erp-home-profile-card__body {
  grid-column: 1;
  margin-top: 0;
}

.erp-home-profile-card__identity .erp-home-profile-card__counters {
  grid-column: 1;
  width: auto;
  min-height: 18px;
  display: flex;
  grid-template-columns: none;
  align-items: center;
  justify-self: start;
  gap: 0;
  padding: 0;
  border-top: 0;
  border-bottom: 0;
}

.erp-home-profile-card__identity .erp-home-profile-card__counter-button {
  min-height: 18px;
  display: inline-flex;
  align-items: baseline;
  justify-items: normal;
  gap: 3px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #475569;
  line-height: 1.2;
  text-align: left;
}

.erp-home-profile-card__identity .erp-home-profile-card__counters strong {
  color: inherit;
  font-size: 10px;
  line-height: 1.2;
  font-weight: 900;
}

.erp-home-profile-card__identity .erp-home-profile-card__counters span {
  overflow: visible;
  color: inherit;
  font-size: 9px;
  line-height: 1.2;
  font-weight: 800;
  text-overflow: clip;
}

.erp-home-profile-card__identity .erp-home-profile-card__counter-button + .erp-home-profile-card__counter-button {
  position: relative;
  margin-left: 6px;
  padding-left: 10px;
  border-left: 0;
  border-radius: 0;
}

.erp-home-profile-card__identity .erp-home-profile-card__counter-button + .erp-home-profile-card__counter-button::before {
  content: "·";
  position: absolute;
  left: 0;
  color: #64748b;
  font-weight: 900;
}

.erp-home-profile-card__identity .erp-home-profile-card__counter-button:is(:hover, :focus-visible) {
  background: transparent;
  color: var(--erp-ui-text);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.erp-home-profile-card__identity .erp-home-profile-card__counter-button:focus-visible {
  border-radius: 2px;
  outline: 2px solid rgba(0, 149, 246, .34);
  outline-offset: 2px;
}

.erp-home-profile-card__bio {
  width: 100%;
  grid-column: 1 / -1;
  margin: 0;
  color: #475569;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 750;
  text-align: left;
}

.erp-home-profile-card__bio .erp-expandable-text.is-expanded {
  display: block;
  max-height: 112px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}

.erp-expandable-text {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.erp-expandable-text__toggle {
  display: inline-block;
  margin: 0 0 0 3px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #475569;
  font: inherit;
  font-weight: 900;
  white-space: nowrap;
  vertical-align: baseline;
  cursor: pointer;
}

.erp-expandable-text__toggle:is(:hover, :focus-visible) {
  background: transparent;
  color: var(--erp-ui-text);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.erp-expandable-text__toggle:focus-visible {
  border-radius: 2px;
  outline: 2px solid rgba(0, 149, 246, .34);
  outline-offset: 2px;
}

.erp-home-profile-card__counters {
  width: 100%;
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  padding-top: var(--erp-ui-space-2);
  padding-bottom: var(--erp-ui-space-2);
  border-top: 1px solid var(--erp-ui-border);
  border-bottom: 1px solid var(--erp-ui-border);
}

.erp-home-profile-card__counter-button {
  display: grid;
  justify-items: center;
  gap: 2px;
  min-width: 0;
  padding: 5px 6px;
  border: 0;
  border-radius: var(--erp-ui-radius);
  background: transparent;
  color: inherit;
  text-align: center;
  cursor: pointer;
}

.erp-home-profile-card__counter-button + .erp-home-profile-card__counter-button {
  border-left: 1px solid var(--erp-ui-border);
  border-radius: 0 var(--erp-ui-radius) var(--erp-ui-radius) 0;
}

.erp-home-profile-card__counter-button:hover,
.erp-home-profile-card__counter-button:focus-visible {
  background: var(--erp-ui-surface-muted);
  outline: none;
}

.erp-home-profile-card__counter-button:disabled {
  cursor: not-allowed;
  opacity: .62;
}

.erp-home-profile-card__counter-button:disabled:hover {
  background: transparent;
}

.erp-home-profile-card__counters strong {
  color: var(--erp-ui-text);
  font-size: 16px;
  line-height: 1.1;
  font-weight: 950;
}

.erp-home-profile-card__counters span {
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 10px;
  line-height: 1.25;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-profile-card__counters--single {
  grid-template-columns: minmax(0, 1fr);
}

.erp-home-profile-card__counters--single .erp-home-profile-card__counter-button {
  border-radius: var(--erp-ui-radius);
}

.erp-profile-verification-action {
  width: 100%;
  grid-column: 1 / -1;
  padding-top: var(--erp-ui-space-2);
}

.erp-profile-verification-action .erp-btn {
  min-height: var(--erp-ui-control-height);
}

.erp-profile-verification-action--mobile {
  display: none;
}

.erp-home-profile-card__counter-panel {
  width: 100%;
  grid-column: 1 / -1;
  min-width: 0;
  min-height: 0;
}

.erp-home-profile-card__counter-panel[hidden],
.erp-home-profile-card__counter-close[hidden] {
  display: none;
}

.erp-home-profile-card__counter-panel:not([hidden]) {
  display: grid;
  align-content: start;
  gap: var(--erp-ui-space-2);
  width: calc(100% + (var(--erp-ui-space-4) * 2) + 2px);
  min-height: 0;
  margin-inline: calc((var(--erp-ui-space-4) * -1) - 1px);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}

.erp-home-profile-card__counter-panel > .erp-home-profile-card__panel-heading {
  width: 100%;
  margin-inline: 0;
  padding-inline: calc(var(--erp-ui-space-4) + 1px);
}

.erp-home-profile-card__counter-panel > .erp-home-profile-card__counter-list,
.erp-home-profile-card__counter-panel > .erp-home-profile-card__counter-empty,
.erp-home-profile-card__counter-panel > [data-profile-counter-content],
.erp-home-profile-card__counter-panel > .erp-home-profile-card__profile-reference-browser {
  box-sizing: border-box;
  width: 100%;
  padding-inline: calc(var(--erp-ui-space-4) + 1px);
}

.erp-home-profile-card__counter-list {
  display: grid;
  align-content: start;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  min-height: 0;
}

.erp-home-profile-card__counter-row {
  position: relative;
  z-index: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 32px;
  align-items: center;
  gap: var(--erp-ui-space-1);
  min-width: 0;
}

.erp-home-profile-card__counter-row:focus-within {
  z-index: 3;
}

.erp-home-profile-card__counter-row > .erp-home-profile-card__counter-user {
  min-width: 0;
}

.erp-home-profile-card__counter-actions {
  width: 32px;
  height: 32px;
  z-index: 4;
}

.erp-home-profile-card__profile-reference-browser {
  min-width: 0;
  min-height: 0;
}

.erp-home-profile-card__profile-reference-browser > .erp-company-reference-view:not([hidden]) {
  height: auto;
}

.erp-home-profile-card__counter-user {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  min-height: 46px;
  color: var(--erp-ui-text);
  text-decoration: none;
}

.erp-home-profile-card__counter-user:hover,
.erp-home-profile-card__counter-user:focus-visible {
  color: var(--erp-ui-primary);
  outline: none;
}

.erp-home-profile-card__counter-avatar {
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  overflow: hidden;
  border-radius: 50%;
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-text);
  font-size: 12px;
  font-weight: 950;
}

.erp-home-profile-card__counter-avatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-home-profile-card__counter-user-body {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.erp-home-profile-card__counter-user-body strong,
.erp-home-profile-card__counter-user-body span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-profile-card__counter-user-body strong {
  color: var(--erp-ui-text);
  font-size: 12px;
  line-height: 1.2;
  font-weight: 950;
}

.erp-home-profile-card__counter-user-body span,
.erp-home-profile-card__counter-user time {
  color: var(--erp-ui-muted);
  font-size: 10px;
  line-height: 1.2;
  font-weight: 800;
}

.erp-home-profile-card__counter-user time {
  white-space: nowrap;
}

.erp-home-profile-card__counter-empty {
  height: 100%;
  min-height: 132px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 6px;
  color: var(--erp-ui-muted);
  text-align: center;
}

.erp-home-profile-card__counter-empty svg,
.erp-home-profile-card__counter-empty .lucide {
  width: 24px !important;
  height: 24px !important;
}

.erp-home-profile-card__counter-empty strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.2;
  font-weight: 950;
}

.erp-home-profile-card__counter-empty span {
  max-width: 210px;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 800;
}

.erp-home-profile-card__counter-button.is-active {
  background: var(--erp-ui-surface-muted);
}

.erp-home-profile-card.is-counter-expanded .erp-home-profile-card__info-panel,
.erp-home-profile-card.is-counter-expanded .erp-home-profile-card__collapse {
  display: none;
}

.erp-home-profile-card__info-panel {
  width: 100%;
  grid-column: 1 / -1;
  display: grid;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  min-height: 0;
}

.erp-home-profile-card__info-panel.is-info-expanded {
  align-content: start;
  grid-template-rows: auto auto;
  gap: var(--erp-ui-space-2);
  width: calc(100% + (var(--erp-ui-space-4) * 2) + 2px);
  height: auto;
  max-height: 100%;
  margin-inline: calc((var(--erp-ui-space-4) * -1) - 1px);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}

.erp-home-profile-card__info-panel.is-info-expanded > .erp-home-profile-card__contacts,
.erp-home-profile-card__info-panel.is-info-expanded > .erp-home-profile-card__details > .erp-home-profile-card__details-scroll {
  box-sizing: border-box;
  width: 100%;
  padding-inline: calc(var(--erp-ui-space-4) + 1px);
}

.erp-home-profile-card__info-panel.is-info-expanded .erp-home-profile-card__details-group > h3,
.erp-home-profile-card__info-panel.is-info-expanded .erp-home-profile-card__details-subtitle {
  padding-inline: calc(var(--erp-ui-space-4) + 1px);
}

.erp-home-profile-card__contacts {
  display: grid;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  min-height: 0;
}

.erp-home-profile-card__contact,
.erp-home-profile-card__more {
  display: grid;
  grid-template-columns: 18px minmax(62px, auto) minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  min-width: 0;
  min-height: 30px;
  color: var(--erp-ui-text);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 850;
}

.erp-home-profile-card__contact i,
.erp-home-profile-card__contact svg,
.erp-home-profile-card__contact .lucide,
.erp-home-profile-card__more i,
.erp-home-profile-card__more svg,
.erp-home-profile-card__more .lucide {
  width: 15px !important;
  height: 15px !important;
  color: var(--erp-ui-muted);
}

.erp-home-profile-card__contact > span {
  color: var(--erp-ui-muted);
  font-size: 10px;
  font-weight: 900;
  white-space: nowrap;
}

.erp-home-profile-card__contact a,
.erp-home-profile-card__contact em {
  min-width: 0;
  overflow: hidden;
  color: var(--erp-ui-text);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-profile-card__contact a {
  text-decoration: none;
}

.erp-home-profile-card__contact a:hover,
.erp-home-profile-card__contact a:focus-visible {
  color: var(--erp-ui-primary);
  outline: none;
}

.erp-home-profile-card__contact em {
  color: var(--erp-ui-muted);
  font-style: normal;
  font-weight: 750;
}

.erp-home-profile-card__more {
  grid-template-columns: 18px minmax(0, 1fr);
  justify-content: center;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: #f8fafc;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}

.erp-home-profile-card__more:hover,
.erp-home-profile-card__more:focus-visible {
  border-color: #cbd5e1;
  background: #fff;
  outline: none;
}

.erp-home-profile-card.is-info-expanded .erp-home-profile-card__more {
  display: none;
}

.erp-home-profile-card__details {
  min-height: 0;
}

.erp-home-profile-card__details:not([hidden]) {
  display: grid;
  grid-template-rows: minmax(0, 1fr);
  min-height: 0;
  overflow: visible;
}

.erp-home-profile-card__details-scroll {
  display: grid;
  align-content: start;
  gap: var(--erp-ui-space-2);
  min-height: 0;
  overflow: visible;
}

.erp-home-profile-card__details-group {
  display: grid;
  gap: var(--erp-ui-space-1);
  min-width: 0;
}

.erp-home-profile-card__details-group + .erp-home-profile-card__details-group {
  margin-top: var(--erp-ui-space-1);
}

.erp-home-profile-card__details-group > h3,
.erp-home-profile-card__details-subtitle {
  box-sizing: border-box;
  width: calc(100% + (var(--erp-ui-space-4) * 2) + 2px);
  height: 40px;
  min-height: 40px;
  display: flex;
  align-items: center;
  min-width: 0;
  margin: 0 calc((var(--erp-ui-space-4) * -1) - 1px);
  padding: 0 var(--erp-ui-space-4);
  border-radius: 0;
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-text);
  font-size: 11px;
  line-height: 1.25;
  font-weight: 950;
  letter-spacing: 0;
}

.erp-home-profile-card__details-subtitle {
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  color: var(--erp-ui-muted);
  font-size: 10px;
}

.erp-home-profile-card__details-subtitle small {
  flex: 0 0 auto;
  color: var(--erp-ui-text);
  font-size: 10px;
  font-weight: 950;
}

.erp-home-profile-card__panel-heading {
  padding-top: 0;
  padding-bottom: 0;
}

.erp-home-profile-card__panel-heading > .erp-social-post__icon-action {
  flex: 0 0 32px;
  margin-left: -3px;
}

.erp-home-profile-card__panel-heading > span {
  min-width: 0;
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 11px;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-profile-card__panel-heading > small {
  margin-left: auto;
}

.erp-company-reference-view__context {
  display: grid;
  gap: 2px;
  margin: 0;
  padding: 0 2px;
  color: var(--erp-ui-muted);
  font-size: 10px;
  line-height: 1.35;
  font-weight: 800;
}

.erp-company-reference-view__context strong {
  color: var(--erp-ui-text);
  font-size: 11px;
  font-weight: 950;
}

.erp-company-reference-view__context span {
  color: inherit;
}

.erp-home-profile-card.is-info-expanded .erp-home-profile-card__counters--business-units {
  display: none;
}

.erp-home-profile-card__details-group .erp-home-profile-card__detail strong {
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: right;
}

.erp-home-profile-card__detail {
  display: grid;
  grid-template-columns: 18px minmax(62px, auto) minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  min-width: 0;
  min-height: 30px;
  padding: 0;
}

.erp-home-profile-card__detail i,
.erp-home-profile-card__detail svg,
.erp-home-profile-card__detail .lucide {
  width: 14px !important;
  height: 14px !important;
  color: var(--erp-ui-muted);
}

.erp-home-profile-card__detail span {
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 10px;
  line-height: 1.2;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-profile-card__detail strong {
  min-width: 0;
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 11px;
  line-height: 1.25;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-profile-card__collapse,
.erp-home-profile-card__counter-close {
  grid-column: 1 / -1;
  align-self: end;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: 100%;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: #f8fafc;
  color: var(--erp-ui-text);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 850;
  cursor: pointer;
}

.erp-home-profile-card__collapse:hover,
.erp-home-profile-card__collapse:focus-visible,
.erp-home-profile-card__counter-close:hover,
.erp-home-profile-card__counter-close:focus-visible {
  border-color: #cbd5e1;
  background: #fff;
  outline: none;
}

.erp-home-profile-card__collapse svg,
.erp-home-profile-card__collapse .lucide,
.erp-home-profile-card__counter-close svg,
.erp-home-profile-card__counter-close .lucide {
  width: 15px !important;
  height: 15px !important;
  color: var(--erp-ui-muted);
}

.erp-home-feed-composer {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 0;
  border-radius: var(--erp-ui-radius);
  background: transparent;
}

.erp-home-feed-composer__categories {
  width: 100%;
  max-width: none;
  min-width: 0;
}

.erp-home-feed-composer__categories .erp-segmented__btn {
  flex: 1 1 0;
  min-width: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  white-space: nowrap;
}

.erp-home-feed-composer__categories .erp-segmented__btn span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.erp-home-feed-composer__categories .erp-segmented__btn i,
.erp-home-feed-composer__categories .erp-segmented__btn svg,
.erp-home-feed-composer__categories .erp-segmented__btn .lucide {
  width: 15px !important;
  height: 15px !important;
  flex: 0 0 auto;
}

.erp-home-feed-composer__row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  padding: 6px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  box-shadow: var(--erp-ui-shadow-sm);
}

.erp-home-feed-composer__avatar,
.erp-home-account-notification__avatar {
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border);
  border-radius: 50%;
  background: #f8fafc;
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 950;
}

.erp-home-feed-composer__avatar {
  align-self: center;
}

.erp-home-feed-composer__avatar img,
.erp-home-account-notification__avatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.erp-home-feed-composer__bar {
  position: relative;
  min-height: 44px;
  display: grid;
  grid-template-columns: 44px 44px 44px minmax(0, 1fr) 44px;
  grid-template-rows: auto auto;
  align-items: start;
  min-width: 0;
  overflow: visible;
  padding: 0;
  border: 0;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
  box-shadow: none;
}

.erp-home-feed-composer .erp-home-feed-composer__bar.erp-field-control:not(.erp-field-control--select) {
  border: 0;
  background: var(--erp-ui-surface-muted);
  box-shadow: none;
}

.erp-home-feed-composer__bar:focus-within {
  box-shadow: none;
}

.erp-home-feed-composer__emoji {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  grid-column: 1;
  grid-row: 1 / span 2;
  min-width: 0;
  height: 44px;
}

.erp-home-feed-composer__field {
  grid-column: 4;
  grid-row: 1;
  min-width: 0;
  display: flex;
  align-items: stretch;
  margin: 0;
}

.erp-home-feed-composer__field textarea {
  width: 100%;
  min-height: 44px;
  max-height: 260px;
  resize: none;
  display: block;
  overflow-y: auto;
  padding: 12px 12px 9px;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--erp-ui-text);
  font: inherit;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 750;
}

.erp-home-feed-composer__field textarea:focus {
  box-shadow: none;
}

.erp-home-feed-composer__icon-btn {
  width: 48px;
  min-width: 48px;
  height: 48px;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-muted);
  cursor: pointer;
  line-height: 1;
}

.erp-home-feed-composer__icon-btn:hover,
.erp-home-feed-composer__icon-btn:focus-visible,
.erp-home-feed-composer__icon-btn.is-active {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
  outline: none;
}

.erp-home-feed-composer__emoji .erp-home-feed-composer__icon-btn {
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  border-right: 1px solid var(--erp-ui-border-soft);
}

.erp-home-feed-composer__send {
  grid-column: 5;
  grid-row: 1;
  width: 40px;
  min-width: 40px;
  height: 40px;
  min-height: 40px;
  align-self: start;
  justify-self: center;
  margin-top: 2px;
  border-radius: 50%;
  background: var(--erp-ui-primary);
  color: #fff;
}

.erp-home-feed-composer__send:hover,
.erp-home-feed-composer__send:focus-visible {
  background: var(--erp-ui-primary);
  color: #fff;
}

.erp-home-feed-composer__visibility {
  grid-column: 2;
  grid-row: 1;
  align-self: start;
  position: relative;
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  display: inline-grid;
  place-items: center;
  margin: 0;
  border-left: 1px solid var(--erp-ui-border-soft);
  color: var(--erp-ui-muted);
  cursor: pointer;
}

.erp-home-feed-composer__photo {
  position: relative;
  width: 44px;
  height: 44px;
}

.erp-home-feed-composer__attachment-actions {
  grid-column: 2 / -1;
  grid-row: 1;
  display: grid;
  grid-template-columns: repeat(4, 44px);
  align-items: start;
  justify-content: start;
  min-width: 0;
}

.erp-home-feed-composer__action-slot {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  outline: none;
}

.erp-home-feed-composer__action-slot:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--erp-ui-primary) 36%, transparent);
}

.erp-home-feed-composer__photo .erp-home-feed-composer__icon-btn {
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
}

.erp-home-feed-composer__photo-preview {
  position: relative;
  grid-column: 1 / -1;
  grid-row: 2;
  min-width: 0;
  margin: 0 8px 8px;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
}

.erp-home-feed-composer__photo-preview[hidden] {
  display: none;
}

.erp-home-feed-composer__photo-preview img {
  width: 100%;
  max-height: 240px;
  display: block;
  object-fit: contain;
  background: var(--erp-ui-surface);
}

.erp-home-feed-composer__visibility select {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

.erp-home-feed-composer__visibility.is-enhanced .erp-select-control__custom {
  position: static;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.erp-home-feed-composer__visibility.is-open .erp-select-control__custom,
.erp-home-feed-composer__visibility .erp-select-control__custom:focus-within {
  border: 0;
  box-shadow: none;
}

.erp-home-feed-composer__visibility .erp-home-feed-composer__visibility-trigger {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  min-height: 44px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
}

.erp-home-feed-composer__visibility .erp-select-control__menu {
  top: calc(100% + 8px);
  right: 0;
  left: auto;
}

.erp-home-feed-composer__visibility:focus-within,
.erp-home-feed-composer__visibility:hover {
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
}

.erp-home-feed-composer__visibility-icon {
  display: none;
  place-items: center;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.erp-home-feed-composer__visibility[data-visibility-value="public"] [data-visibility-icon="public"],
.erp-home-feed-composer__visibility[data-visibility-value="followers"] [data-visibility-icon="followers"],
.erp-home-feed-composer__visibility[data-visibility-value="hidden"] [data-visibility-icon="hidden"] {
  display: inline-grid;
}

.erp-home-feed-composer__visibility svg,
.erp-home-feed-composer__visibility .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-home-feed-composer__icon-btn svg,
.erp-home-feed-composer__icon-btn .lucide {
  width: 17px !important;
  height: 17px !important;
}

/* == Home feed post editor == */
.erp-home-feed-editor {
  gap: 0;
  min-width: 0;
  background: transparent;
}

.erp-home-feed-editor__composer {
  display: grid;
  gap: 0;
  min-width: 0;
}

[data-home-feed-edit-visibility-host] {
  display: none;
}

.erp-home-feed-editor-modal .erp-modal__header,
.erp-home-feed-editor-modal .erp-modal__content {
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-home-feed-editor-modal .erp-modal__header {
  border-bottom: 0;
}

.erp-home-feed-editor-modal .erp-modal__content {
  padding: 8px;
}

.erp-home-feed-editor-modal-overlay {
  grid-template-rows: minmax(0, auto) auto;
  align-content: center;
  row-gap: 14px;
}

.erp-home-feed-editor-modal-overlay .erp-home-feed-editor-modal {
  max-height: min(calc(88vh - 70px), calc(100vh - 96px));
}

.erp-home-feed-editor-modal__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.erp-home-feed-editor-modal-overlay > .erp-home-feed-editor-modal__actions > .erp-btn.erp-home-feed-editor-modal__action {
  width: 48px;
  min-width: 48px;
  height: 48px;
  min-height: 48px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, .62);
  border-radius: 50%;
  background: rgba(255, 255, 255, .88);
  color: #0f172a;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .18);
  backdrop-filter: blur(14px);
  font-size: 0;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.erp-home-feed-editor-modal-overlay > .erp-home-feed-editor-modal__actions > .erp-btn.erp-home-feed-editor-modal__action--save {
  background: rgba(255, 255, 255, .88);
  color: #1d4ed8;
}

.erp-home-feed-editor-modal-overlay > .erp-home-feed-editor-modal__actions > .erp-btn.erp-home-feed-editor-modal__action:not(:disabled):is(:hover, :focus-visible) {
  transform: translateY(-2px);
  background: #fff;
  color: currentColor;
  box-shadow: 0 20px 42px rgba(15, 23, 42, .24);
  outline: none;
}

.erp-home-feed-editor-modal-overlay > .erp-home-feed-editor-modal__actions > .erp-btn.erp-home-feed-editor-modal__action:not(:disabled):active {
  transform: translateY(0);
}

.erp-home-feed-editor-modal-overlay > .erp-home-feed-editor-modal__actions > .erp-btn.erp-home-feed-editor-modal__action:not(:disabled):is(:hover, :focus-visible, :active) .erp-modal__action-icon :is(i, svg, .lucide) {
  color: inherit;
}

.erp-home-feed-editor-modal__actions .erp-modal__action-icon,
.erp-home-feed-editor-modal__actions .erp-modal__action-icon :is(i, svg, .lucide) {
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.erp-home-feed-editor-modal__actions .erp-modal__action-icon :is(i, svg, .lucide) {
  width: 20px !important;
  height: 20px !important;
}

.erp-home-feed-editor-modal .erp-modal__header > .erp-home-feed-composer__visibility {
  width: 34px;
  min-width: 34px;
  height: 34px;
  min-height: 34px;
  margin: 0 0 0 auto;
  border: 0;
  border-radius: 8px;
  background: transparent;
}

.erp-home-feed-editor-modal .erp-modal__header > .erp-home-feed-composer__visibility:is(:hover, :focus-within) {
  background: #eef2f7;
  color: #111827;
}

.erp-home-feed-editor-modal .erp-modal__header > .erp-home-feed-composer__visibility :is(
  .erp-select-control__custom,
  .erp-home-feed-composer__visibility-trigger
) {
  width: 100%;
  height: 100%;
  min-height: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  box-shadow: none;
}

.erp-home-feed-editor__bar {
  min-height: 174px;
  grid-template-columns: 44px 44px minmax(0, 1fr);
  grid-template-rows: minmax(154px, auto) auto;
  align-items: start;
  overflow: visible;
  padding: 4px;
  border: 0;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface, #fff);
  box-shadow: var(--erp-ui-shadow-sm);
}

.erp-home-feed-editor__bar.erp-field-control:not(.erp-field-control--select) {
  border: 0;
  background: var(--erp-ui-surface, #fff);
  box-shadow: var(--erp-ui-shadow-sm);
}

.erp-home-feed-editor__bar .erp-composer-actions__toggle,
.erp-home-feed-editor__bar .erp-home-feed-composer__emoji > .erp-home-feed-composer__icon-btn,
.erp-home-feed-editor__bar .erp-home-feed-editor__tools .erp-home-feed-composer__icon-btn {
  width: 36px;
  min-width: 36px;
  height: 36px;
  min-height: 36px;
  margin: 4px;
  border: 0;
  border-radius: 50%;
  background: color-mix(in srgb, var(--erp-ui-primary) 10%, var(--erp-ui-surface));
  color: var(--erp-ui-muted);
}

.erp-home-feed-editor-modal .erp-home-feed-editor__bar .erp-home-feed-editor__field,
.erp-home-feed-editor-modal .erp-home-feed-editor__bar.is-composer-actions-ready .erp-home-feed-editor__field {
  grid-column: 3;
  grid-row: 1;
  min-height: 154px;
}

.erp-home-feed-editor__bar .erp-home-feed-editor__field textarea {
  min-height: 154px;
  max-height: min(48vh, 360px);
  padding: 12px 10px;
}

.erp-home-feed-editor-modal .erp-home-feed-editor__bar.is-composer-actions-ready .erp-home-feed-composer__emoji {
  grid-column: 2;
  grid-row: 1;
}

.erp-home-feed-editor-modal .erp-home-feed-editor__bar .erp-home-feed-editor__tools,
.erp-home-feed-editor-modal .erp-home-feed-editor__bar.is-composer-actions-ready .erp-home-feed-editor__tools {
  grid-column: 2 / -1;
  grid-row: 1;
  grid-template-columns: repeat(5, 44px);
  align-items: start;
}

.erp-home-feed-editor__bar .erp-home-feed-editor__tools .erp-home-feed-composer__action-slot {
  width: 44px;
  height: 44px;
}

.erp-home-feed-editor__bar .erp-home-feed-editor__tools .erp-home-feed-composer__icon-btn:disabled {
  opacity: .42;
  cursor: not-allowed;
}

.erp-home-feed-editor__attachments {
  grid-column: 1 / -1;
  grid-row: 2;
  min-width: 0;
  padding: 4px;
}

.erp-home-feed-editor__attachments[hidden] {
  display: none;
}

.erp-home-feed-editor__photo-preview {
  grid-template-columns: minmax(120px, 180px);
  margin: 0;
}

.erp-home-feed-editor__photo-preview .media-photo-uploader__tile,
.erp-home-feed-editor__photo-preview .invoice-photo-tile {
  min-height: 96px;
}

.erp-home-feed-editor__photo-preview .media-photo-uploader__tile img,
.erp-home-feed-editor__photo-preview .invoice-photo-tile img {
  min-height: 96px;
  max-height: 140px;
}

.erp-home-feed-editor__product-options {
  display: grid;
  gap: 6px;
  max-height: min(420px, 54vh);
  margin-top: 10px;
  overflow: auto;
}

.erp-home-feed-editor__product-option {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  width: 100%;
  min-width: 0;
  padding: 8px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-field-radius);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  text-align: left;
  cursor: pointer;
}

.erp-home-feed-editor__product-option:hover,
.erp-home-feed-editor__product-option:focus-visible {
  border-color: var(--erp-ui-border);
  background: var(--erp-ui-surface-muted);
  outline: none;
}

.erp-home-feed-editor__product-option-media {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: var(--erp-field-radius);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
}

.erp-home-feed-editor__product-option-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-home-feed-editor__product-option-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-home-feed-editor__product-option-copy strong,
.erp-home-feed-editor__product-option-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-feed-editor__product-option-copy strong {
  font-size: 13px;
  font-weight: 900;
}

.erp-home-feed-editor__product-option-copy small {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 700;
}

@media (max-width: 560px) {
  .erp-home-feed-editor-modal .erp-modal__content {
    padding: 5px;
  }

  .erp-home-feed-editor-modal-overlay {
    row-gap: 10px;
    padding-bottom: 10px;
  }

  .erp-home-feed-editor-modal-overlay .erp-home-feed-editor-modal {
    max-height: calc(100vh - 88px);
  }

  .erp-home-feed-editor__bar {
    grid-template-columns: 44px 44px minmax(0, 1fr);
  }

  .erp-home-feed-editor-modal .erp-home-feed-editor__bar .erp-home-feed-editor__tools,
  .erp-home-feed-editor-modal .erp-home-feed-editor__bar.is-composer-actions-ready .erp-home-feed-editor__tools {
    grid-template-columns: repeat(5, 40px);
  }
}

.erp-home-purchase-suggestions {
  position: relative;
  display: grid;
  gap: 8px;
  min-width: 0;
  margin-top: 8px;
  padding-inline: 28px;
  --erp-home-purchase-suggestion-index: 0;
}

.erp-home-purchase-suggestions__head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 0;
  text-align: center;
}

.erp-home-purchase-suggestions__capsule {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
  padding: 8px 12px;
  border: 1px solid rgba(203, 213, 225, .82);
  border-radius: var(--erp-ui-radius-pill);
  background: rgba(255, 255, 255, .88);
  color: var(--erp-ui-text);
  box-shadow: 0 10px 28px rgba(15, 23, 42, .10);
  cursor: pointer;
  appearance: none;
  backdrop-filter: blur(14px);
  transition: border-color .16s ease, background .16s ease, color .16s ease, box-shadow .16s ease;
}

.erp-home-purchase-suggestions__capsule:hover,
.erp-home-purchase-suggestions__capsule:focus-visible {
  border-color: color-mix(in srgb, #334155 24%, rgba(203, 213, 225, .82));
  background: rgba(255, 255, 255, .96);
  color: #0f172a;
  outline: none;
}

.erp-home-purchase-suggestions__capsule > span {
  min-width: 0;
  overflow: hidden;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 900;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
  letter-spacing: .04em;
}

.erp-home-purchase-suggestions__capsule > svg,
.erp-home-purchase-suggestions__capsule > .lucide {
  width: 15px !important;
  height: 15px !important;
  flex: 0 0 auto;
  color: #64748b;
  transition: color .15s ease, transform .18s ease;
}

.erp-home-purchase-suggestions__capsule:hover > svg,
.erp-home-purchase-suggestions__capsule:focus-visible > svg,
.erp-home-purchase-suggestions__capsule:hover > .lucide,
.erp-home-purchase-suggestions__capsule:focus-visible > .lucide {
  color: #0f172a;
}

.erp-home-purchase-suggestions__badge {
  min-width: 19px;
  height: 19px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 5px;
  border: 2px solid var(--erp-system-badge-border);
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-system-badge-bg);
  color: var(--erp-system-badge-text);
  box-shadow: var(--erp-system-badge-shadow);
  font-size: 11px;
  line-height: 1;
  font-weight: 850;
}

.erp-home-purchase-suggestions__bulk-action {
  width: 34px;
  min-width: 34px;
  height: 34px;
  min-height: 34px;
  display: inline-grid;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(203, 213, 225, .82);
  border-radius: var(--erp-ui-radius-pill);
  background: rgba(255, 255, 255, .88);
  color: #64748b;
  cursor: pointer;
  appearance: none;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .08);
  backdrop-filter: blur(14px);
  transition: border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease;
}

.erp-home-purchase-suggestions__bulk-action:hover,
.erp-home-purchase-suggestions__bulk-action:focus-visible {
  border-color: color-mix(in srgb, #334155 24%, rgba(203, 213, 225, .82));
  background: rgba(255, 255, 255, .96);
  color: #0f172a;
  outline: none;
  transform: translateY(-1px);
}

.erp-home-purchase-suggestions__bulk-action svg,
.erp-home-purchase-suggestions__bulk-action .lucide {
  width: 16px !important;
  height: 16px !important;
}

.erp-home-purchase-suggestions__nav {
  position: absolute;
  top: 50%;
  z-index: 2;
  width: 24px;
  height: 44px;
  display: inline-grid;
  place-items: center;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  appearance: none;
  transform: translateY(-50%);
  transition: color .15s ease, opacity .16s ease, transform .16s ease;
}

.erp-home-purchase-suggestions__nav[data-home-purchase-suggestions-prev] {
  left: 0;
}

.erp-home-purchase-suggestions__nav[data-home-purchase-suggestions-next] {
  right: 0;
}

.erp-home-purchase-suggestions__nav:hover,
.erp-home-purchase-suggestions__nav:focus-visible {
  color: #0f172a;
  outline: none;
  transform: translateY(-50%) scale(1.06);
}

.erp-home-purchase-suggestions__nav[aria-disabled="true"] {
  opacity: .42;
  pointer-events: none;
}

.erp-home-purchase-suggestions__nav svg,
.erp-home-purchase-suggestions__nav .lucide {
  width: 16px !important;
  height: 16px !important;
}

.erp-home-purchase-suggestions__viewport {
  min-width: 0;
  overflow: hidden;
  transition: height .24s cubic-bezier(.22, 1, .36, 1);
}

.erp-home-purchase-suggestions__track {
  display: flex;
  align-items: flex-start;
  min-width: 0;
  transform: translateX(calc(var(--erp-home-purchase-suggestion-index) * -100%));
  transition: transform .26s cubic-bezier(.22, 1, .36, 1);
}

.erp-home-purchase-suggestions__dots {
  margin-top: 1px;
}

.erp-home-purchase-suggestions.is-collapsed {
  padding-inline: 0;
}

.erp-home-purchase-suggestions.is-collapsed .erp-home-purchase-suggestions__viewport,
.erp-home-purchase-suggestions.is-collapsed .erp-home-purchase-suggestions__dots,
.erp-home-purchase-suggestions.is-collapsed .erp-home-purchase-suggestions__nav {
  display: none;
}

.erp-home-purchase-suggestions.is-hidden-for-editing {
  display: none;
}

.erp-home-purchase-suggestion {
  display: grid;
  gap: 8px;
  flex: 0 0 100%;
  align-self: flex-start;
  min-width: 0;
  padding: 8px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: color-mix(in srgb, var(--erp-ui-surface) 88%, var(--erp-ui-bg));
}

.erp-home-purchase-suggestion.is-editing {
  border-color: color-mix(in srgb, var(--erp-ui-accent) 34%, var(--erp-ui-border));
  background: color-mix(in srgb, var(--erp-ui-accent) 7%, var(--erp-ui-surface));
}

.erp-home-purchase-suggestion__text {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-home-purchase-suggestion__text span {
  color: var(--erp-ui-muted);
  font-size: 10px;
  line-height: 1.2;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.erp-home-purchase-suggestion__text strong {
  color: var(--erp-ui-text);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 900;
}

.erp-home-purchase-suggestion__actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: transparent;
}

.erp-home-purchase-suggestion__actions button {
  min-width: 0;
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 8px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--erp-ui-text);
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  cursor: pointer;
  appearance: none;
  transition: background .16s ease, color .16s ease;
}

.erp-home-purchase-suggestion__actions button + button {
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-home-purchase-suggestion__actions button:hover,
.erp-home-purchase-suggestion__actions button:focus-visible {
  background: color-mix(in srgb, var(--erp-ui-accent) 10%, transparent);
  color: var(--erp-ui-accent);
}

.erp-home-purchase-suggestion__actions svg,
.erp-home-purchase-suggestion__actions .lucide {
  width: 14px !important;
  height: 14px !important;
}

.erp-home-purchase-suggestion__preview,
.erp-home-feed-composer__embedded-products,
.erp-home-purchase-edit-preview__content {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.erp-home-feed-composer__embedded-products {
  grid-column: 2 / 5;
  grid-row: 2;
  padding: 0 8px 8px 0;
}

.erp-home-feed-composer__embedded-products[hidden] {
  display: none;
}

.erp-home-feed-composer__embedded-products .erp-home-purchase-preview__summary {
  padding-right: 4px;
}

.erp-home-personal-feed,
.erp-home-account-notifications {
  display: grid;
  gap: var(--erp-ui-space-2);
  align-content: start;
  min-width: 0;
}

.erp-home-personal-feed {
  height: auto;
  max-height: none;
  min-height: 0;
  overflow: visible;
  padding-right: 2px;
}

.erp-home-account-notifications {
  gap: 0;
  min-height: 0;
  overflow-y: auto;
  padding-right: 0;
  scrollbar-width: thin;
}

.erp-home-personal-feed__item {
  --erp-home-feed-avatar-gap: var(--erp-ui-space-3);
  --erp-home-feed-avatar-size: 32px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--erp-ui-space-2);
  min-width: 0;
  padding: var(--erp-ui-space-3);
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
}

.erp-home-personal-feed__item--product-publication {
  gap: var(--erp-ui-space-2);
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.erp-home-personal-feed__item--product-publication > .erp-home-personal-feed__head,
.erp-home-personal-feed__item--product-publication > .erp-home-personal-feed__actions {
  padding-inline: var(--erp-ui-space-1);
}

.erp-home-personal-feed__item--product-publication > .erp-home-personal-feed__head::after,
.erp-home-personal-feed__item--product-publication > .erp-home-personal-feed__actions::before {
  display: none;
}

.erp-home-personal-feed__head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  column-gap: var(--erp-home-feed-avatar-gap);
  row-gap: 0;
  min-width: 0;
}

.erp-home-personal-feed__head::after {
  content: "";
  grid-column: 1 / -1;
  height: 1px;
  margin: var(--erp-ui-space-2) calc(var(--erp-ui-space-3) * -1) 0;
  background: var(--erp-ui-border-soft);
}

.erp-home-personal-feed__avatar {
  width: var(--erp-home-feed-avatar-size);
  height: var(--erp-home-feed-avatar-size);
  font-size: 11px;
}

.erp-home-personal-feed__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-home-personal-feed__author {
  display: grid;
  align-content: center;
  gap: 2px;
  min-width: 0;
}

.erp-home-personal-feed__author-line {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
}

.erp-home-personal-feed__meta strong,
.erp-home-account-notification strong {
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.25;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-personal-feed__author time {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-personal-feed__meta time,
.erp-home-account-notification__title time {
  flex: 0 0 auto;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.25;
  font-weight: 850;
}

.erp-home-personal-feed__meta-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  flex: 0 0 auto;
  min-width: 0;
}

.erp-home-personal-feed__quick-actions {
  flex: 0 0 auto;
  align-self: center;
}

.erp-home-personal-feed__pin,
.erp-home-personal-feed__quick-actions > .erp-social-post__icon-action {
  width: 30px;
  min-width: 30px;
  height: 30px;
  min-height: 30px;
  padding: 0;
  border-radius: var(--erp-ui-radius);
}

.erp-home-personal-feed__pin.is-active {
  color: var(--erp-ui-text);
  background: var(--erp-ui-surface-muted);
}

.erp-home-personal-feed__pin svg,
.erp-home-personal-feed__pin .lucide,
.erp-home-personal-feed__quick-actions > .erp-social-post__icon-action svg,
.erp-home-personal-feed__quick-actions > .erp-social-post__icon-action .lucide {
  width: 16px !important;
  height: 16px !important;
}

.erp-home-personal-feed__visibility {
  width: 28px;
  min-width: 28px;
  height: 28px;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-muted);
  font: inherit;
  cursor: default;
  line-height: 1;
  transition: background .18s ease, color .18s ease;
}

.erp-home-personal-feed__visibility-wrap {
  flex: 0 0 auto;
  line-height: 1;
}

.erp-home-personal-feed__visibility--button {
  cursor: pointer;
}

.erp-home-personal-feed__visibility:hover,
.erp-home-personal-feed__visibility:focus-visible {
  background: color-mix(in srgb, var(--erp-ui-primary) 14%, var(--erp-ui-surface));
  color: var(--erp-ui-text);
  outline: none;
}

.erp-home-personal-feed__visibility svg,
.erp-home-personal-feed__visibility .lucide {
  width: 14px !important;
  height: 14px !important;
  flex: 0 0 auto;
}

.erp-home-personal-feed__visibility-menu--portal {
  position: fixed;
  right: auto;
  bottom: auto;
  z-index: var(--erp-layer-modal-child);
  min-width: 0;
  max-width: calc(100vw - 16px);
  pointer-events: auto;
}

.erp-home-personal-feed__item p,
.erp-home-account-notification p {
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.4;
  font-weight: 750;
}

.erp-home-personal-feed__item p {
  margin: 0;
  color: #334155;
  font-size: 13px;
  line-height: 1.45;
}

.erp-home-account-notification p {
  margin: 6px 0 0;
}

.erp-home-personal-feed__content {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.erp-home-personal-feed__media {
  min-width: 0;
  margin: 0 calc(var(--erp-ui-space-3) * -1);
  overflow: hidden;
  background: var(--erp-ui-surface-muted);
}

.erp-home-personal-feed__media img {
  width: 100%;
  max-height: 620px;
  display: block;
  object-fit: contain;
  background: var(--erp-ui-surface-muted);
}

.erp-home-purchase-preview__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-home-purchase-preview__summary > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.erp-home-purchase-preview__summary strong {
  min-width: 0;
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.35;
  font-weight: 950;
  letter-spacing: 0;
}

.erp-home-purchase-preview__summary span {
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.25;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-purchase-preview__summary a {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  color: var(--erp-ui-icon);
  text-decoration: none;
  transition: background .16s ease, color .16s ease, border-color .16s ease;
}

.erp-home-purchase-preview__summary a:hover,
.erp-home-purchase-preview__summary a:focus-visible {
  border-color: color-mix(in srgb, var(--erp-ui-accent) 28%, var(--erp-ui-border));
  background: color-mix(in srgb, var(--erp-ui-accent) 10%, transparent);
  color: var(--erp-ui-accent);
}

.erp-home-purchase-preview__summary svg,
.erp-home-purchase-preview__summary .lucide {
  width: 16px !important;
  height: 16px !important;
}

.erp-home-purchase-model {
  position: relative;
  display: block;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.erp-home-purchase-model[hidden] {
  display: none;
}

.erp-home-purchase-model__remove {
  position: absolute;
  top: 7px;
  right: 7px;
  z-index: 10;
  width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border: 0;
  border-radius: var(--erp-ui-radius);
  background: color-mix(in srgb, var(--erp-ui-surface) 88%, transparent);
  color: #64748b;
  cursor: pointer;
  appearance: none;
  transition: background .15s ease, color .15s ease, transform .15s ease;
}

.erp-home-purchase-model__remove:hover,
.erp-home-purchase-model__remove:focus-visible {
  background: #e5e7eb;
  color: #0f172a;
  outline: none;
  transform: translateY(-1px);
}

.erp-home-purchase-model__remove svg,
.erp-home-purchase-model__remove .lucide {
  width: 14px !important;
  height: 14px !important;
}

.erp-home-purchase-more {
  width: 100%;
  min-height: 40px;
  display: grid;
  grid-template-columns: minmax(0, auto) auto;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius);
  background: color-mix(in srgb, var(--erp-ui-surface) 84%, var(--erp-ui-bg));
  color: var(--erp-ui-text);
  cursor: pointer;
  appearance: none;
  text-align: center;
  text-decoration: none;
  transition: background .16s ease, border-color .16s ease, transform .16s ease;
}

.erp-home-purchase-more:hover,
.erp-home-purchase-more:focus-visible {
  border-color: color-mix(in srgb, var(--erp-ui-accent) 30%, var(--erp-ui-border));
  background: var(--erp-ui-surface);
  transform: translateY(-1px);
}

.erp-home-purchase-more strong {
  font-size: 11px;
  line-height: 1;
  font-weight: 950;
}

.erp-home-purchase-more span {
  min-width: 0;
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.1;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-personal-feed__actions {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0;
  min-width: 0;
  padding-top: var(--erp-ui-space-2);
}

.erp-home-personal-feed__actions::before {
  content: "";
  position: absolute;
  top: 0;
  left: calc(var(--erp-ui-space-3) * -1);
  right: calc(var(--erp-ui-space-3) * -1);
  height: 1px;
  background: var(--erp-ui-border-soft);
}

.erp-home-personal-feed__actions .erp-social-post__icon-action {
  flex: 1 1 0;
  justify-content: center;
  min-height: 30px;
  min-width: 0;
  padding-inline: 8px;
  border-radius: var(--erp-ui-radius);
}

.erp-home-personal-feed__actions .erp-social-post__icon-action + .erp-social-post__icon-action {
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-home-personal-feed__actions .erp-social-post__icon-action span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-personal-feed__actions .erp-social-post__icon-action [data-entity-reaction-count="like"],
.erp-home-personal-feed__actions .erp-social-post__icon-action [data-entity-share-count] {
  flex: 0 0 auto;
}

.erp-home-account-notification {
  display: grid;
  gap: 7px;
  min-width: 0;
  margin: 0;
  padding: 9px 7px 10px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  transition: background .16s ease, opacity .16s ease;
}

.erp-home-account-notification.is-interactive {
  cursor: pointer;
}

.erp-home-account-notification.is-interactive:is(:hover, :focus-visible) {
  background: color-mix(in srgb, var(--erp-action-accent) 5%, var(--erp-ui-surface));
  outline: none;
}

.erp-home-account-notification.is-interactive:focus-visible {
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--erp-action-accent) 28%, transparent);
}

.erp-home-account-notification[aria-busy="true"] {
  opacity: .68;
  pointer-events: none;
}

.erp-home-account-notifications__date {
  display: none;
}

.erp-home-account-notification:last-child {
  padding-bottom: 9px;
}

.erp-home-account-notification__body {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) 8px;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.erp-home-account-notification__avatar-wrap {
  position: relative;
  width: 44px;
  height: 44px;
  align-self: start;
  flex: 0 0 44px;
}

.erp-home-account-notification__avatar {
  width: 44px;
  height: 44px;
  border: 0;
  background: color-mix(in srgb, var(--erp-action-accent) 7%, var(--erp-ui-surface));
  color: #334155;
  font-size: 12px;
}

.erp-home-account-notification[data-notification-type="banking_income"] .erp-home-account-notification__avatar {
  padding: 4px;
  border: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.erp-home-account-notification[data-notification-type="banking_income"] .erp-home-account-notification__avatar img {
  object-fit: contain;
}

.erp-home-account-notification__type {
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  border: 2px solid var(--erp-ui-surface);
  border-radius: 50%;
  background: var(--erp-action-accent-strong);
  color: #fff;
}

.erp-home-account-notification__type svg,
.erp-home-account-notification__type .lucide {
  width: 11px !important;
  height: 11px !important;
  color: currentColor;
  stroke-width: 2.5;
}

.erp-home-account-notification[data-notification-type="comment"] .erp-home-account-notification__type,
.erp-home-account-notification[data-notification-type="comment_reply"] .erp-home-account-notification__type {
  background: #22b95b;
}

.erp-home-account-notification[data-notification-type="reservation"] .erp-home-account-notification__type,
.erp-home-account-notification[data-notification-type="order_delivery"] .erp-home-account-notification__type,
.erp-home-account-notification[data-notification-type="order_payment"] .erp-home-account-notification__type,
.erp-home-account-notification[data-notification-type="feed_order"] .erp-home-account-notification__type {
  background: #d97706;
}

.erp-home-account-notification__content {
  display: grid;
  align-content: center;
  gap: 4px;
  min-width: 0;
}

.erp-home-account-notification__summary {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  color: #667085;
  font-size: 13px;
  line-height: 1.42;
  font-weight: 600;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.erp-home-account-notification__summary strong {
  display: inline;
  overflow: visible;
  color: var(--erp-ui-text);
  font: inherit;
  font-weight: 950;
  text-overflow: clip;
  white-space: normal;
}

.erp-home-account-notification.is-unread .erp-home-account-notification__summary {
  color: #344054;
}

.erp-home-account-notification__content > time {
  width: fit-content;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 850;
}

.erp-home-account-notification.is-unread .erp-home-account-notification__content > time {
  color: var(--erp-action-accent-strong);
}

.erp-home-account-notification__unread-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: transparent;
}

.erp-home-account-notification.is-unread .erp-home-account-notification__unread-dot {
  background: var(--erp-action-accent-strong);
}

.erp-home-account-notification__actions {
  display: flex;
  flex-wrap: nowrap;
  gap: 6px;
  min-width: 0;
  padding-left: 56px;
  padding-right: 16px;
}

.erp-home-account-notification__action {
  min-width: 0;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 0;
  gap: 0;
  padding: 0 10px;
  border: 0;
  border-radius: 8px;
  background: #e9edf2;
  color: var(--erp-ui-text);
  font: inherit;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 900;
  cursor: pointer;
}

.erp-home-account-notification__action:hover,
.erp-home-account-notification__action:focus-visible {
  background: #dfe5eb;
  outline: none;
}

.erp-home-account-notification__action--primary {
  background: var(--erp-action-accent-strong);
  color: #fff;
}

.erp-home-account-notification__action--primary svg,
.erp-home-account-notification__action--primary .lucide {
  color: currentColor;
}

.erp-home-account-notification__action--primary:is(:hover, :focus-visible) {
  background: color-mix(in srgb, var(--erp-action-accent-strong) 88%, #000);
  color: #fff;
}

.erp-home-account-notification__action svg,
.erp-home-account-notification__action .lucide {
  display: none;
}

.erp-home-account-notification.is-empty {
  padding-block: var(--erp-ui-space-4);
}

.erp-home-account-notification.is-empty .erp-home-account-notification__body {
  grid-template-columns: 44px minmax(0, 1fr);
}

.erp-home-notifications-empty {
  grid-row: 2;
  align-self: center;
  justify-self: stretch;
  display: grid;
  justify-items: center;
  gap: var(--erp-ui-space-2);
  padding: var(--erp-ui-space-4);
  color: var(--erp-ui-muted);
  text-align: center;
}

.erp-home-notifications-empty[hidden] {
  display: none;
}

.erp-home-notifications-empty svg,
.erp-home-notifications-empty .lucide {
  width: 24px !important;
  height: 24px !important;
}

.erp-home-notifications-empty strong {
  font-size: 12px;
  line-height: 1.35;
  font-weight: 850;
}

.erp-home-workspace-link,
.erp-home-workspace-actions a {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 0 12px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: #f8fafc;
  color: var(--erp-ui-text);
  text-decoration: none;
  font-size: 13px;
  font-weight: 900;
}

.erp-home-workspace-link:hover,
.erp-home-workspace-link:focus-visible,
.erp-home-workspace-actions a:hover,
.erp-home-workspace-actions a:focus-visible {
  border-color: #cbd5e1;
  background: #fff;
  outline: none;
}

.erp-home-workspace-link svg,
.erp-home-workspace-link .lucide,
.erp-home-workspace-actions svg,
.erp-home-workspace-actions .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-home-workspace-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--erp-ui-space-2);
}

.erp-home-workspace-stat,
.erp-home-workspace-list-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: #f8fafc;
}

.erp-home-workspace-stat small,
.erp-home-workspace-list-item small {
  display: block;
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.25;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-workspace-stat strong,
.erp-home-workspace-list-item strong {
  display: block;
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 18px;
  line-height: 1.15;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-workspace-list {
  display: grid;
  gap: var(--erp-ui-space-2);
}

.erp-home-workspace-list-item.is-success > span {
  background: #ecfdf5;
  color: #047857;
}

.erp-home-workspace-list-item.is-warning > span {
  background: #fffbeb;
  color: #b45309;
}

.erp-home-workspace-list-item.is-info > span {
  background: #eff6ff;
  color: #1d4ed8;
}

.erp-home-workspace-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--erp-ui-space-2);
}

.erp-home-tile-board {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  grid-auto-rows: minmax(112px, auto);
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-home-tile {
  display: grid;
  align-content: space-between;
  gap: var(--erp-ui-space-3);
  min-width: 0;
  min-height: 112px;
  padding: var(--erp-ui-space-4);
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  text-decoration: none;
  box-shadow: var(--erp-ui-shadow-sm);
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile-board {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-rows: 104px;
  gap: var(--erp-ui-space-2);
  align-items: stretch;
  padding: 2px;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile {
  align-content: center;
  min-height: 0;
  padding: 12px;
  overflow: hidden;
  box-shadow: none;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile--hero,
.page-home[data-home-desktop-active-index="1"] .erp-home-tile--wide {
  min-height: 0;
}

.erp-home-tile[href]:hover,
.erp-home-tile[href]:focus-visible {
  border-color: #cbd5e1;
  background: #f8fafc;
  outline: none;
}

.erp-home-tile--hero {
  grid-column: span 4;
  grid-row: span 2;
  min-height: 236px;
  background: #172033;
  color: #fff;
}

.erp-home-tile--metric,
.erp-home-tile--notice,
.erp-home-tile--link {
  grid-column: span 2;
}

.erp-home-tile--wide {
  grid-column: span 4;
  grid-row: span 2;
  min-height: 236px;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile--hero {
  grid-column: span 3;
  grid-row: span 2;
  border-color: #dbe3ec;
  background: #f8fafc;
  color: var(--erp-ui-text);
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile--metric {
  grid-column: span 2;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  background: #fff;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile--wide {
  grid-column: span 5;
  grid-row: span 2;
  align-content: start;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile--notice {
  grid-column: span 3;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile--link {
  grid-column: span 3;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.erp-home-tile__icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: var(--erp-ui-radius);
  background: #eef2ff;
  color: #3730a3;
}

.erp-home-tile--hero .erp-home-tile__icon {
  background: rgba(255, 255, 255, .12);
  color: #fff;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile__icon {
  width: 34px;
  height: 34px;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile--hero .erp-home-tile__icon {
  background: #fff;
  color: #334155;
}

.erp-home-tile__icon svg,
.erp-home-tile__icon .lucide {
  width: 20px !important;
  height: 20px !important;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile__icon svg,
.page-home[data-home-desktop-active-index="1"] .erp-home-tile__icon .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-home-tile__body {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.erp-home-tile__body small {
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 950;
  text-transform: uppercase;
}

.erp-home-tile--hero .erp-home-tile__body small,
.erp-home-tile--hero .erp-home-tile__body em {
  color: rgba(255, 255, 255, .72);
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile--hero .erp-home-tile__body small,
.page-home[data-home-desktop-active-index="1"] .erp-home-tile--hero .erp-home-tile__body em {
  color: var(--erp-ui-muted);
}

.erp-home-tile__body strong {
  color: inherit;
  font-size: 24px;
  line-height: 1.08;
  font-weight: 950;
}

.erp-home-tile--metric .erp-home-tile__body strong {
  font-size: 30px;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile__body strong {
  display: -webkit-box;
  overflow: hidden;
  font-size: 18px;
  line-height: 1.12;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile--metric .erp-home-tile__body strong {
  display: block;
  font-size: 24px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile--link .erp-home-tile__body strong {
  font-size: 16px;
}

.erp-home-tile__body em,
.erp-home-tile__empty {
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.4;
  font-style: normal;
  font-weight: 750;
}

.page-home[data-home-desktop-active-index="1"] .erp-home-tile__body em,
.page-home[data-home-desktop-active-index="1"] .erp-home-tile__empty {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.erp-home-tile--notice.is-warning .erp-home-tile__icon {
  background: #fffbeb;
  color: #b45309;
}

.erp-home-tile--notice.is-success .erp-home-tile__icon {
  background: #ecfdf5;
  color: #047857;
}

.erp-home-tile--notice.is-info .erp-home-tile__icon {
  background: #eff6ff;
  color: #1d4ed8;
}

.erp-home-panel,
.erp-home-section,
.erp-home-metric,
.erp-home-event,
.erp-home-product,
.erp-home-collection,
.erp-home-notification,
.erp-home-reservation-card {
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  box-shadow: var(--erp-ui-shadow-sm);
}

.erp-home-panel {
  display: grid;
  gap: var(--erp-ui-space-3);
  padding: var(--erp-ui-space-4);
}

.erp-home-panel--focus {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
}

.erp-home-panel__icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: var(--erp-ui-radius);
  background: #eef2ff;
  color: #4338ca;
}

.erp-home-panel__icon svg,
.erp-home-panel__icon .lucide {
  width: 20px !important;
  height: 20px !important;
}

.erp-home-panel h2,
.erp-home-section__head span,
.erp-home-event h3 {
  margin: 0;
  color: var(--erp-ui-text);
}

.erp-home-panel h2 {
  font-size: 16px;
  line-height: 1.2;
  font-weight: 900;
}

.erp-home-panel p {
  margin: 6px 0 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.45;
  font-weight: 700;
}

.erp-home-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--erp-ui-space-2);
}

.erp-home-metric {
  display: grid;
  gap: 6px;
  min-height: 98px;
  padding: 12px;
}

.erp-home-metric i,
.erp-home-metric svg,
.erp-home-metric .lucide {
  width: 18px !important;
  height: 18px !important;
  color: #0f766e;
}

.erp-home-metric span {
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 900;
  text-transform: uppercase;
}

.erp-home-metric strong {
  color: var(--erp-ui-text);
  font-size: 22px;
  line-height: 1;
  font-weight: 950;
}

.erp-home-quick-links {
  display: grid;
  gap: 8px;
}

.erp-home-quick-links a {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  text-decoration: none;
  font-size: 13px;
  font-weight: 900;
  box-shadow: var(--erp-ui-shadow-sm);
}

.erp-home-quick-links a:hover,
.erp-home-quick-links a:focus-visible {
  border-color: #c7d2fe;
  background: #f8fafc;
  color: #312e81;
  outline: none;
}

.erp-home-quick-links svg,
.erp-home-quick-links .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-home-scenario-list {
  display: grid;
  gap: 8px;
}

.erp-home-scenario-list a {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 12px;
  border: 1px solid var(--erp-ui-border);
  border-radius: var(--erp-ui-radius);
  background: #f8fafc;
  color: inherit;
  text-decoration: none;
}

.erp-home-scenario-list a:hover,
.erp-home-scenario-list a:focus-visible {
  border-color: #cbd5e1;
  background: #fff;
  outline: none;
}

.erp-home-scenario-list svg,
.erp-home-scenario-list .lucide {
  width: 17px !important;
  height: 17px !important;
  color: #334155;
}

.erp-home-scenario-list span {
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-scenario-list small {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 900;
}

.erp-home-section {
  display: grid;
  gap: var(--erp-ui-space-3);
  padding: var(--erp-ui-space-4);
}

.erp-home-section--compact {
  padding: var(--erp-ui-space-3);
}

.erp-home-section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  min-height: 34px;
  padding-bottom: var(--erp-ui-space-2);
  border-bottom: 1px solid var(--erp-ui-border);
}

.erp-home-section__head span {
  font-size: 14px;
  font-weight: 950;
}

.erp-home-section__head strong {
  min-width: 28px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: var(--erp-ui-radius-pill);
  background: #f1f5f9;
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 950;
}

.erp-home-feed,
.erp-home-notifications {
  display: grid;
  gap: var(--erp-ui-space-2);
}

.erp-home-category-feeds,
.erp-home-category-panel {
  min-width: 0;
  min-height: 0;
}

.erp-home-category-feeds {
  display: grid;
  height: 100%;
}

.erp-home-category-panel {
  display: grid;
  align-content: start;
  gap: var(--erp-ui-space-3);
}

.erp-home-category-panel[hidden] {
  display: none;
}

.erp-home-category-panel > [data-erp-virtual-feed-root] {
  min-height: 0;
}

.erp-home-reservation-card:hover,
.erp-home-reservation-card:focus-visible {
  border-color: #cbd5e1;
  background: #f8fafc;
  outline: none;
}

.erp-home-reservation-card__media svg,
.erp-home-reservation-card__media .lucide {
  width: 24px !important;
  height: 24px !important;
}

.erp-home-reservation-card__body small,
.erp-home-reservation-card__meta small {
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-reservation-card__body strong,
.erp-home-reservation-card__meta strong {
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 14px;
  line-height: 1.25;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-reservation-card__body em {
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.3;
  font-style: normal;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-feed-module {
  display: grid;
  grid-template-rows: minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

.erp-home-feed-module > .erp-social-feed {
  grid-template-rows: minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

.erp-home-feed-module .erp-social-feed-shell,
.erp-home-feed-module .erp-social-feed-main {
  height: 100%;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

.erp-home-feed-module .erp-social-feed-main {
  grid-template-rows: auto minmax(0, 1fr);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}

.erp-home-feed-module .erp-social-feed--embedded {
  height: auto;
  max-height: none;
  min-height: 0;
  overflow: visible;
  padding-right: 2px;
}

.erp-home-watchlist {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-home-reservation-rail {
  display: flex;
  gap: var(--erp-ui-space-3);
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 4px;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
}

.erp-home-reservation-rail .erp-home-reservation-card {
  flex: 0 0 min(420px, 86vw);
  scroll-snap-align: start;
}

.erp-home-reservation-list {
  display: grid;
  gap: var(--erp-ui-space-2);
}

.erp-home-reservation-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--erp-ui-space-3);
  min-width: 0;
  padding: var(--erp-ui-space-3);
  color: inherit;
  text-decoration: none;
}

.erp-home-reservation-card__media {
  width: 64px;
  height: 64px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: var(--erp-ui-radius);
  background: #f1f5f9;
  color: var(--erp-ui-muted);
}

.erp-home-reservation-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-home-reservation-card__body,
.erp-home-reservation-card__meta {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.erp-home-reservation-card__meta {
  justify-items: end;
  text-align: right;
}

.erp-home-event {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--erp-ui-space-3);
  padding: var(--erp-ui-space-3);
}

.erp-home-event__icon {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: var(--erp-ui-radius);
  background: #ecfeff;
  color: #0e7490;
}

.erp-home-event__icon svg,
.erp-home-event__icon .lucide {
  width: 18px !important;
  height: 18px !important;
}

.erp-home-event__body {
  min-width: 0;
}

.erp-home-event__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2);
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 900;
  text-transform: uppercase;
}

.erp-home-event h3 {
  margin-top: 5px;
  font-size: 15px;
  line-height: 1.25;
  font-weight: 950;
}

.erp-home-event p {
  margin: 6px 0 0;
  color: var(--erp-ui-muted);
  font-size: 13px;
  line-height: 1.45;
  font-weight: 650;
}

.erp-home-collections {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--erp-ui-space-3);
}

.erp-home-product,
.erp-home-collection {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: var(--erp-ui-space-3);
  min-height: 96px;
  padding: 10px;
  color: inherit;
  text-decoration: none;
}

.erp-home-product:hover,
.erp-home-product:focus-visible,
.erp-home-collection:hover,
.erp-home-collection:focus-visible {
  border-color: #cbd5e1;
  background: #f8fafc;
  outline: none;
}

.erp-home-product__media,
.erp-home-collection__media {
  width: 74px;
  height: 74px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: var(--erp-ui-radius);
  background: #f1f5f9;
  color: #64748b;
}

.erp-home-product__media img,
.erp-home-collection__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-home-product__media svg,
.erp-home-product__media .lucide,
.erp-home-collection__media svg,
.erp-home-collection__media .lucide {
  width: 22px !important;
  height: 22px !important;
}

.erp-home-product__body,
.erp-home-collection__body {
  display: grid;
  align-content: center;
  gap: 5px;
  min-width: 0;
}

.erp-home-product__body strong,
.erp-home-product__body small,
.erp-home-product__body em,
.erp-home-product__details,
.erp-home-product__details span,
.erp-home-collection__body strong,
.erp-home-collection__body small,
.erp-home-collection__body em {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-home-product__body strong,
.erp-home-collection__body strong {
  color: var(--erp-ui-text);
  font-size: 14px;
  font-weight: 950;
}

.erp-home-product__body small,
.erp-home-collection__body small,
.erp-home-product__details {
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
}

.erp-home-product__body em,
.erp-home-collection__body em {
  color: #047857;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}

.erp-home-product__details {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.erp-home-product__details span {
  min-width: 0;
}

.erp-home-notification {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  padding: 12px;
}

.erp-home-notification > i,
.erp-home-notification > svg,
.erp-home-notification > .lucide {
  width: 18px !important;
  height: 18px !important;
  margin-top: 1px;
  color: #475569;
}

.erp-home-notification.is-success > i,
.erp-home-notification.is-success > svg,
.erp-home-notification.is-success > .lucide {
  color: #059669;
}

.erp-home-notification.is-warning > i,
.erp-home-notification.is-warning > svg,
.erp-home-notification.is-warning > .lucide {
  color: #d97706;
}

.erp-home-notification span {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-home-notification strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.25;
  font-weight: 950;
}

.erp-home-notification small {
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.erp-account-profile-page {
  gap: 0;
  padding-bottom: 0;
}

.erp-account-profile-dashboard {
  display: grid;
  grid-template-columns: minmax(260px, .82fr) minmax(0, 1.55fr) minmax(260px, .9fr);
  grid-template-areas: "profile feed side";
  align-items: stretch;
  gap: var(--erp-ui-space-3);
  height: 100%;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

.erp-account-profile-dashboard--without-side {
  /* Keep the exact profile-column track; the feed occupies both right tracks. */
  grid-template-areas: "profile feed feed";
}

.erp-account-profile-dashboard__profile,
.erp-account-profile-dashboard__feed,
.erp-account-profile-dashboard__side {
  min-width: 0;
  min-height: 0;
}

.erp-account-profile-dashboard__profile {
  grid-area: profile;
  display: grid;
  align-content: start;
  gap: var(--erp-ui-space-3);
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  padding-right: 2px;
  scrollbar-width: thin;
}

/* A full-height profile card needs a definite grid row, like the notification column. */
.erp-account-profile-dashboard__profile:has(> .erp-home-workspace-block--summary > .erp-home-profile-card--fill) {
  align-content: stretch;
  grid-template-rows: minmax(0, 1fr);
  overflow: hidden;
}

.erp-account-profile-dashboard__feed {
  grid-area: feed;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: var(--erp-ui-space-3);
  height: 100%;
  overflow: hidden;
}

.erp-account-profile-dashboard__feed--single {
  grid-template-rows: minmax(0, 1fr);
}

.erp-account-profile-dashboard__side {
  grid-area: side;
  display: grid;
  align-content: start;
  gap: var(--erp-ui-space-3);
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  padding-right: 2px;
  scrollbar-width: thin;
}

.erp-account-profile-dashboard__side:has(> .erp-home-workspace-block--summary > .erp-home-profile-card--reference) {
  grid-template-rows: minmax(0, 1fr);
  align-content: stretch;
  overflow: hidden;
}

.erp-home-profile-card--reference {
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr);
  align-content: stretch;
  height: 100%;
  min-height: 0;
}

.erp-home-profile-card--reference > * {
  grid-column: 1;
}

.erp-company-reference-view {
  min-width: 0;
  min-height: 0;
}

.erp-company-reference-view[hidden] {
  display: none;
}

.erp-company-reference-view:not([hidden]) {
  display: grid;
  align-content: start;
  gap: var(--erp-ui-space-3);
  height: 100%;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}

.erp-company-reference-view__head {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  align-items: center;
  gap: var(--erp-ui-space-2);
  min-width: 0;
  padding-bottom: var(--erp-ui-space-2);
  border-bottom: 1px solid var(--erp-ui-border);
}

.erp-company-reference-view__head > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.erp-company-reference-view__head strong,
.erp-company-reference-view__head span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-company-reference-view__head strong {
  color: var(--erp-ui-text);
  font-size: 14px;
  line-height: 1.2;
  font-weight: 950;
}

.erp-company-reference-view__head span {
  color: var(--erp-ui-muted);
  font-size: 10px;
  line-height: 1.2;
  font-weight: 850;
}

button.erp-home-profile-card__counter-user {
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.erp-home-profile-card__counter-chevron {
  width: 16px !important;
  height: 16px !important;
  color: var(--erp-ui-muted);
}

.erp-home-profile-card__counter-avatar svg,
.erp-home-profile-card__counter-avatar .lucide {
  width: 17px !important;
  height: 17px !important;
}

.erp-company-reference-view .erp-detail-grid--list {
  grid-template-columns: minmax(0, 1fr);
}

.erp-company-reference-view .erp-detail-grid--list > .erp-detail-item {
  grid-column: 1;
}

.erp-company-reference-view__assign {
  width: 100%;
  margin-top: auto;
}

.erp-account-profile-dashboard .erp-home-workspace-block,
.erp-account-profile-dashboard .erp-home-workspace-block--summary,
.erp-account-profile-dashboard .erp-home-workspace-block--composer,
.erp-account-profile-dashboard .erp-home-workspace-block--feed {
  grid-area: auto;
}

.erp-account-profile-dashboard__feed > .erp-home-workspace-block--feed {
  height: 100%;
  min-height: 0;
}

.erp-account-profile-dashboard__feed .erp-home-personal-feed {
  padding-bottom: 2px;
}

.erp-account-profile-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-account-profile-actions .erp-btn {
  flex: 1 1 0;
  min-width: 0;
}

.erp-account-profile-tabs {
  width: 100%;
  min-height: 40px;
}

.erp-account-profile-tabs .erp-segmented__btn {
  display: inline-flex;
  flex: 1 1 0;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  white-space: nowrap;
}

.erp-account-profile-tabs .erp-segmented__btn svg,
.erp-account-profile-tabs .erp-segmented__btn .lucide {
  width: 16px !important;
  height: 16px !important;
}

.erp-account-profile-tab-panel {
  display: grid;
  align-content: start;
  gap: var(--erp-ui-space-3);
  min-width: 0;
  min-height: 0;
}

.erp-account-profile-tab-panel[data-profile-page-panel="posts"] {
  grid-template-rows: auto minmax(0, 1fr);
  align-content: stretch;
  height: 100%;
}

.erp-account-profile-tab-panel[hidden] {
  display: none;
}

.erp-account-profile-tab-panel[data-profile-page-panel="products"] {
  grid-template-rows: minmax(0, 1fr);
  height: 100%;
  overflow: hidden;
}

.erp-account-profile-tab-panel[data-profile-page-panel="products"] > .erp-home-workspace-block--feed {
  height: 100%;
  min-height: 0;
}

.erp-account-profile-facts {
  display: grid;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-account-profile-facts .erp-home-workspace-link {
  width: 100%;
  justify-content: flex-start;
}

.erp-account-profile-facts .erp-home-workspace-link span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-account-profile-dashboard .erp-social-mini-list {
  display: grid;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-account-profile-dashboard .erp-social-mini-item {
  min-width: 0;
}

@media (max-width: 1280px) {
  .erp-home-widget--focus,
  .erp-home-widget--shortcuts,
  .erp-home-widget--commerce-actions,
  .erp-home-widget--social-actions,
  .erp-home-widget--metrics,
  .erp-home-widget--products,
  .erp-home-widget--feed {
    grid-column: span 12;
  }

  .erp-home-workspace {
    grid-template-columns: minmax(260px, .9fr) minmax(0, 1.1fr);
    grid-template-rows: auto minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas:
      "summary composer"
      "feed feed"
      "side side";
    height: 100%;
    min-height: 0;
    overflow: hidden;
  }

  .erp-home-workspace-block--side {
    position: static;
    height: auto;
    max-height: none;
    min-height: 0;
    overflow: visible;
  }

  .erp-home-account-notifications {
    max-height: none;
    overflow: visible;
    padding-right: 0;
  }

  .erp-home-account-notifications__date {
    position: static;
  }

  .erp-account-profile-dashboard {
    grid-template-columns: minmax(230px, .78fr) minmax(0, 1.35fr);
    grid-template-areas:
      "profile feed"
      "side feed";
  }

  .erp-account-profile-dashboard--without-side {
    grid-template-areas: "profile feed";
  }

}

@media (min-width: 761px) and (max-width: 1280px) {
  .erp-home-workspace {
    grid-template-columns: minmax(220px, .78fr) minmax(0, 1.45fr) minmax(240px, .86fr);
    grid-template-rows: auto minmax(0, 1fr);
    grid-template-areas:
      "summary composer side"
      "summary feed side";
  }

  .erp-home-workspace-block--side {
    position: sticky;
    height: 100%;
    max-height: 100%;
    overflow: hidden;
  }

  .erp-home-account-notifications {
    max-height: 100%;
    overflow-y: auto;
    padding-right: 2px;
  }

  .erp-home-account-notifications__date {
    position: sticky;
  }

  .erp-account-profile-dashboard {
    grid-template-columns: minmax(220px, .78fr) minmax(0, 1.4fr) minmax(240px, .86fr);
    grid-template-areas: "profile feed side";
  }

  .erp-account-profile-dashboard--without-side {
    grid-template-areas: "profile feed feed";
  }
}

@media (max-width: 760px) {
  body:not(.erp-embedded-page).erp-account-profile-body #mainContent {
    height: auto;
    min-height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h));
    overflow: auto;
  }

  body:not(.erp-embedded-page).erp-account-profile-body #mainContent > .erp-account-profile-page,
  .erp-account-profile-dashboard,
  .erp-account-profile-dashboard__profile,
  .erp-account-profile-dashboard__feed,
  .erp-account-profile-dashboard__side {
    height: auto;
    overflow: visible;
  }

  .erp-account-profile-dashboard__side:has(> .erp-home-workspace-block--summary > .erp-home-profile-card--reference),
  .erp-home-profile-card--reference,
  .erp-company-reference-view:not([hidden]) {
    height: auto;
    overflow: visible;
  }

  body.erp-account-profile-body:not(.sidebar-mobile-open) {
    overflow: auto;
  }

  .erp-home-desktops__head {
    align-items: flex-start;
    flex-direction: column;
    gap: var(--erp-ui-space-2);
  }

  .erp-home-desktops__head p {
    max-width: none;
  }

  .erp-home-desktops__controls {
    left: 50%;
    bottom: calc(var(--erp-footer-h) + var(--erp-ui-space-3));
  }

  .erp-home-widget-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .erp-home-workspace {
    grid-template-columns: minmax(112px, .62fr) minmax(0, 1.76fr) minmax(112px, .62fr);
    grid-template-rows: auto minmax(0, 1fr);
    grid-template-areas:
      "summary composer side"
      "summary feed side";
    height: 100%;
    min-height: 0;
    overflow: hidden;
  }

  .erp-home-workspace-block--side {
    position: sticky;
    height: 100%;
    max-height: 100%;
    overflow: hidden;
  }

  .erp-home-account-notifications {
    max-height: 100%;
    overflow-y: auto;
    padding-right: 2px;
  }

  .erp-home-account-notifications__date {
    position: sticky;
  }

  .erp-home-workspace-stats,
  .erp-home-workspace-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .erp-home-tile-board {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .erp-home-tile--hero,
  .erp-home-tile--wide {
    grid-column: span 4;
  }

  .erp-home-tile--metric,
  .erp-home-tile--notice,
  .erp-home-tile--link {
    grid-column: span 2;
  }

  .erp-account-profile-dashboard {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "profile"
      "feed"
      "side";
    overflow: visible;
  }

  .erp-account-profile-dashboard__feed {
    grid-template-rows: auto auto;
  }

  .erp-account-profile-dashboard__feed > .erp-home-workspace-block--feed {
    height: auto;
    overflow: visible;
  }

  .erp-account-profile-tab-panel[data-profile-page-panel="products"] {
    height: auto;
    overflow: visible;
  }

  /* Mobile account cabinet: one continuous profile view, inspired by the
     established mobile social-profile pattern without changing desktop cards. */
  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]):not(.erp-embedded-page) #mainContent {
    overflow-x: hidden;
    padding-right: 0;
    padding-bottom: calc(var(--erp-ui-space-4) + env(safe-area-inset-bottom, 0px));
    padding-left: 0;
    background: var(--erp-ui-surface-muted);
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-page,
  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard {
    gap: 0;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile {
    display: grid;
    gap: 0;
    background: var(--erp-ui-surface);
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile > .erp-home-workspace-block--summary {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: var(--erp-ui-surface);
    box-shadow: none;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-slider,
  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-slider__viewport,
  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-slider__track,
  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-slider__slide {
    height: auto;
    min-height: 0;
    overflow: visible;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-slider__slide {
    padding: 0;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-slider__viewport {
    overflow: hidden;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card--account,
  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-account-profile-company-card {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    gap: 0;
    height: auto;
    max-height: none;
    padding-bottom: var(--erp-ui-space-3);
    text-align: center;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__cover {
    grid-column: 1;
    width: 100%;
    height: clamp(164px, 45vw, 208px);
    margin: 0;
    border-radius: 0;
    background:
      linear-gradient(135deg, color-mix(in srgb, var(--erp-action-accent) 84%, #ffffff), var(--erp-action-accent-strong)),
      var(--erp-ui-surface-muted);
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__cover::after {
    background: linear-gradient(
      180deg,
      rgba(15, 23, 42, .04) 0%,
      rgba(15, 23, 42, .12) 58%,
      rgba(15, 23, 42, .28) 100%
    );
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__cover-action,
  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__cover-action:link {
    border-color: rgba(255, 255, 255, .58);
    background: rgba(255, 255, 255, .9);
    backdrop-filter: blur(12px);
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__avatar {
    grid-column: 1;
    justify-self: center;
    width: 112px;
    height: 112px;
    margin-top: -58px;
    border-width: 5px;
    font-size: 34px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .18);
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__identity,
  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__body {
    grid-column: 1;
    justify-items: center;
    width: 100%;
    margin-top: 0;
    text-align: center;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__identity {
    gap: var(--erp-ui-space-2);
    padding: var(--erp-ui-space-2) var(--erp-ui-space-4) 0;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__name {
    justify-content: center;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__body strong {
    max-width: min(100%, 420px);
    font-size: 22px;
    line-height: 1.2;
    text-align: center;
    white-space: normal;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__company-context {
    justify-items: center;
    font-size: 12px;
    text-align: center;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__identity .erp-home-profile-card__counters {
    justify-self: center;
    min-height: 44px;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__identity .erp-home-profile-card__counter-button {
    min-height: 44px;
    gap: 5px;
    padding: 0 var(--erp-ui-space-2);
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__identity .erp-home-profile-card__counters strong {
    font-size: 14px;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__identity .erp-home-profile-card__counters span {
    font-size: 12px;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__bio {
    padding: var(--erp-ui-space-2) var(--erp-ui-space-4) 0;
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__counter-panel,
  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__info-panel,
  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__profile .erp-home-profile-card__collapse {
    grid-column: 1;
    width: calc(100% - (var(--erp-ui-space-4) * 2));
    margin-top: var(--erp-ui-space-3);
    margin-inline: 0;
    text-align: left;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-actions {
    width: 100%;
    flex-wrap: wrap;
    gap: var(--erp-ui-space-2);
    padding: var(--erp-ui-space-3) var(--erp-ui-space-4) var(--erp-ui-space-4);
    border-bottom: 1px solid var(--erp-ui-border-soft);
    background: var(--erp-ui-surface);
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-actions .erp-btn {
    min-width: min(132px, calc(50% - var(--erp-ui-space-1)));
    min-height: 44px;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__feed {
    display: grid;
    grid-template-rows: auto auto;
    gap: 0;
    background: var(--erp-ui-surface-muted);
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-tabs {
    position: sticky;
    top: calc(var(--erp-header-h, 0px) + var(--erp-page-toolbar-h, 54px));
    z-index: 8;
    width: 100%;
    min-height: 52px;
    display: flex;
    justify-content: flex-start;
    gap: 0;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    padding: 0 var(--erp-ui-space-2);
    border: 0;
    border-bottom: 1px solid var(--erp-ui-border-soft);
    border-radius: 0;
    background: color-mix(in srgb, var(--erp-ui-surface) 94%, transparent);
    box-shadow: none;
    scrollbar-width: none;
    backdrop-filter: blur(14px);
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-tabs::-webkit-scrollbar {
    display: none;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-tabs .erp-segmented__btn {
    position: relative;
    flex: 1 0 auto;
    min-width: 78px;
    min-height: 52px;
    padding: 0 var(--erp-ui-space-3);
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--erp-ui-muted);
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-tabs .erp-segmented__btn::after {
    content: "";
    position: absolute;
    right: var(--erp-ui-space-3);
    bottom: 0;
    left: var(--erp-ui-space-3);
    height: 3px;
    border-radius: var(--erp-ui-radius-pill) var(--erp-ui-radius-pill) 0 0;
    background: transparent;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-tabs .erp-segmented__btn.is-active {
    background: transparent;
    color: var(--erp-action-accent-strong);
    box-shadow: none;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-tabs .erp-segmented__btn.is-active::after {
    background: var(--erp-action-accent);
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-tabs .erp-segmented__btn:focus-visible {
    z-index: 1;
    border-radius: var(--erp-ui-radius-sm);
    outline: 2px solid color-mix(in srgb, var(--erp-action-accent) 42%, transparent);
    outline-offset: -4px;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-tab-panel {
    grid-template-rows: auto auto;
    align-content: start;
    height: auto;
    gap: var(--erp-ui-space-3);
    padding: var(--erp-ui-space-3);
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-tab-panel > .erp-home-workspace-block,
  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-tab-panel > [data-profile-feed-panel] {
    min-width: 0;
  }

  body.erp-account-profile-body:has(.erp-account-profile-page[data-user-view]) .erp-account-profile-dashboard__side {
    gap: var(--erp-ui-space-3);
    padding: 0 var(--erp-ui-space-3) var(--erp-ui-space-4);
    background: var(--erp-ui-surface-muted);
  }

  /* Mobile "Мій кабінет" is one document flow: profile, categories,
     composer and feed scroll together instead of pinning the composer. */
  body:not(.erp-embedded-page).erp-home-page:not(.sidebar-mobile-open) {
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  body:not(.erp-embedded-page).erp-home-page #mainContent {
    height: auto;
    min-height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h));
    overflow: visible;
    padding-bottom: calc(var(--erp-ui-space-4) + env(safe-area-inset-bottom, 0px));
  }

  body:not(.erp-embedded-page).erp-home-page #mainContent > .page-home,
  body.erp-home-page .erp-home-desktops,
  body.erp-home-page .erp-home-desktop-slide,
  body.erp-home-page .erp-home-workspace {
    height: auto;
    min-height: 0;
    overflow: visible;
  }

  body.erp-home-page .erp-home-desktop-viewport {
    height: auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: visible;
  }

  body.erp-home-page .erp-home-desktop-slide {
    grid-template-rows: auto;
  }

  body.erp-home-page .erp-home-workspace {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    grid-template-areas:
      "summary"
      "composer"
      "feed";
  }

  body.erp-home-page .erp-home-workspace-block--summary {
    position: static;
    inset: auto;
    display: grid;
    grid-template-rows: auto;
    height: auto;
    max-height: none;
    overflow: visible;
  }

  body.erp-home-page .erp-home-profile-slider,
  body.erp-home-page .erp-home-profile-slider__viewport,
  body.erp-home-page .erp-home-profile-slider__track,
  body.erp-home-page .erp-home-profile-slider__slide,
  body.erp-home-page .erp-home-profile-slider__slide > .erp-home-profile-card {
    height: auto;
    max-height: none;
    min-height: 0;
  }

  body.erp-home-page .erp-home-profile-slider__slide {
    overflow: visible;
  }

  body.erp-home-page .erp-home-workspace-block--composer {
    position: static;
    inset: auto;
  }

  body.erp-home-page .erp-home-workspace-block--feed {
    height: auto;
    max-height: none;
    overflow: visible;
    overscroll-behavior: auto;
  }

  body.erp-home-page .erp-home-workspace-block--side {
    display: none;
  }

}

@media (max-width: 560px) {
  .erp-home-workspace {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto minmax(0, 1fr);
    grid-template-areas:
      "composer"
      "feed";
  }

  .erp-home-workspace-block--side {
    display: none;
  }

  body.erp-account-profile-body .erp-account-profile-dashboard__profile > .erp-home-workspace-block--summary,
  body.erp-account-profile-body .erp-account-profile-dashboard__side > .erp-home-workspace-block--summary {
    display: grid;
    grid-template-rows: auto;
    height: auto;
    max-height: none;
    overflow: visible;
  }

  body.erp-account-profile-body .erp-account-profile-dashboard__profile:has(> .erp-home-workspace-block--summary > .erp-home-profile-card--fill) {
    grid-template-rows: auto;
    overflow: visible;
  }

  body.erp-account-profile-body .erp-home-workspace-block--summary > .erp-home-profile-card--fill,
  body.erp-account-profile-body .erp-home-workspace-block--summary > .erp-home-profile-card.is-info-expanded,
  body.erp-account-profile-body .erp-home-workspace-block--summary > .erp-home-profile-card.is-counter-expanded {
    grid-template-rows: auto;
    height: auto;
    max-height: none;
  }

  .erp-profile-verification-action--mobile {
    display: block;
  }
}

@media (max-width: 640px) {
  .erp-home-metrics {
    grid-template-columns: minmax(0, 1fr);
  }

  .erp-home-workspace-stats,
  .erp-home-workspace-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .erp-home-personal-feed__item {
    grid-template-columns: minmax(0, 1fr);
  }

  .erp-home-personal-feed__actions {
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  .erp-home-feed-composer__row {
    grid-template-columns: minmax(0, 1fr);
  }

  .erp-home-feed-composer__avatar {
    justify-self: center;
  }

  .erp-home-workspace-block__head {
    align-items: flex-start;
    flex-direction: column;
  }

  .erp-home-event,
  .erp-home-product,
  .erp-home-notification,
  .erp-home-reservation-card {
    grid-template-columns: minmax(0, 1fr);
  }

  .erp-home-tile-board {
    grid-template-columns: minmax(0, 1fr);
  }

  .erp-home-tile--hero,
  .erp-home-tile--wide,
  .erp-home-tile--metric,
  .erp-home-tile--notice,
  .erp-home-tile--link {
    grid-column: span 1;
    min-height: 112px;
  }

  .erp-home-product__media,
  .erp-home-reservation-card__media {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 10;
  }

  .erp-home-reservation-card__meta {
    justify-items: start;
    text-align: left;
  }

  .erp-home-event__meta {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Легка Instagram-подібна система станів для спільних контролів. */
.erp-btn:not(.erp-btn--danger):not(.erp-btn--success):not(:disabled):is(:hover, :focus-visible),
.erp-icon-btn:not(:disabled):is(:hover, :focus-visible),
.erp-page-toolbar__btn:not(:disabled):is(:hover, :focus-visible),
.erp-dropdown__item:not(.is-danger):is(:hover, :focus-visible),
.erp-menu-item:not(.is-danger):is(:hover, :focus-visible),
.erp-home-account-notification__action:not(.erp-home-account-notification__action--primary):not(:disabled):is(:hover, :focus-visible),
.erp-home-workspace-block__icon-action:not(:disabled):is(:hover, :focus-visible),
.erp-rich-text-field__description-action:not(:disabled):is(:hover, :focus-visible),
.erp-lightbox-action:not(:disabled):is(:hover, :focus-visible),
.messages-conversation__action:not(:disabled):is(:hover, :focus-visible),
.messages-message__action:not(:disabled):is(:hover, :focus-visible) {
  border-color: color-mix(in srgb, var(--erp-action-accent) 18%, var(--erp-ui-border));
  background: var(--erp-action-hover-bg);
  color: var(--erp-action-hover-text);
  box-shadow: none;
  outline: none;
}

.erp-btn:not(.erp-btn--danger):not(.erp-btn--success):not(:disabled):hover :is(i, svg, .lucide),
.erp-icon-btn:not(:disabled):hover :is(i, svg, .lucide),
.erp-page-toolbar__btn:not(:disabled):hover :is(i, svg, .lucide),
.erp-dropdown__item:not(.is-danger):hover :is(i, svg, .lucide),
.erp-menu-item:not(.is-danger):hover :is(i, svg, .lucide),
.erp-home-account-notification__action:not(.erp-home-account-notification__action--primary):not(:disabled):hover :is(i, svg, .lucide) {
  color: var(--erp-action-accent);
}

/* Соціальні дії реагують тільки піктограмою, а не всією шириною кнопки. */
.erp-social-post__action:not(:disabled):is(:hover, :focus-visible, :active),
.erp-social-post__icon-action:not(:disabled):is(:hover, :focus-visible, :active),
.erp-comment-item__action:not(:disabled):is(:hover, :focus-visible, :active) {
  border-color: transparent;
  background: transparent;
  color: var(--erp-ui-muted);
  box-shadow: none;
  outline: none;
}

.erp-social-post__action:not(:disabled):hover :is(i, svg, .lucide),
.erp-social-post__icon-action:not(:disabled):hover :is(i, svg, .lucide),
.erp-comment-item__action:not(:disabled):hover :is(i, svg, .lucide) {
  color: var(--erp-action-accent);
}

.erp-social-post__action:not(:disabled):focus-visible :is(i, svg, .lucide),
.erp-social-post__icon-action:not(:disabled):focus-visible :is(i, svg, .lucide),
.erp-comment-item__action:not(:disabled):focus-visible :is(i, svg, .lucide) {
  border-radius: var(--erp-ui-radius-pill);
  outline: 2px solid color-mix(in srgb, var(--erp-action-accent) 36%, transparent);
  outline-offset: 3px;
}

:is(
  [data-entity-reaction-trigger][data-entity-reaction="like"],
  .erp-comment-item__action--like
):is(.is-active, [aria-pressed="true"]) {
  border-color: transparent;
  background: transparent;
  color: var(--erp-ui-muted);
  box-shadow: none;
}

:is(
  [data-entity-reaction-trigger][data-entity-reaction="like"],
  .erp-comment-item__action--like
):is(.is-active, [aria-pressed="true"]) :is(i, svg, .lucide) {
  color: #ed4956;
  fill: #ed4956;
  stroke: #ed4956;
}

.erp-btn:not(.erp-btn--danger):not(.erp-btn--success):not(:disabled):active,
.erp-icon-btn:not(:disabled):active,
.erp-page-toolbar__btn:not(:disabled):active {
  border-color: var(--erp-action-accent);
  background: var(--erp-action-active-bg);
  color: var(--erp-action-active-text);
  box-shadow: none;
}

.erp-btn:not(.erp-btn--danger):not(.erp-btn--success):not(:disabled):active :is(i, svg, .lucide),
.erp-icon-btn:not(:disabled):active :is(i, svg, .lucide),
.erp-page-toolbar__btn:not(:disabled):active :is(i, svg, .lucide) {
  color: var(--erp-action-active-text);
}

.app-sidebar a.active {
  border-color: transparent;
  background: var(--erp-action-hover-bg);
  color: var(--erp-action-hover-text);
  box-shadow: none;
  font-weight: 800;
}

.app-sidebar :is(a, .sidebar-action-button):is(:hover, :focus-visible) {
  background: var(--erp-action-hover-bg);
  color: var(--erp-action-hover-text);
}

.app-sidebar :is(a, .sidebar-action-button):hover .sidebar-item-icon,
.app-sidebar :is(a, .sidebar-action-button):focus-visible .sidebar-item-icon {
  color: var(--erp-action-accent);
}

.app-sidebar a.active .sidebar-item-icon,
.app-sidebar a.active .sidebar-item-label {
  color: var(--erp-action-hover-text);
}

.page-toolbar .erp-page-toolbar__btn:is(:hover, :focus-visible) {
  background: var(--erp-action-hover-bg);
  color: var(--erp-action-hover-text);
}

.page-toolbar .erp-page-toolbar__btn:is(:hover, :focus-visible) :is(i, svg, .lucide) {
  color: var(--erp-action-accent);
}

.page-toolbar .erp-page-toolbar__btn:is(:active, .is-active, [aria-pressed="true"]) {
  background: var(--erp-action-active-bg);
  color: var(--erp-action-active-text);
}

.page-toolbar .erp-page-toolbar__btn:is(:active, .is-active, [aria-pressed="true"]) :is(i, svg, .lucide) {
  color: var(--erp-action-active-text);
}

/* Надсилання залишається круглою primary-дією без важких ефектів. */
.messages-compose__send.erp-btn,
.erp-comment-panel__send-btn,
.erp-lightbox-comments__send,
.erp-home-feed-composer__send {
  border: 0;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-action-active-bg);
  color: var(--erp-action-active-text);
  box-shadow: none;
  transition: background-color 120ms ease;
}

.messages-compose__send.erp-btn:is(:hover, :focus-visible),
.erp-comment-panel__send-btn:is(:hover, :focus-visible),
.erp-lightbox-comments__send:is(:hover, :focus-visible),
.erp-home-feed-composer__send:is(:hover, :focus-visible) {
  background: var(--erp-action-accent-strong);
  color: var(--erp-action-active-text);
  box-shadow: none;
  filter: none;
  transform: none;
  outline: none;
}

:is(
  .messages-compose__send,
  .erp-comment-panel__send-btn,
  .erp-lightbox-comments__send,
  .erp-home-feed-composer__send
) :is(i, svg, .lucide) {
  color: var(--erp-action-active-text);
}

/* == Composer action reveal == */
[data-erp-composer-actions].is-composer-actions-ready {
  --erp-composer-action-size: 44px;
}

.erp-composer-actions__toggle {
  position: relative;
  z-index: 2;
  width: calc(var(--erp-composer-action-size) - 8px);
  min-width: calc(var(--erp-composer-action-size) - 8px);
  height: calc(var(--erp-composer-action-size) - 8px);
  min-height: calc(var(--erp-composer-action-size) - 8px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: start;
  justify-self: center;
  margin: 4px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: color-mix(in srgb, var(--erp-ui-primary) 10%, var(--erp-ui-surface));
  color: var(--erp-ui-muted);
  cursor: pointer;
  line-height: 1;
  transition: background-color 160ms ease, color 160ms ease;
}

/* The feed composer uses one neutral circular action language in both states. */
.erp-home-feed-composer__bar :is(
  .erp-composer-actions__toggle,
  .erp-home-feed-composer__emoji > .erp-home-feed-composer__icon-btn,
  .erp-home-feed-composer__visibility,
  .erp-home-feed-composer__attachment-actions .erp-home-feed-composer__icon-btn,
  .erp-home-feed-composer__send
) {
  width: calc(var(--erp-composer-action-size) - 8px);
  min-width: calc(var(--erp-composer-action-size) - 8px);
  height: calc(var(--erp-composer-action-size) - 8px);
  min-height: calc(var(--erp-composer-action-size) - 8px);
  align-self: start;
  justify-self: center;
  margin: 4px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: color-mix(in srgb, var(--erp-ui-primary) 10%, var(--erp-ui-surface));
  color: var(--erp-ui-muted);
  box-shadow: none;
}

.erp-home-feed-composer__bar :is(
  .erp-home-feed-composer__emoji > .erp-home-feed-composer__icon-btn,
  .erp-home-feed-composer__visibility,
  .erp-home-feed-composer__attachment-actions .erp-home-feed-composer__icon-btn,
  .erp-home-feed-composer__send
):not(:disabled):is(:hover, :focus-visible, .is-active),
.erp-home-feed-composer__bar .erp-home-feed-composer__visibility:is(:hover, :focus-within) {
  background: color-mix(in srgb, var(--erp-ui-primary) 18%, var(--erp-ui-surface));
  color: var(--erp-ui-text);
  outline: none;
}

.erp-home-feed-composer__bar .erp-home-feed-composer__attachment-actions .erp-home-feed-composer__icon-btn:disabled {
  opacity: .42;
  cursor: not-allowed;
}

.erp-home-feed-composer__bar .erp-home-feed-composer__emoji,
.erp-home-feed-composer__bar .erp-home-feed-composer__photo {
  border: 0;
}

.erp-home-feed-composer__bar .erp-home-feed-composer__photo {
  grid-column: auto;
  grid-row: auto;
}

.erp-home-feed-composer__bar .erp-home-feed-composer__visibility .erp-select-control__custom,
.erp-home-feed-composer__bar .erp-home-feed-composer__visibility .erp-home-feed-composer__visibility-trigger {
  width: 100%;
  height: 100%;
  min-height: 0;
  border-radius: 50%;
  background: transparent;
}

.erp-home-feed-composer__bar .erp-home-feed-composer__visibility .erp-select-control__custom {
  overflow: hidden;
}

.erp-home-feed-composer__bar .erp-home-feed-composer__visibility .erp-home-feed-composer__visibility-trigger:is(:hover, :focus-visible) {
  background: transparent;
}

.erp-home-feed-composer__bar .erp-home-feed-composer__send :is(i, svg, .lucide) {
  color: currentColor;
}

.erp-composer-actions__toggle:hover,
.erp-composer-actions__toggle:focus-visible,
[data-erp-composer-actions].is-actions-open .erp-composer-actions__toggle {
  background: color-mix(in srgb, var(--erp-ui-primary) 18%, var(--erp-ui-surface));
  color: var(--erp-ui-text);
  outline: none;
}

.erp-composer-actions__toggle :is(i, svg, .lucide) {
  width: 18px !important;
  height: 18px !important;
  transform: rotate(0deg);
  transition: transform 560ms cubic-bezier(.22, 1, .36, 1);
}

[data-erp-composer-actions].is-actions-open .erp-composer-actions__toggle :is(i, svg, .lucide) {
  transform: rotate(45deg);
}

[data-erp-composer-actions].is-composer-actions-ready [data-erp-composer-actions-field],
[data-erp-composer-actions].is-composer-actions-ready [data-erp-composer-actions-primary],
[data-erp-composer-actions].is-composer-actions-ready [data-erp-composer-actions-tool] {
  transition:
    opacity 240ms ease,
    transform 560ms cubic-bezier(.22, 1, .36, 1),
    visibility 0s linear 560ms;
  will-change: opacity, transform;
}

[data-erp-composer-actions].is-composer-actions-ready [data-erp-composer-actions-field],
[data-erp-composer-actions].is-composer-actions-ready [data-erp-composer-actions-primary] {
  z-index: 1;
  opacity: 1;
  visibility: visible;
  transform: rotate(0deg) translateY(0) scale(1);
  transform-origin: left center;
  transition-delay: 80ms, 0ms, 0ms;
}

[data-erp-composer-actions].is-composer-actions-ready [data-erp-composer-actions-tool] {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: rotate(70deg) translateY(10px) scale(.86);
  transform-origin: left center;
}

[data-erp-composer-actions].is-composer-actions-ready.is-actions-open [data-erp-composer-actions-field],
[data-erp-composer-actions].is-composer-actions-ready.is-actions-open [data-erp-composer-actions-primary] {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: rotate(-10deg) translateY(-14px) scale(.96);
  transition-delay: 0ms, 0ms, 240ms;
}

[data-erp-composer-actions].is-composer-actions-ready.is-actions-open [data-erp-composer-actions-tool] {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: rotate(0deg) translateY(0) scale(1);
  transition-delay: 80ms, 0ms, 0ms;
}

.erp-home-feed-composer__bar.is-composer-actions-ready .erp-composer-actions__toggle {
  grid-column: 1;
  grid-row: 1;
}

.erp-home-feed-composer__bar.is-composer-actions-ready .erp-home-feed-composer__field {
  grid-column: 4;
}

.erp-home-feed-composer__bar.is-composer-actions-ready .erp-home-feed-composer__emoji {
  grid-column: 2;
}

.erp-home-feed-composer__bar.is-composer-actions-ready .erp-home-feed-composer__visibility {
  grid-column: 3;
}

.erp-home-feed-composer__bar.is-composer-actions-ready .erp-home-feed-composer__photo {
  grid-column: auto;
}

.erp-home-feed-composer__bar.is-composer-actions-ready .erp-home-feed-composer__attachment-actions {
  grid-column: 2 / -1;
  grid-row: 1;
}

.erp-home-feed-composer__bar.is-composer-actions-ready.is-actions-open :is(
  [data-erp-composer-actions-field],
  [data-erp-composer-actions-primary]
) {
  display: none;
}

.messages-compose__bar.is-composer-actions-ready {
  --erp-composer-action-size: 48px;
}

.messages-compose__bar.is-composer-actions-ready .erp-composer-actions__toggle {
  grid-column: 1;
  grid-row: 1;
}

.messages-compose__bar.is-composer-actions-ready .messages-emoji,
.messages-compose__bar.is-composer-actions-ready .messages-compose__field {
  grid-column: 2;
  grid-row: 1;
}

/* Messages use the same compact composer language as posts, without visibility. */
.messages-compose__bar.is-composer-actions-ready {
  --erp-composer-action-size: 44px;
  min-height: 44px;
  grid-template-columns: 44px 44px minmax(0, 1fr) 44px;
  align-items: start;
}

.messages-compose__bar.is-composer-actions-ready .messages-emoji {
  grid-column: 2;
  grid-row: 1;
}

.messages-compose__bar.is-composer-actions-ready .messages-emoji[data-erp-composer-actions-primary],
.messages-compose__bar.is-composer-actions-ready.is-actions-open .messages-emoji[data-erp-composer-actions-primary] {
  transform: none;
  will-change: auto;
}

.messages-compose__bar.is-composer-actions-ready .messages-compose__field {
  grid-column: 3;
  grid-row: 1;
}

.messages-compose__bar.is-composer-actions-ready .messages-compose__send {
  grid-column: 4;
  grid-row: 1;
}

.messages-compose__bar.is-composer-actions-ready .erp-composer-attachment-actions {
  grid-column: 2 / -1;
  grid-row: 1;
}

.messages-compose__bar.is-composer-actions-ready.is-actions-open :is(
  [data-erp-composer-actions-field],
  [data-erp-composer-actions-primary]
) {
  display: none;
}

.messages-compose__bar :is(
  .messages-compose__icon-btn,
  .messages-compose__send,
  .erp-composer-attachment-actions .erp-home-feed-composer__icon-btn
) {
  width: calc(var(--erp-composer-action-size) - 8px);
  min-width: calc(var(--erp-composer-action-size) - 8px);
  height: calc(var(--erp-composer-action-size) - 8px);
  min-height: calc(var(--erp-composer-action-size) - 8px);
  align-self: start;
  justify-self: center;
  margin: 4px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: color-mix(in srgb, var(--erp-ui-primary) 10%, var(--erp-ui-surface));
  color: var(--erp-ui-muted);
  box-shadow: none;
}

.messages-compose__bar :is(
  .messages-compose__icon-btn,
  .messages-compose__send,
  .erp-composer-attachment-actions .erp-home-feed-composer__icon-btn
):not(:disabled):is(:hover, :focus-visible, .is-active) {
  background: color-mix(in srgb, var(--erp-ui-primary) 18%, var(--erp-ui-surface));
  color: var(--erp-ui-text);
  outline: none;
}

.messages-compose__bar .erp-composer-attachment-actions .erp-home-feed-composer__icon-btn:disabled {
  opacity: .42;
  cursor: not-allowed;
}

.messages-compose__bar .messages-compose__send :is(i, svg, .lucide) {
  color: currentColor;
}

.messages-compose__bar .messages-compose__field textarea {
  min-height: 44px;
  padding: 12px 10px 9px;
}

@media (prefers-reduced-motion: reduce) {
  .erp-composer-actions__toggle :is(i, svg, .lucide),
  [data-erp-composer-actions].is-composer-actions-ready [data-erp-composer-actions-field],
  [data-erp-composer-actions].is-composer-actions-ready [data-erp-composer-actions-primary],
  [data-erp-composer-actions].is-composer-actions-ready [data-erp-composer-actions-tool] {
    transition-duration: 1ms;
    transition-delay: 0ms;
  }
}

@media (max-width: 640px) {
  .erp-home-feed-composer__avatar {
    display: none;
  }

  .erp-home-feed-composer__bar {
    grid-template-columns: 44px 44px 44px minmax(0, 1fr) 44px;
    grid-template-rows: 44px auto;
  }

  .erp-home-feed-composer__bar.is-composer-actions-ready .erp-composer-actions__toggle {
    grid-column: 1;
    grid-row: 1;
  }

  .erp-home-feed-composer__bar.is-composer-actions-ready .erp-home-feed-composer__emoji {
    grid-column: 2;
    grid-row: 1;
  }

  .erp-home-feed-composer__bar.is-composer-actions-ready .erp-home-feed-composer__visibility {
    grid-column: 3;
    grid-row: 1;
  }

  .erp-home-feed-composer__bar.is-composer-actions-ready .erp-home-feed-composer__field {
    grid-column: 4;
    grid-row: 1;
  }

  .erp-home-feed-composer__bar .erp-home-feed-composer__send {
    grid-column: 5;
    grid-row: 1;
  }

  .erp-home-feed-composer__bar.is-composer-actions-ready .erp-home-feed-composer__attachment-actions {
    grid-column: 2 / -1;
    grid-row: 1;
  }

  .erp-home-feed-composer__photo-preview,
  .erp-home-feed-composer__embedded-products {
    grid-column: 1 / -1;
    grid-row: 2;
  }
}

/* Розкриття інформації є помітною primary-дією, але без градієнта й тіні. */
.erp-home-profile-card__more,
.erp-home-profile-card__collapse,
.erp-home-profile-card__counter-close,
.erp-home-purchase-more {
  border-color: var(--erp-action-accent);
  background: var(--erp-action-active-bg);
  color: var(--erp-action-active-text);
  box-shadow: none;
  transition: background-color 120ms ease;
}

.erp-home-profile-card__more:is(:hover, :focus-visible),
.erp-home-profile-card__collapse:is(:hover, :focus-visible),
.erp-home-profile-card__counter-close:is(:hover, :focus-visible),
.erp-home-purchase-more:is(:hover, :focus-visible) {
  border-color: var(--erp-action-accent-strong);
  background: var(--erp-action-accent-strong);
  color: var(--erp-action-active-text);
  box-shadow: none;
  filter: none;
  transform: none;
  outline: none;
}

.erp-home-profile-card__more--danger,
.erp-home-profile-card__more--danger:is(:hover, :focus-visible) {
  border-color: #dc2626;
  background: #dc2626;
  color: #fff;
}

:is(
  .erp-home-profile-card__more,
  .erp-home-profile-card__collapse,
  .erp-home-profile-card__counter-close,
  .erp-home-purchase-more
) :is(i, svg, .lucide, span, strong) {
  color: var(--erp-action-active-text);
}

.erp-home-company-profile-panel.is-info-expanded
  .erp-home-company-profile-panel__actions
  > .erp-home-profile-card__more {
  display: grid;
}

/* Загальна стрічка: топові дописи та стандартна персональна стрічка. */
body:not(.erp-embedded-page).erp-public-feed-body #mainContent {
  height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h));
  min-height: 0;
  overflow: hidden;
  padding: calc(var(--erp-page-toolbar-h) + var(--erp-ui-space-3)) 16px var(--erp-ui-space-3);
}

body:not(.erp-embedded-page).erp-public-feed-body #mainContent > .erp-public-feed-page {
  display: grid;
  grid-template-rows: minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.erp-public-feed-page > .erp-social-feed--publications {
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.erp-public-feed-layout {
  width: min(100%, 1120px);
  display: grid;
  grid-template-rows: auto auto;
  align-content: start;
  gap: var(--erp-ui-space-5);
  height: 100%;
  min-height: 0;
  margin-inline: auto;
  padding-right: 2px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}

.erp-public-feed-top,
.erp-public-feed-stream {
  display: grid;
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-public-feed-stream {
  grid-template-rows: auto auto;
  min-height: 0;
  overflow: visible;
}

.erp-public-feed-stream__scroll.erp-home-workspace-block--feed {
  grid-area: auto;
  height: auto;
  max-height: none;
  min-height: 0;
  padding-right: 0;
  overflow: visible;
  overscroll-behavior: auto;
}

.erp-public-feed-section-title {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: var(--erp-ui-space-2);
  min-width: 0;
}

.erp-section-heading__icon,
.erp-public-feed-section-title__icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: var(--erp-ui-radius);
  background: var(--erp-ui-surface-muted);
  color: var(--erp-ui-muted);
}

.erp-section-heading__icon.is-top,
.erp-public-feed-section-title__icon.is-top {
  background: color-mix(in srgb, #f59e0b 12%, var(--erp-ui-surface));
  color: #b45309;
}

.erp-section-heading__icon :is(svg, .lucide),
.erp-public-feed-section-title__icon :is(svg, .lucide) {
  width: 17px !important;
  height: 17px !important;
}

.erp-public-feed-section-title h2,
.erp-public-feed-section-title p {
  margin: 0;
}

.erp-public-feed-section-title h2 {
  color: var(--erp-ui-text);
  font-size: 15px;
  line-height: 1.25;
  font-weight: 950;
}

.erp-public-feed-section-title p {
  margin-top: 2px;
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.35;
  font-weight: 750;
}

.erp-public-feed-top__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--erp-ui-space-3);
  min-width: 0;
}

.erp-public-feed-top-card {
  display: grid;
  grid-template-rows: auto minmax(64px, 1fr) auto;
  gap: var(--erp-ui-space-3);
  min-width: 0;
  padding: var(--erp-ui-space-3);
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-lg);
  background: var(--erp-ui-surface);
  box-shadow: 0 6px 18px rgba(15, 23, 42, .05);
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.erp-public-feed-top-card:is(:hover, :focus-within) {
  border-color: color-mix(in srgb, var(--erp-action-accent) 28%, var(--erp-ui-border));
  box-shadow: 0 10px 24px rgba(15, 23, 42, .08);
  transform: translateY(-1px);
}

.erp-public-feed-top-card__head {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) 26px;
  align-items: center;
  gap: 9px;
  min-width: 0;
}

.erp-public-feed-top-card__avatar {
  width: 36px;
  height: 36px;
  font-size: 11px;
}

.erp-public-feed-top-card__author {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.erp-public-feed-top-card__author strong,
.erp-public-feed-top-card__author time {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-public-feed-top-card__author strong {
  color: var(--erp-ui-text);
  font-size: 12px;
  line-height: 1.25;
  font-weight: 950;
}

.erp-public-feed-top-card__author time {
  color: var(--erp-ui-muted);
  font-size: 10px;
  line-height: 1.2;
  font-weight: 800;
}

.erp-public-feed-top-card__rank {
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: color-mix(in srgb, #f59e0b 12%, var(--erp-ui-surface));
  color: #b45309;
  font-size: 11px;
  font-weight: 950;
}

.erp-public-feed-top-card__content {
  min-width: 0;
}

.erp-public-feed-top-card__content p {
  margin: 0;
  color: #334155;
  font-size: 12px;
  line-height: 1.48;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.erp-public-feed-top-card__actions {
  display: flex;
  align-items: center;
  gap: 4px;
  padding-top: var(--erp-ui-space-2);
  border-top: 1px solid var(--erp-ui-border-soft);
}

.erp-public-feed-top-card__actions .erp-social-post__icon-action {
  min-width: 36px;
  min-height: 30px;
  padding-inline: 7px;
}

.erp-public-feed-stream {
  padding-top: var(--erp-ui-space-4);
  border-top: 1px solid var(--erp-ui-border-soft);
}

@media (max-width: 980px) {
  .erp-public-feed-top__grid {
    display: flex;
    gap: var(--erp-ui-space-3);
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 2px;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
  }

  .erp-public-feed-top-card {
    flex: 0 0 min(340px, 82vw);
    scroll-snap-align: start;
  }
}

@media (max-width: 640px) {
  .erp-public-feed-layout {
    gap: var(--erp-ui-space-4);
  }

  .erp-public-feed-top__grid {
    display: flex;
  }

  .erp-public-feed-section-title {
    grid-template-columns: 30px minmax(0, 1fr);
  }

  .erp-public-feed-section-title__icon {
    width: 30px;
    height: 30px;
  }

}

/* ========================================================================== 
   Orders: invoice-list master-detail pattern
   ========================================================================== */

.page-orders {
  --erp-order-block-gap: 12px;
  gap: 0;
}

.erp-ui-orders-mobile,
.erp-ui-orders-mobile-state,
.erp-ui-orders-mobile-empty,
.erp-ui-orders-mobile-list,
.erp-ui-order-row {
  display: none;
}

.erp-order-model-shell {
  flex: 1 1 0;
  height: auto;
  min-height: 0;
  margin-bottom: var(--erp-order-block-gap);
  grid-template-columns: minmax(280px, 304px) minmax(0, 1fr);
}

.erp-order-workflow-switcher {
  flex: 0 0 auto;
  min-width: 0;
  margin: 0 0 8px;
}

.erp-order-workflow-switcher__control {
  width: 100%;
  max-width: none;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
}

.erp-order-workflow-switcher__control::-webkit-scrollbar {
  display: none;
}

.erp-order-workflow-switcher__control .erp-segmented__btn {
  flex: 1 0 auto;
  min-width: 92px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--erp-button-group-text);
  text-decoration: none;
  white-space: nowrap;
}

.erp-order-workflow-switcher__control .erp-segmented__btn.is-active {
  color: var(--erp-button-group-active-text);
}

.erp-order-model-rail {
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.erp-order-model-card {
  min-height: 66px;
  grid-template-columns: minmax(0, 1fr) 16px;
  padding: 10px 12px 10px 14px;
}

.erp-order-model-card .banking-wallet-account__body {
  gap: 5px;
}

.erp-order-model-card .banking-wallet-account__state {
  flex: 0 0 auto;
  max-width: 112px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-order-model-card__recipient {
  min-width: 0;
  font-weight: 850;
}

.erp-order-model-card__ttn {
  color: var(--erp-ui-muted);
  font-variant-numeric: tabular-nums;
  letter-spacing: .01em;
}

.erp-order-model-card.has-state-overlay {
  isolation: isolate;
}

.erp-order-model-card.has-state-overlay > .banking-wallet-account__body,
.erp-order-model-card.has-state-overlay > .banking-wallet-account__chevron {
  opacity: .52;
}

.erp-order-model-card__overlay {
  position: absolute;
  z-index: 2;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 8px 20px;
  background: color-mix(in srgb, var(--erp-ui-surface) 42%, transparent);
  text-align: center;
  pointer-events: none;
}

.erp-order-model-card__overlay strong {
  max-width: 100%;
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.25;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.erp-order-model-card__overlay.is-active strong {
  color: var(--erp-ui-success);
}

.erp-order-model-card__overlay.is-warning strong {
  color: var(--erp-ui-warning);
}

.erp-order-model-rail__footer {
  min-width: 0;
  display: grid;
  padding: 8px 12px;
  border-top: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.erp-order-model-rail__footer > .erp-pagination {
  margin: 0;
}

.erp-order-model-detail {
  position: relative;
  display: block;
}

.erp-order-model-panel {
  height: 100%;
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
  background: var(--erp-ui-surface);
}

.erp-order-model-panel--with-summary {
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.erp-order-model-rail > .banking-wallet-rail__head,
.erp-order-model-detail__head {
  min-height: 66px;
  padding: 12px 14px;
}

.erp-order-model-detail__identity {
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
}

.erp-order-model-detail__payment {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-modal.erp-order-payment-link-dialog {
  width: min(520px, calc(100vw - 32px));
}

.erp-order-payment-link-dialog__content {
  display: grid;
  gap: 12px;
}

.erp-order-payment-link-dialog__status {
  margin: 0;
  color: var(--erp-ui-muted);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 750;
}

.erp-order-payment-link-dialog .erp-field {
  min-width: 0;
}

.erp-order-payment-link-dialog .erp-field-control {
  min-width: 0;
}

.erp-order-payment-link-dialog .erp-field-control input {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-order-model-detail__actions {
  flex: 0 0 auto;
  justify-content: flex-end;
}

.erp-order-model-panel__body {
  min-width: 0;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  padding: 14px 16px 20px;
}

.erp-order-model-preview__recipient {
  min-width: 0;
  margin: 0 0 var(--erp-block-gap);
  padding: 10px 14px;
  background: var(--erp-ui-surface);
}

.erp-order-recipient-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-width: 0;
}

.erp-order-recipient-bar__identity {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.erp-order-recipient-bar__body {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.erp-order-recipient-bar__body strong,
.erp-order-recipient-bar__body span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-order-recipient-bar__body strong {
  color: var(--erp-ui-text);
  font-size: 13px;
  line-height: 1.2;
  font-weight: 850;
}

.erp-order-recipient-bar__body span {
  color: var(--erp-ui-muted);
  font-size: 11px;
  line-height: 1.25;
  font-weight: 700;
}

.erp-order-recipient-bar__actions {
  flex: 0 0 auto;
}

.erp-order-model-preview__summary {
  min-width: 0;
  padding: 0;
  border-top: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.erp-order-model-preview__summary-heading {
  display: block;
  min-width: 0;
  padding: 8px 16px;
  background: color-mix(in srgb, var(--erp-ui-warning, #f59e0b) 22%, var(--erp-ui-surface, #fff));
  color: var(--erp-ui-text);
  font-size: 14px;
  line-height: 1.25;
  font-weight: 850;
  text-align: center;
}

.erp-order-summary--footer {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 12px 16px;
}

.erp-order-summary__quick-list {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0;
  margin: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: thin;
}

.erp-order-summary__quick-line {
  flex: 0 0 auto;
  display: grid;
  gap: 2px;
  min-width: 104px;
  margin: 0;
  padding: 0 14px;
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-order-summary__quick-line:first-child {
  padding-left: 0;
  border-left: 0;
}

.erp-order-summary__quick-line dt,
.erp-order-summary__quick-line dd {
  margin: 0;
  white-space: nowrap;
}

.erp-order-summary__quick-line dt {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 750;
}

.erp-order-summary__quick-line dd {
  color: var(--erp-ui-text);
  font-size: 13px;
  font-weight: 850;
}

.erp-order-summary--footer .erp-order-summary__total {
  min-height: 0;
  display: grid;
  justify-items: end;
  gap: 2px;
  margin: 0;
  padding: 0 0 0 16px;
  border-top: 0;
  border-left: 1px solid var(--erp-ui-border-soft);
}

.erp-order-summary--footer .erp-order-summary__total span {
  color: var(--erp-ui-muted);
  font-size: 11px;
  font-weight: 750;
}

.erp-order-summary--footer .erp-order-summary__total strong {
  font-size: 18px;
}

@media (min-width: 801px) {
  body:not(.erp-embedded-page) #mainContent:has(> .page-orders[data-orders-page]) {
    height: calc(100vh - var(--erp-header-h) - var(--erp-footer-h));
    min-height: 0;
    overflow: hidden;
    padding-bottom: 0;
  }

  body:not(.erp-embedded-page) #mainContent > .page-orders[data-orders-page] {
    width: 100%;
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }
}

@media (max-width: 800px) {
  .page-orders {
    gap: 0;
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }

  .page-orders .erp-ui-orders-desktop-only {
    display: none;
  }

  .erp-ui-orders-mobile {
    display: block;
    min-width: 0;
    margin-inline: -16px;
    background: var(--erp-ui-surface);
  }

  .erp-ui-orders-mobile__toolbar {
    position: sticky;
    top: calc(var(--erp-header-h, 0px) + var(--erp-page-toolbar-h, 54px));
    z-index: 8;
    display: flex;
    align-items: center;
    gap: var(--erp-ui-space-2);
    min-width: 0;
    min-height: 60px;
    padding: 8px 12px 8px 16px;
    border-bottom: 1px solid var(--erp-ui-border-soft);
    background: var(--erp-ui-bg-soft);
  }

  .erp-ui-orders-tabs {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    gap: 4px;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .erp-ui-orders-tabs::-webkit-scrollbar {
    display: none;
  }

  .erp-ui-orders-tabs__item {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 12px;
    border-radius: var(--erp-ui-radius);
    color: var(--erp-ui-muted);
    font-size: 15px;
    font-weight: 750;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    transition: color var(--erp-ui-transition), background-color var(--erp-ui-transition);
  }

  .erp-ui-orders-tabs__item:hover,
  .erp-ui-orders-tabs__item:focus-visible {
    color: var(--erp-ui-text);
    background: color-mix(in srgb, var(--erp-ui-surface) 62%, transparent);
    outline: none;
  }

  .erp-ui-orders-tabs__item--active,
  .erp-ui-orders-tabs__item--active:hover,
  .erp-ui-orders-tabs__item--active:focus-visible {
    color: var(--erp-ui-text);
    background: var(--erp-ui-surface);
    box-shadow: var(--erp-ui-shadow-sm);
  }

  .erp-ui-orders-tabs__item:focus-visible,
  .erp-ui-orders-mobile__filter:focus-visible,
  .erp-ui-orders-cod-summary:focus-visible,
  .erp-ui-order-row:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--erp-ui-primary) 68%, transparent);
    outline-offset: -2px;
  }

  .erp-ui-orders-mobile__filter {
    position: relative;
    display: inline-flex;
    flex: 0 0 44px;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    min-height: 44px;
    padding: 0;
    border: 0;
    border-radius: var(--erp-ui-radius);
    background: transparent;
    color: var(--erp-ui-muted);
    cursor: pointer;
  }

  .erp-ui-orders-mobile__filter:hover,
  .erp-ui-orders-mobile__filter:focus-visible,
  .erp-ui-orders-mobile__filter--active {
    background: var(--erp-ui-surface);
    color: var(--erp-ui-text);
  }

  .erp-ui-orders-mobile__filter svg,
  .erp-ui-orders-mobile__filter .lucide {
    width: 22px;
    height: 22px;
  }

  .erp-ui-orders-mobile__filter-count {
    position: absolute;
    top: 4px;
    right: 3px;
    display: inline-grid;
    place-items: center;
    min-width: 17px;
    height: 17px;
    padding-inline: 4px;
    border: 2px solid var(--erp-ui-bg-soft);
    border-radius: var(--erp-ui-radius-pill);
    background: var(--erp-ui-primary);
    color: #fff;
    font-size: 9px;
    font-weight: 900;
    line-height: 1;
  }

  .erp-ui-orders-cod-summary {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) auto 24px;
    align-items: center;
    gap: 12px;
    min-height: 68px;
    padding: 9px 14px 9px 16px;
    border-bottom: 1px solid var(--erp-ui-border-soft);
    background: var(--erp-ui-surface);
    color: var(--erp-ui-text);
    text-decoration: none;
  }

  .erp-ui-orders-cod-summary:hover,
  .erp-ui-orders-cod-summary:focus-visible,
  .erp-ui-orders-cod-summary--active {
    background: color-mix(in srgb, var(--erp-ui-primary) 5%, var(--erp-ui-surface));
  }

  .erp-ui-orders-cod-summary__icon {
    display: inline-grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: var(--erp-ui-radius-pill);
    background: var(--erp-ui-surface-soft);
    color: var(--erp-ui-muted);
  }

  .erp-ui-orders-cod-summary__icon svg,
  .erp-ui-orders-cod-summary__icon .lucide {
    width: 22px;
    height: 22px;
  }

  .erp-ui-orders-cod-summary__label {
    min-width: 0;
    overflow: hidden;
    font-size: 16px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .erp-ui-orders-cod-summary__count {
    color: var(--erp-ui-muted);
    font-size: 17px;
    font-weight: 750;
  }

  .erp-ui-orders-cod-summary__arrow {
    display: inline-grid;
    place-items: center;
    color: var(--erp-ui-muted-soft);
  }

  .erp-ui-orders-cod-summary__arrow svg,
  .erp-ui-orders-cod-summary__arrow .lucide {
    width: 22px;
    height: 22px;
  }

  .erp-ui-orders-mobile-list {
    display: block;
    margin-inline: -16px;
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }

}

.erp-ui-order-row {
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 12px;
  width: 100%;
  min-width: 0;
  padding: 18px 16px 16px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  text-decoration: none;
  transition: background-color var(--erp-ui-transition);
}

.erp-ui-order-row:hover,
.erp-ui-order-row:focus-visible {
  background: var(--erp-ui-surface-muted);
}

.erp-ui-order-row__identity {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
  }

  .erp-ui-order-row__avatar {
    display: inline-grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: var(--erp-ui-radius-pill);
    background: color-mix(in srgb, var(--erp-ui-info) 24%, #fff);
    color: #fff;
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .01em;
  }

  .erp-ui-order-row__number {
    display: block;
    max-width: 56px;
    margin-top: 9px;
    overflow: hidden;
    color: var(--erp-ui-text-soft);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.15;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .erp-ui-order-row__content {
    display: flex;
    flex-direction: column;
    min-width: 0;
  }

  .erp-ui-order-row__status {
    display: -webkit-box;
    min-width: 0;
    overflow: hidden;
    color: #111827;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.24;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .erp-ui-order-row--danger .erp-ui-order-row__status {
    color: var(--erp-ui-danger);
  }

  .erp-ui-order-row__recipient,
  .erp-ui-order-row__source {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .erp-ui-order-row__recipient {
    margin-top: 5px;
    color: var(--erp-ui-text-soft);
    font-size: 15px;
    font-weight: 650;
    line-height: 1.25;
  }

  .erp-ui-order-row__source {
    margin-top: 3px;
    color: var(--erp-ui-muted);
    font-size: 14px;
    font-weight: 650;
    line-height: 1.25;
  }

  .erp-ui-order-progress {
    --erp-ui-order-progress-color: var(--erp-ui-success);
    display: block;
    width: 100%;
    margin-top: 17px;
  }

  .erp-ui-order-progress--danger {
    --erp-ui-order-progress-color: var(--erp-ui-danger);
  }

  .erp-ui-order-progress__bar {
    position: relative;
    display: block;
    width: 100%;
    height: 3px;
    border-radius: var(--erp-ui-radius-pill);
    background: color-mix(in srgb, var(--erp-ui-muted-soft) 28%, transparent);
  }

  .erp-ui-order-progress__value {
    position: relative;
    display: block;
    height: 3px;
    border-radius: var(--erp-ui-radius-pill);
    background: var(--erp-ui-order-progress-color);
  }

  .erp-ui-order-progress__value--0 { width: 0; }
  .erp-ui-order-progress__value--5 { width: 5%; }
  .erp-ui-order-progress__value--10 { width: 10%; }
  .erp-ui-order-progress__value--15 { width: 15%; }
  .erp-ui-order-progress__value--20 { width: 20%; }
  .erp-ui-order-progress__value--25 { width: 25%; }
  .erp-ui-order-progress__value--30 { width: 30%; }
  .erp-ui-order-progress__value--35 { width: 35%; }
  .erp-ui-order-progress__value--40 { width: 40%; }
  .erp-ui-order-progress__value--45 { width: 45%; }
  .erp-ui-order-progress__value--50 { width: 50%; }
  .erp-ui-order-progress__value--55 { width: 55%; }
  .erp-ui-order-progress__value--60 { width: 60%; }
  .erp-ui-order-progress__value--65 { width: 65%; }
  .erp-ui-order-progress__value--70 { width: 70%; }
  .erp-ui-order-progress__value--75 { width: 75%; }
  .erp-ui-order-progress__value--80 { width: 80%; }
  .erp-ui-order-progress__value--85 { width: 85%; }
  .erp-ui-order-progress__value--90 { width: 90%; }
  .erp-ui-order-progress__value--95 { width: 95%; }
  .erp-ui-order-progress__value--100 { width: 100%; }

  .erp-ui-order-progress__dot {
    position: absolute;
    top: 50%;
    right: -4px;
    width: 9px;
    height: 9px;
    border: 2px solid var(--erp-ui-surface);
    border-radius: var(--erp-ui-radius-pill);
    background: var(--erp-ui-order-progress-color);
    transform: translateY(-50%);
  }

  .erp-ui-order-row__route {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 12px;
    min-width: 0;
    margin-top: 9px;
  }

  .erp-ui-order-row__route-point {
    min-width: 0;
    overflow: hidden;
    color: var(--erp-ui-muted);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .erp-ui-order-row__route-point--destination {
    text-align: right;
  }

@media (max-width: 800px) {
  .erp-ui-order-row {
    display: grid;
  }

  .erp-ui-orders-mobile-empty,
  .erp-ui-orders-mobile-state {
    align-content: center;
    justify-items: center;
    gap: 10px;
    min-height: min(420px, calc(100dvh - var(--erp-page-toolbar-h, 54px) - var(--erp-footer-h, 54px) - 148px));
    padding: 32px 18px;
    background: var(--erp-ui-surface);
    text-align: center;
  }

  .erp-ui-orders-mobile-empty {
    display: grid;
    margin-inline: -16px;
  }

  .erp-ui-orders-mobile-state {
    display: grid;
  }

  .erp-ui-orders-mobile-empty__icon {
    display: inline-grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: var(--erp-ui-radius-pill);
    background: var(--erp-ui-surface-soft);
    color: var(--erp-ui-muted);
  }

  .erp-ui-orders-mobile-empty__icon svg,
  .erp-ui-orders-mobile-empty__icon .lucide {
    width: 22px;
    height: 22px;
  }

  .erp-ui-orders-mobile-empty strong {
    color: var(--erp-ui-text);
    font-size: 17px;
  }

  .erp-ui-orders-mobile-empty p {
    max-width: 290px;
    margin: 0;
    color: var(--erp-ui-muted);
    font-size: 14px;
    line-height: 1.45;
  }

  .erp-ui-orders-mobile-state .erp-alert {
    width: min(100%, 420px);
    text-align: left;
  }

  .erp-ui-orders-mobile__skeleton {
    display: none;
    background: var(--erp-ui-surface);
  }

  .page-orders.erp-ui-orders-mobile-loading .erp-ui-orders-mobile-list,
  .page-orders.erp-ui-orders-mobile-loading .erp-ui-orders-mobile-empty,
  .page-orders.erp-ui-orders-mobile-loading .erp-ui-orders-mobile-state {
    display: none;
  }

  .page-orders.erp-ui-orders-mobile-loading .erp-ui-orders-mobile__skeleton {
    display: block;
  }

  .erp-ui-order-skeleton {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 12px;
    min-height: 180px;
    padding: 18px 16px;
    border-bottom: 1px solid var(--erp-ui-border-soft);
  }

  .erp-ui-order-skeleton__avatar,
  .erp-ui-order-skeleton__line {
    background: linear-gradient(90deg, var(--erp-ui-surface-soft) 25%, var(--erp-ui-bg-soft) 50%, var(--erp-ui-surface-soft) 75%);
    background-size: 200% 100%;
    animation: erp-ui-orders-skeleton-pulse 1.15s linear infinite;
  }

  .erp-ui-order-skeleton__avatar {
    width: 48px;
    height: 48px;
    border-radius: var(--erp-ui-radius-pill);
  }

  .erp-ui-order-skeleton__content {
    display: flex;
    flex-direction: column;
    min-width: 0;
  }

  .erp-ui-order-skeleton__line {
    display: block;
    height: 13px;
    border-radius: var(--erp-ui-radius-pill);
  }

  .erp-ui-order-skeleton__line--status { width: 88%; height: 18px; }
  .erp-ui-order-skeleton__line--meta { width: 72%; margin-top: 10px; }
  .erp-ui-order-skeleton__line--meta-short { width: 54%; margin-top: 7px; }
  .erp-ui-order-skeleton__line--progress { width: 100%; height: 3px; margin-top: 22px; }
  .erp-ui-order-skeleton__line--route { width: 94%; margin-top: 13px; }
}

@media (max-width: 359.98px) {
  .erp-ui-orders-tabs__item {
    padding-inline: 10px;
    font-size: 14px;
  }

  .erp-ui-orders-cod-summary {
    grid-template-columns: 44px minmax(0, 1fr) auto 20px;
    gap: 9px;
  }

  .erp-ui-orders-cod-summary__icon {
    width: 44px;
    height: 44px;
  }

  .erp-ui-order-row {
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 10px;
    padding-inline: 14px;
  }

  .erp-ui-order-row__avatar {
    width: 44px;
    height: 44px;
    font-size: 17px;
  }

  .erp-ui-order-row__status {
    font-size: 17px;
  }
}

@keyframes erp-ui-orders-skeleton-pulse {
  from { background-position: 200% 0; }
  to { background-position: -200% 0; }
}

@media (prefers-reduced-motion: reduce) {
  .erp-ui-order-skeleton__avatar,
  .erp-ui-order-skeleton__line {
    animation: none;
  }
}

/* External account cabinet: shared order history for clients and partners */
.erp-ui-account-orders {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft);
  border-radius: var(--erp-ui-radius-lg);
  background: var(--erp-ui-surface);
}

.erp-ui-account-orders > .erp-alert {
  margin: var(--erp-ui-space-3);
}

.erp-ui-account-orders > .erp-empty-state {
  min-height: 260px;
}

.erp-ui-account-orders__list {
  display: grid;
  min-width: 0;
}

.erp-ui-account-order {
  min-width: 0;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface);
}

.erp-ui-account-order__link {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 12px;
  min-width: 0;
  padding: 16px;
  background: var(--erp-ui-surface);
  color: var(--erp-ui-text);
  text-decoration: none;
  transition: background-color var(--erp-ui-transition);
}

.erp-ui-account-order__link:hover,
.erp-ui-account-order__link:focus-visible {
  background: var(--erp-ui-surface-muted);
}

.erp-ui-account-order:last-child {
  border-bottom: 0;
}

.erp-ui-account-order__identity {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
}

.erp-ui-account-order__avatar {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: var(--erp-ui-radius-pill);
  background: color-mix(in srgb, var(--erp-ui-info) 24%, #fff);
  color: #fff;
  font-size: 18px;
  font-weight: 800;
}

.erp-ui-account-order__number {
  max-width: 56px;
  margin-top: 8px;
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 13px;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-ui-account-order__content {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.erp-ui-account-order__status {
  display: -webkit-box;
  overflow: hidden;
  color: var(--erp-ui-text);
  font-size: 17px;
  font-weight: 750;
  line-height: 1.25;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.erp-ui-account-order--danger .erp-ui-account-order__status {
  color: var(--erp-ui-danger);
}

.erp-ui-account-order__recipient,
.erp-ui-account-order__source {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-ui-account-order__recipient {
  margin-top: 5px;
  color: var(--erp-ui-text-soft);
  font-size: 15px;
  font-weight: 650;
}

.erp-ui-account-order__source {
  margin-top: 3px;
  color: var(--erp-ui-muted);
  font-size: 14px;
  font-weight: 650;
}

.erp-ui-account-order__progress {
  display: block;
  width: 100%;
  height: 3px;
  margin-top: 16px;
  border-radius: var(--erp-ui-radius-pill);
  background: color-mix(in srgb, var(--erp-ui-muted-soft) 28%, transparent);
}

.erp-ui-account-order__progress-value {
  position: relative;
  display: block;
  width: 0;
  height: 3px;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-ui-success);
}

.erp-ui-account-order--danger .erp-ui-account-order__progress-value {
  background: var(--erp-ui-danger);
}

.erp-ui-account-order__progress-value > span {
  position: absolute;
  top: 50%;
  right: -4px;
  width: 9px;
  height: 9px;
  border: 2px solid var(--erp-ui-surface);
  border-radius: var(--erp-ui-radius-pill);
  background: inherit;
  transform: translateY(-50%);
}

.erp-ui-account-order__progress-value--0 { width: 0; }
.erp-ui-account-order__progress-value--5 { width: 5%; }
.erp-ui-account-order__progress-value--10 { width: 10%; }
.erp-ui-account-order__progress-value--15 { width: 15%; }
.erp-ui-account-order__progress-value--20 { width: 20%; }
.erp-ui-account-order__progress-value--25 { width: 25%; }
.erp-ui-account-order__progress-value--30 { width: 30%; }
.erp-ui-account-order__progress-value--35 { width: 35%; }
.erp-ui-account-order__progress-value--40 { width: 40%; }
.erp-ui-account-order__progress-value--45 { width: 45%; }
.erp-ui-account-order__progress-value--50 { width: 50%; }
.erp-ui-account-order__progress-value--55 { width: 55%; }
.erp-ui-account-order__progress-value--60 { width: 60%; }
.erp-ui-account-order__progress-value--65 { width: 65%; }
.erp-ui-account-order__progress-value--70 { width: 70%; }
.erp-ui-account-order__progress-value--75 { width: 75%; }
.erp-ui-account-order__progress-value--80 { width: 80%; }
.erp-ui-account-order__progress-value--85 { width: 85%; }
.erp-ui-account-order__progress-value--90 { width: 90%; }
.erp-ui-account-order__progress-value--95 { width: 95%; }
.erp-ui-account-order__progress-value--100 { width: 100%; }

.erp-ui-account-order__route {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
  min-width: 0;
  margin-top: 9px;
}

.erp-ui-account-order__route > span {
  min-width: 0;
  overflow: hidden;
  color: var(--erp-ui-muted);
  font-size: 13px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-ui-account-order__route > span:last-child {
  text-align: right;
}

.erp-ui-account-order__actions {
  display: flex;
  justify-content: flex-end;
  padding: 8px 16px 12px;
  border-top: 1px solid var(--erp-ui-border-soft);
}

.erp-ui-account-orders-page__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--erp-ui-space-4);
}

.erp-ui-account-orders-page__header h1,
.erp-ui-account-orders-page__header p {
  margin: 0;
}

.erp-ui-account-orders-page__header p {
  margin-top: var(--erp-ui-space-1);
  color: var(--erp-ui-muted);
}

.erp-ui-account-orders-page__eyebrow {
  display: block;
  margin-bottom: var(--erp-ui-space-1);
  color: var(--erp-ui-muted);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.erp-ui-account-orders-page__count {
  display: inline-grid;
  flex: 0 0 auto;
  place-items: center;
  min-width: 44px;
  height: 44px;
  padding-inline: 10px;
  border-radius: var(--erp-ui-radius-pill);
  background: var(--erp-ui-surface-soft);
  color: var(--erp-ui-text);
  font-weight: 800;
}

@media (max-width: 480px) {
  .erp-ui-account-order__link {
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 10px;
    padding-inline: 14px;
  }

  .erp-ui-account-order__avatar {
    width: 44px;
    height: 44px;
    font-size: 17px;
  }

  .erp-ui-account-orders-page__header p {
    font-size: 14px;
  }
}

/* ========================================================================== 
   Borderless photo and avatar media
   ========================================================================== */

:is(
  .sidebar-item-avatar,
  .auth-user-avatar,
  .erp-avatar,
  .erp-social-avatar,
  .erp-comment-item__avatar,
  .erp-content-gate__avatar,
  .erp-social-post__avatar,
  .erp-collection-chip__avatar,
  .erp-lightbox-comment__avatar,
  .erp-lightbox-comment__liked-avatar,
  .erp-shop-card__avatar,
  .messages-avatar,
  .erp-home-profile-card__avatar,
  .erp-home-profile-card__counter-avatar,
  .erp-home-feed-composer__avatar,
  .erp-home-account-notification__avatar,
  .erp-account-editor__head-avatar,
  .erp-account-editor__avatar-preview
):has(img:not([hidden])) {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

:is([class*="avatar"], [data-app-user-avatar]) img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  margin: auto;
  border: 0;
  outline: 0;
  box-shadow: none;
  object-position: center;
}

:is(.settings-profile-avatar__button, .messages-discussion-create__avatar-button):focus-visible {
  outline: 2px solid var(--erp-action-accent, #111827);
  outline-offset: 3px;
}

/* ========================================================================== 
   Company settings
   ========================================================================== */

.erp-company-settings {
  display: grid;
  flex: 1 1 auto;
  align-content: start;
  gap: var(--erp-ui-space-4, 16px);
  min-width: 0;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
  padding: var(--erp-ui-space-4, 16px);
}

.erp-company-settings__company-head {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto 36px;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-ui-radius, 10px);
  background: var(--erp-ui-surface, #fff);
}

.erp-company-settings__overview-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-ui-radius, 10px);
  background: var(--erp-ui-surface, #fff);
}

.erp-company-settings__overview-card > .erp-company-settings__company-head {
  border: 0;
  border-radius: 0;
}

.erp-company-settings__logo,
.erp-company-settings__status-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  overflow: hidden;
  border-radius: var(--erp-ui-radius, 10px);
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-ui-muted, #64748b);
}

.erp-company-settings__logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.erp-company-settings__company-head > div,
.erp-company-settings__status-card > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.erp-company-settings__company-identity {
  align-content: center;
}

.erp-company-settings__company-title {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.erp-company-settings__company-title > strong {
  min-width: 0;
  overflow: hidden;
  color: var(--erp-ui-text, #111827);
  font-size: 14px;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-company-settings__company-actions {
  justify-self: end;
}

.erp-company-settings__company-actions .erp-dropdown {
  min-width: 210px;
}

.erp-company-settings__company-actions .erp-dropdown form {
  margin: 0;
}

.erp-company-settings__company-head > div > strong,
.erp-company-settings__status-card > div > strong {
  color: var(--erp-ui-text, #111827);
  font-size: 14px;
  font-weight: 900;
}

.erp-company-settings__company-head > div > span,
.erp-company-settings__status-card > div > span,
.erp-company-settings__section > header span,
.erp-company-settings__empty-inline span {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.35;
}

.erp-company-settings__section,
.erp-company-settings__role,
.erp-company-settings__status-card,
.erp-company-settings__empty-inline {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-ui-radius, 10px);
  background: var(--erp-ui-surface, #fff);
}

.erp-company-settings__section > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 52px;
  padding: 9px 12px;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-company-settings__section > header > div {
  display: grid;
  gap: 2px;
}

.erp-company-settings__section > header strong,
.erp-company-settings__empty-inline strong {
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
  font-weight: 900;
}

.erp-company-settings__companies,
.erp-company-settings__tax-groups,
.erp-company-settings__roles {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.erp-company-settings__companies {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 0;
}

.erp-company-settings__company-option {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 54px;
  padding: 8px 10px;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-ui-radius, 10px);
  background: var(--erp-ui-surface, #fff);
  color: var(--erp-ui-text, #111827);
  text-align: left;
  cursor: pointer;
}

.erp-company-settings__company-option.is-active {
  border-color: var(--erp-ui-text, #111827);
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-company-settings__company-option > span {
  display: grid;
  gap: 2px;
}

.erp-company-settings__company-option small {
  color: var(--erp-ui-muted, #64748b);
  font-size: 10px;
}

.erp-company-settings__inline-form {
  min-width: 180px;
}

.erp-company-settings__muted {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 700;
}

.erp-company-settings__access-trigger {
  display: inline-grid;
  grid-template-columns: 18px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  max-width: 190px;
  padding: 6px 8px;
  border: 1px solid var(--erp-ui-border, #dfe5ec);
  border-radius: var(--erp-ui-radius-sm, 6px);
  background: var(--erp-ui-surface, #fff);
  color: var(--erp-ui-text, #111827);
  font: inherit;
  font-size: 11px;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}

.erp-company-settings__access-trigger:hover,
.erp-company-settings__access-trigger:focus-visible,
.erp-company-settings__access-trigger[aria-expanded="true"] {
  border-color: var(--erp-action-accent, #0095f6);
  background: var(--erp-action-hover-bg, #f2f3f5);
  outline: none;
}

.erp-company-settings__access-trigger :is(svg, .lucide) {
  width: 15px !important;
  height: 15px !important;
  color: var(--erp-ui-muted, #64748b);
}

.erp-company-settings__role-picker {
  min-width: 0;
}

.erp-company-settings__role-picker-trigger {
  display: none;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 36px;
  padding: 7px 9px;
  border: 1px solid var(--erp-ui-border, #dfe5ec);
  border-radius: var(--erp-ui-radius, 10px);
  background: var(--erp-ui-surface, #fff);
  color: var(--erp-ui-text, #111827);
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}

.erp-company-settings__role-picker.is-enhanced > select[data-company-role-picker-input] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  border: 0;
  opacity: 0;
  pointer-events: none;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
}

.erp-company-settings__role-picker.is-enhanced .erp-company-settings__role-picker-trigger {
  display: grid;
}

.erp-company-settings__role-picker-trigger:hover,
.erp-company-settings__role-picker-trigger:focus-visible,
.erp-company-settings__role-picker-trigger[aria-expanded="true"] {
  border-color: var(--erp-action-accent, #0095f6);
  background: var(--erp-action-hover-bg, #f2f3f5);
  outline: none;
}

.erp-company-settings__role-picker-trigger :is(i, svg, .lucide) {
  width: 15px !important;
  height: 15px !important;
  color: var(--erp-ui-muted, #64748b);
}

.erp-company-settings__role-options {
  display: grid;
  gap: var(--erp-menu-gap, 4px);
}

.erp-company-settings__roles {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.erp-company-settings__role-trigger {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 18px;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 48px;
  padding: 9px 12px;
  border: 0;
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-ui-text, #111827);
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.erp-company-settings__role-trigger:hover,
.erp-company-settings__role-trigger:focus-visible,
.erp-company-settings__role-trigger[aria-expanded="true"] {
  background: var(--erp-action-hover-bg, #f2f3f5);
  outline: none;
}

.erp-company-settings__role-trigger > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.erp-company-settings__role-trigger > span > strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.erp-company-settings__role-trigger small,
.erp-company-settings__note {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
}

.erp-company-settings__role-trigger > :is(i, svg, .lucide) {
  width: 16px !important;
  height: 16px !important;
  color: var(--erp-ui-muted, #64748b);
}

.erp-company-settings__role-form,
.erp-company-settings__note {
  margin: 0;
}

.erp-company-settings__popover .erp-company-settings__role-form {
  padding: 0;
}

.erp-company-settings__permissions,
.erp-company-settings__visibility {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 14px;
}

.erp-company-settings__identity-form,
.erp-company-settings__cash-access-form {
  padding: 14px;
}

.erp-company-settings__visibility {
  padding: 0;
}

.erp-company-settings__status-card {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 12px;
}

.erp-company-settings__empty-inline {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 14px;
}

.erp-company-settings__empty-inline > div {
  display: grid;
  gap: 3px;
}

.erp-company-settings__data-list {
  display: grid;
  margin: 0;
}

.erp-company-settings__tax-groups {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 0;
}

.erp-company-settings__tax-group {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-ui-radius, 10px);
  background: var(--erp-ui-surface, #fff);
}

.erp-company-settings__tax-group > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 44px;
  padding: 8px 11px;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-company-settings__tax-group > header strong {
  color: var(--erp-ui-text, #111827);
  font-size: 12px;
  font-weight: 850;
}

.erp-company-settings__tax-group > header span {
  color: var(--erp-ui-muted, #64748b);
  font-size: 10px;
  font-weight: 750;
}

.erp-company-settings__identity-layout {
  display: grid;
  grid-template-columns: minmax(300px, .9fr) minmax(360px, 1.1fr);
  gap: var(--erp-ui-space-4, 16px);
  min-width: 0;
}

.erp-company-settings__read-only-message {
  padding: 18px;
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
}

.erp-company-settings__data-list > div {
  display: grid;
  grid-template-columns: minmax(140px, .8fr) minmax(0, 1.2fr);
  gap: 12px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-company-settings__data-list > div:last-child {
  border-bottom: 0;
}

.erp-company-settings__data-list dt {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 750;
}

.erp-company-settings__data-list dd {
  margin: 0;
  color: var(--erp-ui-text, #111827);
  font-size: 12px;
  font-weight: 850;
}

.erp-company-settings .erp-detail-item.is-missing {
  background: var(--erp-ui-surface-muted, #f8fafc);
}

@media (max-width: 900px) {
  .erp-company-settings__companies,
  .erp-company-settings__tax-groups,
  .erp-company-settings__identity-layout {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .erp-company-settings__identity-layout {
    grid-template-columns: 1fr;
  }

}

@media (max-width: 700px) {
  .erp-company-settings {
    padding: 10px;
  }

  .erp-company-settings__company-head,
  .erp-company-settings__status-card,
  .erp-company-settings__empty-inline {
    grid-template-columns: 40px minmax(0, 1fr) auto;
  }

  .erp-company-settings__company-head > .erp-status,
  .erp-company-settings__status-card > form,
  .erp-company-settings__empty-inline > a {
    grid-column: 1 / -1;
    justify-self: stretch;
  }

  .erp-company-settings__company-actions {
    grid-column: 3;
    grid-row: 1;
  }

  .erp-company-settings__company-title {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

  .erp-company-settings__companies,
  .erp-company-settings__roles,
  .erp-company-settings__permissions,
  .erp-company-settings__visibility {
    grid-template-columns: 1fr;
  }

  .erp-company-settings__tax-groups,
  .erp-company-settings__identity-layout {
    grid-template-columns: 1fr;
  }

  .erp-company-settings__section > header {
    align-items: stretch;
  }

  .erp-company-settings__data-list > div {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

/* ========================================================================== 
   Company management overview
   ========================================================================== */

.erp-company-management {
  gap: var(--erp-ui-space-4, 16px);
  width: 100%;
}

.erp-company-management > [id] {
  scroll-margin-top: calc(var(--erp-header-h, 64px) + var(--erp-page-toolbar-h, 54px) + 16px);
}

.erp-company-management__nav {
  display: grid;
  grid-template-columns: repeat(7, minmax(112px, 1fr));
  gap: var(--erp-ui-space-2, 8px);
  min-width: 0;
  overflow-x: auto;
  padding-bottom: 2px;
  scrollbar-width: thin;
}

.erp-company-management__nav-item {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: var(--erp-ui-space-2, 8px);
  min-height: 46px;
  padding: 8px 10px;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-ui-radius, 10px);
  background: var(--erp-ui-surface, #fff);
  color: var(--erp-ui-text, #111827);
  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
  text-decoration: none;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease;
}

.erp-company-management__nav-item > i,
.erp-company-management__nav-item > svg,
.erp-company-management__nav-item > .lucide {
  width: 17px !important;
  height: 17px !important;
  justify-self: center;
  color: var(--erp-ui-muted, #64748b);
}

.erp-company-management__nav-item:is(:hover, :focus-visible) {
  border-color: var(--erp-ui-border, #d7dee8);
  background: var(--erp-ui-surface-muted, #f8fafc);
  outline: none;
}

.erp-company-management > .settings-field-group {
  min-width: 0;
  overflow: hidden;
  padding: 0 var(--erp-ui-space-3, 12px) var(--erp-ui-space-3, 12px);
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-ui-radius, 10px);
  background: var(--erp-ui-surface, #fff);
}

.erp-company-management > .settings-field-group > .settings-field-group__head {
  margin: 0 calc(var(--erp-ui-space-3, 12px) * -1) var(--erp-ui-space-3, 12px);
}

.erp-company-management__readiness {
  display: grid;
  grid-template-columns: repeat(5, minmax(128px, 1fr));
  gap: var(--erp-ui-space-2, 8px);
  min-width: 0;
}

.erp-company-management__readiness-item {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  gap: 3px 8px;
  min-width: 0;
  min-height: 62px;
  padding: 9px 10px;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-ui-radius, 10px);
  background: var(--erp-ui-surface-muted, #f8fafc);
}

.erp-company-management__readiness-item > i,
.erp-company-management__readiness-item > svg,
.erp-company-management__readiness-item > .lucide {
  grid-row: 1 / -1;
  width: 17px !important;
  height: 17px !important;
  justify-self: center;
  color: var(--erp-ui-muted, #64748b);
}

.erp-company-management__readiness-item > span {
  overflow: hidden;
  color: var(--erp-ui-text, #111827);
  font-size: 11px;
  font-weight: 850;
  line-height: 1.25;
  text-overflow: ellipsis;
}

.erp-company-management__readiness-item > strong {
  color: var(--erp-ui-muted, #64748b);
  font-size: 10px;
  font-weight: 800;
}

.erp-company-management__readiness-item.is-ready > svg,
.erp-company-management__readiness-item.is-ready > .lucide,
.erp-company-management__readiness-item.is-ready > strong {
  color: var(--erp-ui-success, #16a34a);
}

.erp-company-management__roles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--erp-ui-space-2, 8px);
  min-width: 0;
}

.erp-company-management__role {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
  border-radius: var(--erp-ui-radius, 10px);
  background: var(--erp-ui-surface, #fff);
}

.erp-company-management__role--new {
  margin-top: var(--erp-ui-space-2, 8px);
}

.erp-company-management__role > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--erp-ui-space-2, 8px);
  min-height: 46px;
  padding: 9px 12px;
  background: var(--erp-ui-surface-muted, #f8fafc);
  color: var(--erp-ui-text, #111827);
  cursor: pointer;
  list-style: none;
}

.erp-company-management__role > summary::-webkit-details-marker {
  display: none;
}

.erp-company-management__role > summary > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.erp-company-management__role > summary svg,
.erp-company-management__role > summary .lucide {
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px;
  color: var(--erp-ui-muted, #64748b);
}

.erp-company-management__role > summary small,
.erp-company-management__role-note {
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 750;
}

.erp-company-management__role-note {
  margin: 0;
  padding: 12px;
}

.erp-company-management__role-form {
  padding: 12px;
  border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
}

.erp-company-management__permissions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
  min-width: 0;
}

.erp-company-management__inline-form {
  min-width: 176px;
}

.erp-company-management__inline-form .erp-field,
.erp-company-management__inline-form .erp-select-control {
  margin: 0;
}

.erp-company-management > .erp-content-gated {
  min-height: 220px;
}

@media (max-width: 1180px) {
  .erp-company-management__nav,
  .erp-company-management__readiness {
    grid-template-columns: repeat(4, minmax(132px, 1fr));
  }
}

@media (max-width: 760px) {
  .erp-company-management {
    padding: var(--erp-ui-space-3, 12px);
  }

  .erp-company-management__readiness,
  .erp-company-management__roles,
  .erp-company-management__permissions {
    grid-template-columns: 1fr;
  }

  .erp-company-management__nav {
    grid-template-columns: repeat(7, minmax(132px, 1fr));
  }

  .erp-company-management > .settings-field-group {
    padding-inline: 10px;
  }

  .erp-company-management > .settings-field-group > .settings-field-group__head {
    align-items: flex-start;
    margin-inline: -10px;
  }
}

/* Shared compact composer controls: feed, messages, comment panel and lightbox. */
.erp-field-control .erp-composer-icon-action {
  width: 36px;
  min-width: 36px;
  height: 36px;
  min-height: 36px;
  align-self: center;
  justify-self: center;
  margin: 4px;
  padding: 0;
  border: 0;
  border-radius: var(--erp-ui-radius-pill, 999px);
  background: color-mix(in srgb, var(--erp-ui-primary) 10%, var(--erp-ui-surface));
  color: var(--erp-ui-muted);
  box-shadow: none;
}

.erp-field-control .erp-composer-icon-action:not(:disabled):is(:hover, :focus-visible, .is-active) {
  background: color-mix(in srgb, var(--erp-ui-primary) 18%, var(--erp-ui-surface));
  color: var(--erp-ui-text);
  outline: none;
}

.erp-field-control .erp-composer-icon-action--send {
  background: var(--erp-ui-primary);
  color: #fff;
}

.erp-field-control .erp-composer-icon-action--send:not(:disabled):is(:hover, :focus-visible) {
  background: color-mix(in srgb, var(--erp-ui-primary) 86%, #111827);
  color: #fff;
}

/* Emoji choices use the same rounded floating surface as product characteristics. */
.erp-emoji-picker {
  padding: 10px;
  border: 1px solid var(--erp-ui-border, #dfe5ec);
  border-radius: var(--erp-ui-radius-lg, 16px);
  background: var(--erp-ui-surface, #fff);
  box-shadow: var(--erp-shadow-popover, 0 16px 34px rgba(15, 23, 42, .14));
}

.erp-emoji-picker__group {
  padding: 8px 4px;
  border-bottom: 0;
}

.erp-emoji-picker__title {
  margin: 0 4px 7px;
  color: var(--erp-ui-muted, #64748b);
  font-size: 11px;
  font-weight: 800;
}

.erp-emoji-picker__button {
  border-radius: 10px;
}

.erp-lightbox-photo-action--favorite {
  left: 70px;
}

.erp-lightbox-photo-action--favorite.is-active,
.erp-lightbox-photo-action--favorite[aria-pressed="true"] {
  color: #bfdbfe;
}

.erp-lightbox-sizes--mobile-title,
.erp-lightbox-preview-actions,
.erp-lightbox-sheet-handle {
  display: none;
}

.erp-lightbox-measurements {
  display: grid;
  gap: 8px;
  padding: 12px 18px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface, #fff);
}

.erp-lightbox-measurements__head {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--erp-ui-text, #111827);
  font-size: 13px;
}

.erp-lightbox-measurements__head :is(i, svg, .lucide) {
  width: 16px;
  height: 16px;
  color: var(--erp-ui-muted, #64748b);
}

.erp-lightbox-measurements__list {
  display: grid;
  gap: 6px;
}

.erp-lightbox-measurements__item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: baseline;
  gap: 6px;
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  line-height: 1.4;
}

.erp-lightbox-measurements__item strong {
  color: var(--erp-ui-text, #111827);
  font-weight: 850;
}

.erp-lightbox-measurements__item strong::after {
  content: " —";
  color: var(--erp-ui-muted, #64748b);
}

.erp-lightbox-measurements__empty {
  color: var(--erp-ui-muted, #64748b);
  font-size: 12px;
  line-height: 1.4;
}

.erp-lightbox-owner-actions {
  padding: 12px 18px;
  border-bottom: 1px solid var(--erp-ui-border-soft);
  background: var(--erp-ui-surface, #fff);
}

.erp-lightbox-panel--product-preview {
  grid-template-rows: auto auto auto auto auto auto minmax(0, 1fr);
  gap: 10px;
}

.erp-lightbox-panel--product-preview > .erp-lightbox-comments {
  grid-row: 7;
}

@media (max-width: 760px) {
  .erp-lightbox-shell--product-preview {
    align-self: end;
    justify-self: stretch;
    width: 100%;
    height: min(82dvh, 720px);
    max-height: calc(100dvh - var(--erp-ui-space-2, 8px));
    animation: erp-mobile-bottom-sheet-in var(--erp-ui-transition, 180ms ease);
  }

  .erp-lightbox-shell--product-preview::before {
    content: "";
    position: absolute;
    top: var(--erp-ui-space-2, 8px);
    left: 50%;
    z-index: 4;
    width: 40px;
    height: 4px;
    border-radius: var(--erp-ui-radius-pill);
    background: color-mix(in srgb, var(--erp-ui-surface) 78%, var(--erp-ui-border));
    box-shadow: 0 1px 4px rgba(15, 23, 42, .16);
    transform: translateX(-50%);
    pointer-events: none;
  }

  .erp-lightbox-shell--product-preview .erp-lightbox-viewer {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(210px, 42%) minmax(0, 1fr);
    border-bottom: 0;
    border-radius: var(--erp-ui-radius-lg, 20px) var(--erp-ui-radius-lg, 20px) 0 0;
    box-shadow: var(--erp-ui-shadow-lg);
  }

  .erp-lightbox-shell--product-preview .erp-lightbox-panel--product-preview {
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-bottom: max(var(--erp-lightbox-panel-bottom), env(safe-area-inset-bottom));
  }

  .erp-lightbox-shell--product-preview .erp-lightbox-panel__head {
    touch-action: pan-x;
  }

  .erp-lightbox-shell--marketplace-product-preview {
    --erp-marketplace-preview-expanded-height: calc(100dvh - var(--erp-header-h, 54px));

    height: min(82dvh, 720px);
    max-height: var(--erp-marketplace-preview-expanded-height);
    transition:
      height var(--erp-ui-transition, 180ms ease),
      transform var(--erp-ui-transition, 180ms ease);
    will-change: height, transform;
  }

  .erp-lightbox-shell--marketplace-product-preview[data-erp-mobile-sheet-state="expanded"] {
    height: var(--erp-marketplace-preview-expanded-height);
  }

  .erp-lightbox-shell--marketplace-product-preview.is-dragging {
    transition: none;
  }

  .erp-lightbox-shell--marketplace-product-preview::before {
    content: none;
  }

  .erp-lightbox-sheet-handle {
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 7;
    display: grid;
    place-items: start center;
    width: 96px;
    height: 30px;
    padding: 8px 0 0;
    border: 0;
    background: transparent;
    cursor: ns-resize;
    touch-action: none;
    transform: translateX(-50%);
  }

  .erp-lightbox-sheet-handle > span {
    width: 40px;
    height: 4px;
    border-radius: var(--erp-ui-radius-pill, 999px);
    background: color-mix(in srgb, var(--erp-ui-surface) 78%, var(--erp-ui-border));
    box-shadow: 0 1px 4px rgba(15, 23, 42, .16);
  }

  .erp-lightbox-sheet-handle:focus-visible {
    outline: 2px solid var(--erp-action-accent, #0095f6);
    outline-offset: -4px;
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-viewer {
    grid-template-rows: minmax(310px, 62%) minmax(0, 1fr);
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-stage {
    grid-template-rows: minmax(0, 1fr) auto auto;
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-thumbs {
    min-height: 62px;
    padding-block: 6px;
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-thumb {
    flex-basis: 50px;
    width: 50px;
    height: 50px;
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-photo-frame > .erp-lightbox-photo-action {
    display: none;
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-preview-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    min-height: 56px;
    padding: 6px 12px;
    border-top: 1px solid var(--erp-ui-border-soft, #e5e7eb);
    background: var(--erp-ui-surface, #fff);
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-preview-actions .erp-lightbox-photo-action {
    position: static;
    width: 42px;
    height: 42px;
    border: 1px solid var(--erp-ui-border-soft, #e5e7eb);
    border-radius: var(--erp-ui-radius-pill, 999px);
    background: var(--erp-ui-surface-muted, #f8fafc);
    color: var(--erp-ui-text, #111827);
    box-shadow: none;
    backdrop-filter: none;
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-preview-actions .erp-lightbox-photo-action:is(:hover, :focus-visible, .is-active, [aria-pressed="true"]) {
    border-color: color-mix(in srgb, var(--erp-action-accent, #0095f6) 42%, var(--erp-ui-border-soft, #e5e7eb));
    background: color-mix(in srgb, var(--erp-action-accent, #0095f6) 10%, var(--erp-ui-surface, #fff));
    color: var(--erp-action-accent, #0095f6);
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-preview-actions .erp-lightbox-photo-action--favorite {
    margin-left: auto;
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-sizes--mobile-title {
    display: flex;
    margin-top: 8px;
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-sizes--primary {
    display: none;
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-panel--product-preview {
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-panel--product-preview > * {
    flex: 0 0 auto;
  }

  .erp-lightbox-shell--marketplace-product-preview .erp-lightbox-panel--product-preview > .erp-lightbox-comments {
    grid-row: auto;
    min-height: min(320px, 45dvh);
    height: min(320px, 45dvh);
  }
}

@media (max-width: 760px) and (prefers-reduced-motion: reduce) {
  .erp-lightbox-shell--product-preview {
    animation: none;
  }
}

.erp-lightbox-owner-message {
  width: 100%;
  justify-content: center;
}

.erp-lightbox-owner-message :is(i, svg, .lucide) {
  width: 17px;
  height: 17px;
}

@media (max-width: 720px) {
  .erp-lightbox-measurements__item {
    grid-template-columns: 1fr;
    gap: 2px;
  }

  .erp-lightbox-measurements__item strong::after {
    content: "";
  }
}

/* Клієнтський кабінет: у центрі особиста стрічка, без дублювання ERP-профілю. */
body.erp-home-page.erp-account-type-client .erp-home-workspace {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
  grid-template-rows: auto minmax(0, 1fr);
  grid-template-areas:
    "composer side"
    "feed side";
  width: min(100%, 1080px);
  margin-inline: auto;
}

body.erp-home-page.erp-account-type-client .erp-home-workspace-block--summary {
  display: none;
}

body.erp-feed-checkout-body.erp-account-type-client .erp-document-feed-context {
  grid-template-columns: minmax(0, 1fr);
}

body.erp-feed-checkout-body.erp-account-type-client .erp-document-feed-context__actions {
  display: none;
}

body.erp-account-profile-body.erp-account-type-client .erp-account-profile-dashboard--client-owner {
  grid-template-columns: minmax(0, 920px);
  grid-template-areas: "feed";
  justify-content: center;
}

body.erp-account-profile-body.erp-account-type-client .erp-account-profile-dashboard--client-owner > .erp-account-profile-dashboard__profile,
body.erp-account-profile-body.erp-account-type-client .erp-account-profile-dashboard--client-owner > .erp-account-profile-dashboard__side {
  display: none;
}

@media (max-width: 760px) {
  body.erp-home-page.erp-account-type-client .erp-home-workspace {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    grid-template-areas:
      "summary"
      "composer"
      "feed";
  }

  body.erp-home-page.erp-account-type-client .erp-home-workspace-block--summary {
    display: grid;
  }

  body.erp-home-page.erp-account-type-client .erp-home-workspace-block--side {
    display: none;
  }

  body.erp-feed-checkout-body .page-order-checkout {
    width: 100%;
  }
}

/* ========================================================================== 
   12. Print helpers
   ========================================================================== */

@media print {
  .erp-print-hidden,
  .erp-no-print { display: none !important; }

  .erp-print-block { display: block !important; }
  .erp-print-inline { display: inline !important; }
  .erp-print-inline-block { display: inline-block !important; }

  .erp-print-break-before { break-before: page !important; }
  .erp-print-break-after { break-after: page !important; }
  .erp-print-break-avoid { break-inside: avoid !important; }
}
