@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');
:root {
    --primary:#006577;
    --primary-container:#008096;
    --on-primary:#ffffff;
    --surface:#f7fafc;
    --surface-container-low:#f1f4f6;
    --surface-container-lowest:#ffffff;
    --surface-bright:#f7fafc;
    --on-surface:#181c1e;
    --on-surface-variant:#3e494c;
    --tertiary:#FFD600;
    --outline-variant:rgba(189, 200, 204, 0.15);
    --font-headline:'Manrope', sans-serif;
    --font-body:'Inter', sans-serif;
    --radius-md:0.375rem;
    --radius-lg:1rem;
    --shadow-ambient:0 12px 40px rgba(0, 101, 119, 0.06);
    --sidebar-width:280px
}
* {
    margin:0;
    padding:0;
    box-sizing:border-box
}
body {
    font-family:var(--font-body);
    background-color:var(--surface);
    color:var(--on-surface);
    line-height:1.5;
    height:100vh;
    display:flex;
    overflow:hidden
}
.layout-sidebar-toggle {
    position:fixed;
    inset-block-start:1.5rem;
    inset-inline-start:1.5rem;
    width:48px;
    height:48px;
    border:1px solid rgba(255, 255, 255, 0.5);
    border-radius:50%;
    background:rgba(255, 255, 255, 0.85);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    color:var(--primary);
    font-size:1.1rem;
    box-shadow:0 8px 24px rgba(0, 101, 119, 0.12), inset 0 2px 6px rgba(255, 255, 255, 0.8);
    cursor:pointer;
    z-index:40;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transition:all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1)
}
.layout-sidebar-toggle i {
    transition:transform 0.3s ease
}
.layout-sidebar-toggle:hover {
    transform:scale(1.08) translateY(-2px);
    background:#ffffff;
    box-shadow:0 14px 32px rgba(0, 101, 119, 0.18), inset 0 2px 4px rgba(255, 255, 255, 1);
    color:#054857
}
.layout-sidebar-toggle:active {
    transform:scale(0.95)
}
body:not(.sidebar-collapsed) .layout-sidebar-toggle {
    inset-inline-start:calc(var(--sidebar-width) - 24px)
}
body:not(.sidebar-collapsed) .layout-sidebar-toggle:hover i {
    transform:scale(0.95)
}
.layout-sidebar-backdrop {
    position:fixed;
    inset:0;
    background:rgba(24, 28, 30, 0.38);
    backdrop-filter:blur(4px);
    z-index:25
}

.notification-center {
  position: fixed;
  inset-block-start: 1.1rem;
  inset-inline-end: 1.1rem;
  z-index: 42;
}

.notification-center__toggle {
  position: relative;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(62, 73, 76, 0.1);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.96);
  color: var(--primary);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 16px 30px rgba(0, 101, 119, 0.12);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.notification-center__toggle:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 36px rgba(0, 101, 119, 0.18);
}

.notification-center__badge {
  position: absolute;
  inset-block-start: -6px;
  inset-inline-end: -6px;
  min-width: 22px;
  height: 22px;
  border-radius: 999px;
  background: #d92d20;
  color: white;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-inline: 0.35rem;
  font-size: 0.72rem;
  font-weight: 800;
  box-shadow: 0 8px 18px rgba(217, 45, 32, 0.24);
}

.notification-center__panel {
  position: absolute;
  inset-block-start: calc(100% + 0.8rem);
  inset-inline-end: 0;
  width: min(380px, calc(100vw - 2rem));
  max-height: min(72vh, 640px);
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(62, 73, 76, 0.08);
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.18);
}

.notification-center__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1rem 0.85rem;
  border-bottom: 1px solid rgba(62, 73, 76, 0.08);
}

.notification-center__header h3 {
  font-size: 1rem;
  font-weight: 800;
}

.notification-center__header p {
  margin-top: 0.18rem;
  color: var(--on-surface-variant);
  font-size: 0.8rem;
}

.notification-center__mark-all {
  border: none;
  background: transparent;
  color: var(--primary);
  font-size: 0.8rem;
  font-weight: 800;
  cursor: pointer;
}

.notification-center__list {
  overflow-y: auto;
  padding: 0.5rem;
  display: grid;
  gap: 0.45rem;
}

.notification-item {
  width: 100%;
  border: none;
  background: rgba(247, 250, 252, 0.9);
  border-radius: 18px;
  padding: 0.9rem;
  display: flex;
  align-items: flex-start;
  gap: 0.85rem;
  text-align: start;
  cursor: pointer;
  transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.notification-item:hover {
  transform: translateY(-1px);
  background: #ffffff;
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
}

.notification-item.is-unread {
  background: linear-gradient(135deg, rgba(0, 101, 119, 0.09), rgba(0, 128, 150, 0.04));
}

.notification-item__icon {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: white;
  background: var(--primary);
}

.notification-item__icon--success {
  background: #1f9d55;
}

.notification-item__icon--warning {
  background: #c58b00;
}

.notification-item__icon--danger {
  background: #d92d20;
}

.notification-item__icon--info {
  background: var(--primary);
}

.notification-item__content {
  display: grid;
  gap: 0.22rem;
  min-width: 0;
  flex: 1;
}

.notification-item__content strong {
  color: var(--on-surface);
  font-size: 0.9rem;
  font-weight: 800;
}

.notification-item__content small {
  color: var(--on-surface-variant);
  font-size: 0.8rem;
  line-height: 1.55;
}

.notification-item__content em {
  color: rgba(62, 73, 76, 0.8);
  font-size: 0.74rem;
  font-style: normal;
  margin-top: 0.22rem;
}

.notification-center__empty {
  min-height: 180px;
  display: grid;
  place-items: center;
  gap: 0.5rem;
  color: var(--on-surface-variant);
  text-align: center;
  padding: 1.25rem;
}

.notification-center__empty i {
  font-size: 1.4rem;
  opacity: 0.65;
}

.notification-toast-stack {
  position: fixed;
  inset-block-end: 1rem;
  inset-inline-end: 1rem;
  z-index: 60;
  display: grid;
  gap: 0.7rem;
  width: min(360px, calc(100vw - 1.5rem));
}

.notification-toast {
  display: flex;
  align-items: flex-start;
  gap: 0.8rem;
  padding: 0.9rem 1rem;
  border-radius: 18px;
  color: white;
  background: #122126;
  box-shadow: 0 20px 44px rgba(15, 23, 42, 0.24);
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.24s ease, transform 0.24s ease;
}

.notification-toast.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.notification-toast--success {
  background: linear-gradient(135deg, #157347, #1f9d55);
}

.notification-toast--warning {
  background: linear-gradient(135deg, #9a6700, #c58b00);
}

.notification-toast--danger {
  background: linear-gradient(135deg, #b42318, #d92d20);
}

.notification-toast--info {
  background: linear-gradient(135deg, var(--primary), var(--primary-container));
}

.notification-toast__icon {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.14);
}

.notification-toast__content {
  display: grid;
  gap: 0.18rem;
}

.notification-toast__content strong {
  font-size: 0.9rem;
  font-weight: 800;
}

.notification-toast__content span {
  font-size: 0.8rem;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.9);
}

/* Sidebar Glassmorphism */
.app-sidebar {
    width:var(--sidebar-width);
    min-width:var(--sidebar-width);
    background:rgba(247, 250, 252, 0.7);
    backdrop-filter:blur(12px);
    height:100%;
    display:flex;
    flex-direction:column;
    padding:2rem 1.5rem;
    z-index:10;
    border-right:1px solid var(--outline-variant);
    overflow:hidden;
    transition:width 0.25s ease, min-width 0.25s ease, padding 0.25s ease, opacity 0.2s ease, transform 0.25s ease, border-color 0.25s ease
}
.sidebar-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:3rem;
    flex:0 0 auto
}
.logo {
    font-family:var(--font-headline);
    font-weight:800;
    font-size:1.5rem;
    color:var(--primary);
    display:flex;
    align-items:center;
    gap:0.75rem
}
.sidebar-close {
    width:40px;
    height:40px;
    border:none;
    border-radius:12px;
    background:var(--surface-container-lowest);
    color:var(--on-surface-variant);
    cursor:pointer;
    display:none;
    align-items:center;
    justify-content:center;
    box-shadow:var(--shadow-ambient)
}
.logo-icon {
    width:32px;
    height:32px;
    background:linear-gradient(135deg, var(--primary), var(--primary-container));
    border-radius:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 4px 12px rgba(0, 101, 119, 0.2)
}
.logo-image {
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:8px
}
nav {
    display:flex;
    flex-direction:column;
    gap:0.5rem
}
.sidebar-scroll {
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y;
    padding-bottom:1rem;
    scrollbar-width:thin;
    scrollbar-color:rgba(0, 101, 119, 0.26) transparent
}
.sidebar-scroll::-webkit-scrollbar {
    width:8px
}
.sidebar-scroll::-webkit-scrollbar-thumb {
    background:rgba(0, 101, 119, 0.24);
    border-radius:999px
}
.nav-item {
    display:flex;
    align-items:center;
    gap:1rem;
    padding:0.75rem 1rem;
    border-radius:var(--radius-md);
    color:var(--on-surface-variant);
    text-decoration:none;
    font-weight:500;
    transition:all 0.2s ease
}
.app-sidebar>* {
    transition:opacity 0.15s ease
}
body.sidebar-collapsed .app-sidebar {
    width:0;
    max-width:0;
    min-width:0;
    padding:0;
    border-right-width:0;
    border-right-color:transparent;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateX(-100%);
    box-shadow:none
}
body.sidebar-collapsed .app-sidebar>* {
    opacity:0
}
body:not(.sidebar-collapsed) .app-sidebar {
    visibility:visible;
    pointer-events:auto
}
.nav-item:hover {
    background-color:var(--surface-container-low);
    color:var(--primary)
}
.nav-item.active {
    background-color:var(--surface-container-lowest);
    color:var(--primary);
    box-shadow:var(--shadow-ambient)
}
.nav-footer {
    margin-top:auto;
    padding-top:0.75rem;
    padding-bottom:0.5rem;
    display:grid;
    gap:0.85rem
}
.sidebar-footer-card {
    display:grid;
    gap:0.85rem;
    padding:0.2rem 0
}
.sidebar-footer-block {
    display:grid;
    gap:0.45rem
}
.sidebar-section-label {
    display:inline-flex;
    align-items:center;
    gap:0.45rem;
    font-size:0.68rem;
    font-weight:800;
    letter-spacing:0.05em;
    text-transform:uppercase;
    color:var(--on-surface-variant);
    padding-inline:0.1rem
}
.sidebar-locale-switcher {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:0.55rem
}
.sidebar-locale-option {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0.55rem 0.7rem;
    border-radius:13px;
    font-size:0.82rem;
    font-weight:800;
    text-decoration:none;
    color:var(--on-surface-variant);
    background:rgba(255, 255, 255, 0.94);
    border:1px solid rgba(62, 73, 76, 0.12);
    transition:all 0.2s ease
}
.sidebar-locale-option:hover {
    color:var(--primary);
    border-color:rgba(0, 101, 119, 0.22)
}
.sidebar-locale-option.is-active {
    color:#073b45;
    background:linear-gradient(135deg, rgba(0, 101, 119, 0.14), rgba(0, 128, 150, 0.05));
    border-color:rgba(0, 101, 119, 0.18);
    box-shadow:0 8px 18px rgba(0, 101, 119, 0.08)
}
.user-profile {
    display:flex;
    align-items:center;
    gap:0.8rem;
    padding:0.85rem 0.9rem;
    border-radius:16px;
    background:rgba(255, 255, 255, 0.94);
    border:1px solid rgba(62, 73, 76, 0.08);
    box-shadow:0 10px 24px rgba(15, 23, 42, 0.05)
}
.user-profile__avatar {
    width:42px;
    height:42px;
    border-radius:14px;
    background:linear-gradient(135deg, var(--primary), var(--primary-container));
    color:white;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:800;
    box-shadow:0 10px 18px rgba(0, 101, 119, 0.14)
}
.user-profile__content {
    min-width:0;
    flex:1
}
.user-profile__name {
    font-size:0.9rem;
    font-weight:800;
    color:var(--on-surface);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis
}
.user-profile__role {
    margin-top:0.16rem;
    display:inline-flex;
    max-width:100%;
    padding:0.16rem 0.55rem;
    border-radius:999px;
    background:rgba(0, 101, 119, 0.08);
    color:var(--primary);
    font-size:0.72rem;
    font-weight:700;
    text-transform:capitalize;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis
}
.user-profile__branch {
    margin-top:0.42rem;
    display:flex;
    align-items:center;
    gap:0.42rem;
    min-width:0;
    color:var(--on-surface-variant);
    font-size:0.78rem;
    font-weight:700
}
.user-profile__branch i {
    flex:0 0 auto;
    color:var(--primary);
    opacity:0.9
}
.user-profile__branch span {
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap
}
.sidebar-logout-form {
    margin:0
}
.sidebar-logout-btn {
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:0.8rem;
    padding:0.85rem 0.95rem;
    border:1px solid rgba(180, 35, 24, 0.12);
    border-radius:15px;
    background:rgba(255, 255, 255, 0.94);
    color:#8f1f1f;
    font-size:0.9rem;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 10px 24px rgba(180, 35, 24, 0.06);
    transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, background 0.2s ease, color 0.2s ease
}
.sidebar-logout-btn:hover {
    transform:translateY(-1px);
    background:#fff5f3;
    border-color:rgba(180, 35, 24, 0.22);
    box-shadow:0 14px 28px rgba(180, 35, 24, 0.1)
}
main {
    flex:1;
    background-color:var(--surface-container-low);
    padding:2rem;
    overflow-y:auto;
    display:flex;
    flex-direction:column;
    gap:2rem;
    transition:padding 0.3s ease, opacity 0.2s ease
}
.app-main-shell {
    will-change:opacity
}
.app-main-shell.is-navigating {
    opacity:0.7
}
header {
    display:flex;
    justify-content:space-between;
    align-items:center
}
h1 {
    font-family:var(--font-headline);
    font-weight:700;
    font-size:2rem
}
.actions {
    display:flex;
    gap:1rem
}
.grid {
    display:grid;
    grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));
    gap:1.5rem
}
.card {
    background-color:var(--surface-container-lowest);
    padding:1.5rem;
    border-radius:var(--radius-lg);
    box-shadow:none;
    transition:transform 0.2s ease, box-shadow 0.2s ease
}
.card:hover {
    transform:translateY(-4px);
    box-shadow:var(--shadow-ambient);
    background-color:var(--surface-bright)
}
.btn {
    padding:0.75rem 1.5rem;
    border-radius:var(--radius-md);
    font-weight:600;
    cursor:pointer;
    border:none;
    transition:all 0.2s ease;
    font-family:var(--font-body)
}
.btn-primary {
    background:linear-gradient(135deg, var(--primary), var(--primary-container));
    color:var(--on-primary)
}
.btn-primary:hover {
    opacity:0.9;
    transform:scale(1.02)
}
.btn:disabled,
.btn[disabled] {
    opacity:0.5;
    cursor:not-allowed;
    transform:none
}
.btn-primary:disabled:hover,
.btn-primary[disabled]:hover {
    opacity:0.5;
    transform:none
}
.btn-secondary {
    background-color:var(--surface-container-lowest);
    color:var(--on-surface)
}
.btn-accent {
    background-color:var(--tertiary);
    color:var(--on-surface);
    box-shadow:0 4px 12px rgba(255, 214, 0, 0.2)
}
.input-group {
    background-color:var(--surface-container-low);
    border-radius:var(--radius-md);
    padding:0.75rem 1rem;
    display:flex;
    align-items:center;
    gap:0.75rem;
    transition:all 0.2s ease
}
.input-group:focus-within {
    box-shadow:0 0 0 2px rgba(0, 101, 119, 0.4)
}
input {
    background:transparent;
    border:none;
    outline:none;
    font-family:var(--font-body);
    color:var(--on-surface);
    flex:1
}
textarea {
    font-family:var(--font-body)
}
.modal-backdrop {
    position:fixed;
    inset:0;
    background:rgba(24, 28, 30, 0.45);
    backdrop-filter:blur(6px);
    display:flex;
    align-items:center;
    justify-content:center;
    padding:2rem;
    z-index:1000
}
.customer-modal {
    width:min(100%, 680px);
    background:var(--surface-container-lowest);
    border-radius:24px;
    box-shadow:0 24px 60px rgba(0, 0, 0, 0.16);
    overflow:hidden
}
.customer-modal__header {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:1rem;
    padding:1.5rem 1.75rem;
    border-bottom:1px solid rgba(62, 73, 76, 0.12)
}
.customer-modal__header h2 {
    font-size:1.4rem;
    margin-bottom:0.25rem
}
.customer-modal__header p {
    color:var(--on-surface-variant);
    font-size:0.95rem
}
.customer-modal__close {
    width:40px;
    height:40px;
    border:none;
    border-radius:999px;
    background:var(--surface-container-low);
    color:var(--on-surface-variant);
    cursor:pointer;
    transition:all 0.2s ease
}
.customer-modal__close:hover {
    background:rgba(0, 101, 119, 0.1);
    color:var(--primary)
}
.customer-form {
    padding:1.75rem
}
.customer-form__grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:1.25rem
}
.customer-field {
    display:flex;
    flex-direction:column;
    gap:0.5rem
}
.customer-field--full {
    grid-column:1 / -1
}
.customer-field label {
    font-size:0.9rem;
    font-weight:700;
    color:var(--on-surface)
}
.customer-field input, .customer-field textarea, .customer-field select {
    width:100%;
    border:1px solid rgba(62, 73, 76, 0.16);
    background:var(--surface);
    border-radius:14px;
    padding:0.9rem 1rem;
    color:var(--on-surface);
    transition:border-color 0.2s ease, box-shadow 0.2s ease
}
.customer-field textarea {
    resize:vertical;
    min-height:120px
}
.customer-field input:focus, .customer-field textarea:focus, .customer-field select:focus {
    border-color:var(--primary);
    box-shadow:0 0 0 4px rgba(0, 101, 119, 0.12)
}
.customer-field__error {
    color:#c62828;
    font-size:0.85rem
}
.pos-payment-methods {
    display:grid;
    gap:0.7rem
}
.pos-payment-method {
    position:relative;
    display:flex;
    align-items:center;
    gap:0.7rem;
    border:1px solid rgba(62, 73, 76, 0.14);
    border-radius:16px;
    padding:0.9rem 1rem;
    background:linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 252, 0.96));
    color:var(--on-surface);
    cursor:pointer;
    box-shadow:0 10px 24px rgba(15, 23, 42, 0.05);
    transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, background 0.2s ease, color 0.2s ease
}
.pos-payment-method:hover {
    transform:translateY(-1px);
    border-color:rgba(0, 101, 119, 0.16);
    box-shadow:0 14px 28px rgba(15, 23, 42, 0.08)
}
.pos-payment-method input[type="radio"] {
    position:absolute;
    inset:0;
    opacity:0;
    cursor:pointer
}
.pos-payment-method i {
    width:40px;
    height:40px;
    flex:0 0 40px;
    border-radius:12px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:var(--primary);
    background:rgba(0, 101, 119, 0.09)
}
.pos-payment-method span {
    font-weight:800
}
.pos-payment-method.is-active {
    border-color:rgba(0, 101, 119, 0.22);
    background:linear-gradient(135deg, rgba(0, 101, 119, 0.14), rgba(0, 128, 150, 0.06));
    color:#064e5d;
    box-shadow:0 16px 34px rgba(0, 101, 119, 0.12)
}
.pos-payment-method.is-active i {
    color:#ffffff;
    background:linear-gradient(135deg, var(--primary), var(--primary-container))
}
.pos-payment-summary {
    margin-top:1rem;
    background:linear-gradient(180deg, rgba(241, 244, 246, 0.94), rgba(255, 255, 255, 0.98));
    border:1px solid rgba(62, 73, 76, 0.08);
    border-radius:16px;
    padding:0.95rem 1rem;
    box-shadow:0 12px 28px rgba(15, 23, 42, 0.05)
}
.pos-payment-summary__row {
    display:flex;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:0.35rem;
    font-size:0.92rem
}
.pos-payment-summary__row strong {
    color:var(--on-surface)
}
.pos-payment-summary__row--total {
    margin-top:0.45rem;
    padding-top:0.65rem;
    border-top:1px solid rgba(62, 73, 76, 0.1);
    margin-bottom:0;
    font-size:1rem;
    font-weight:800;
    color:var(--primary)
}
.customer-modal__footer {
    display:flex;
    justify-content:flex-end;
    gap:0.75rem;
    margin-top:1.5rem
}
.pos-container {
    display:grid;
    grid-template-columns:1fr 400px;
    gap:2rem;
    height:calc(100vh - 8rem)
}
.products-section, .cart-section {
    min-width:0;
    min-height:0
}
.product-grid {
    display:grid;
    grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));
    gap:1.5rem;
    overflow-y:auto;
    padding-right:0.5rem
}
.pos-empty-state {
    grid-column:1 / -1;
    min-height:280px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:0.75rem;
    padding:2rem;
    text-align:center;
    border:1px dashed rgba(0, 101, 119, 0.2);
    border-radius:24px;
    background:linear-gradient(180deg, rgba(241, 244, 246, 0.7), rgba(241, 244, 246, 0.2))
}
.pos-empty-state i {
    width:58px;
    height:58px;
    border-radius:18px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(0, 101, 119, 0.08);
    color:var(--primary);
    font-size:1.25rem
}
.pos-empty-state h3 {
    font-size:1.05rem;
    font-weight:800;
    color:var(--on-surface)
}
.pos-empty-state p {
    max-width:26rem;
    color:var(--on-surface-variant);
    line-height:1.6
}
.product-card {
    background-color:var(--surface-container-lowest);
    border-radius:var(--radius-lg);
    padding:1.25rem;
    display:flex;
    flex-direction:column;
    gap:1rem;
    cursor:pointer;
    transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)
}
.product-card:hover {
    transform:translateY(-8px);
    box-shadow:var(--shadow-ambient)
}
.product-image {
    aspect-ratio:1;
    background-color:var(--surface-container-low);
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    position:relative
}
.product-image img {
    width:100%;
    height:100%;
    object-fit:cover
}
.product-tag {
    position:absolute;
    top:8px;
    right:8px;
    background:rgba(255, 255, 255, 0.9);
    backdrop-filter:blur(4px);
    padding:4px 8px;
    border-radius:4px;
    font-size:0.7rem;
    font-weight:700;
    color:var(--primary)
}
.product-info h3 {
    font-size:1rem;
    font-weight:700;
    font-family:var(--font-headline);
    color:var(--on-surface)
}
.product-info p {
    font-size:0.85rem;
    color:var(--on-surface-variant)
}
.product-footer {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-top:auto
}
.product-price {
    font-weight:800;
    color:var(--primary);
    font-size:1.1rem;
    font-family:var(--font-headline)
}
.cart {
    background-color:var(--surface-container-lowest);
    border-radius:24px;
    display:flex;
    flex-direction:column;
    box-shadow:var(--shadow-ambient);
    overflow:hidden;
    height:100%;
    min-height:0
}
.cart-header {
    padding:1.5rem;
    border-bottom:2px solid var(--surface-container-low);
    display:flex;
    justify-content:space-between;
    align-items:center
}
.cart-header h2 {
    font-family:var(--font-headline);
    font-size:1.25rem
}
.cart-branch {
    padding:1rem 1.5rem;
    border-bottom:1px solid var(--surface-container-low);
    background:linear-gradient(180deg, rgba(241, 244, 246, 0.55), rgba(241, 244, 246, 0.15))
}
.cart-branch__field {
    display:flex;
    align-items:center;
    gap:0.75rem;
    min-height:48px;
    padding:0.5rem 0.85rem;
    border:1px solid rgba(62, 73, 76, 0.18);
    border-radius:14px;
    background:var(--surface-container-lowest)
}
.cart-branch__icon {
    color:var(--primary);
    font-size:0.95rem
}
.cart-branch__select {
    width:100%;
    border:0;
    outline:none;
    background:transparent;
    color:var(--on-surface);
    font-size:0.95rem;
    font-weight:700
}
.cart-customer {
    padding:1rem 1.5rem 0.85rem;
    border-bottom:1px solid var(--surface-container-low);
    background:linear-gradient(180deg, rgba(241, 244, 246, 0.45), rgba(241, 244, 246, 0.1))
}
.cart-customer__label {
    display:block;
    font-size:0.72rem;
    letter-spacing:0.09em;
    text-transform:uppercase;
    font-weight:800;
    margin-bottom:0.5rem;
    color:var(--on-surface-variant)
}
.cart-customer__row {
    display:flex;
    align-items:center;
    gap:0.55rem
}
.cart-customer__filter-wrap {
    position:relative;
    flex:1
}
.cart-customer__trigger {
    width:100%;
    border:1px solid rgba(62, 73, 76, 0.18);
    border-radius:12px;
    background:var(--surface-container-lowest);
    padding:0.72rem 0.85rem;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:0.75rem;
    color:var(--on-surface);
    cursor:pointer;
    transition:border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease
}
.cart-customer__trigger:hover {
    transform:translateY(-1px)
}
.cart-customer__trigger:focus, .cart-customer__trigger:focus-visible {
    outline:none;
    border-color:var(--primary);
    box-shadow:0 0 0 3px rgba(0, 101, 119, 0.12)
}
.cart-customer__trigger-main {
    min-width:0;
    display:inline-flex;
    align-items:center;
    gap:0.55rem
}
.cart-customer__trigger-main i, .cart-customer__trigger-caret {
    color:var(--on-surface-variant);
    opacity:0.82
}
.cart-customer__trigger-text {
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:0.9rem;
    font-weight:600
}
.cart-customer__menu {
    position:absolute;
    top:calc(100% + 0.45rem);
    left:0;
    right:0;
    z-index:40;
    background:var(--surface-container-lowest);
    border-radius:16px;
    box-shadow:0 20px 45px rgba(15, 23, 42, 0.14);
    border:1px solid rgba(62, 73, 76, 0.12);
    overflow:hidden;
    max-height:320px;
    overflow-y:auto
}
.cart-customer__menu button {
    width:100%;
    border:0;
    background:transparent;
    text-align:left;
    padding:0.8rem 0.9rem;
    display:flex;
    flex-direction:column;
    gap:0.18rem;
    cursor:pointer;
    transition:background-color 0.2s ease, color 0.2s ease
}
.cart-customer__menu button span {
    color:var(--on-surface);
    font-size:0.88rem;
    font-weight:700
}
.cart-customer__menu button small {
    color:var(--on-surface-variant);
    font-size:0.76rem
}
.cart-customer__menu-title {
    color:var(--on-surface);
    font-size:0.9rem;
    font-weight:800;
    line-height:1.35
}
.cart-customer__menu-phone {
    color:var(--primary);
    font-size:0.78rem;
    font-weight:700;
    line-height:1.3
}
.cart-customer__menu-meta {
    color:var(--on-surface-variant);
    font-size:0.76rem;
    line-height:1.35
}
.cart-customer__menu button:hover {
    background:rgba(0, 101, 119, 0.06)
}
.cart-customer__menu button.active {
    background:linear-gradient(135deg, rgba(0, 101, 119, 0.12), rgba(0, 128, 150, 0.08))
}
.cart-customer__menu button.active span {
    color:var(--primary)
}
.cart-customer__menu button.active .cart-customer__menu-title, .cart-customer__menu button.active .cart-customer__menu-phone {
    color:var(--primary)
}
.cart-customer__add {
    width:42px;
    height:42px;
    border:0;
    border-radius:12px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    cursor:pointer;
    background:linear-gradient(135deg, var(--primary), var(--primary-container));
    box-shadow:0 8px 18px rgba(0, 101, 119, 0.24);
    transition:transform 0.2s ease, filter 0.2s ease
}
.cart-customer__add:hover {
    transform:translateY(-1px);
    filter:brightness(1.03)
}
.cart-customer__error {
    margin-top:0.42rem;
    color:#b42318;
    font-size:0.78rem;
    font-weight:700
}
.cart-items {
    flex:1;
    min-height:0;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    padding:1.5rem;
    display:flex;
    flex-direction:column;
    gap:1.5rem
}
.cart-item {
    display:flex;
    gap:1rem;
    align-items:center
}
.item-img {
    width:48px;
    height:48px;
    background-color:var(--surface-container-low);
    border-radius:8px;
    object-fit:cover
}
.item-details {
    flex:1
}
.item-details h4 {
    font-size:0.9rem;
    font-weight:600
}
.item-details p {
    font-size:0.8rem;
    color:var(--on-surface-variant)
}
.item-qty-control {
    display:flex;
    align-items:center;
    gap:0.55rem;
    background-color:var(--surface-container-low);
    padding:0.35rem 0.6rem;
    border-radius:20px;
    font-weight:600;
    font-size:0.85rem
}
.item-qty-control__input {
    width:28px;
    min-width:0;
    border:0;
    background:transparent;
    padding:0;
    text-align:center;
    font:inherit;
    font-weight:800;
    color:var(--on-surface)
}
.item-qty-control__input[type=number] {
    -moz-appearance:textfield
}
.item-qty-control__input:focus {
    outline:none
}
.item-qty-control__input::-webkit-outer-spin-button,
.item-qty-control__input::-webkit-inner-spin-button {
    -webkit-appearance:none;
    margin:0
}
.item-price {
    font-weight:700;
    font-size:0.95rem
}
.cart-item__remove {
    width:36px;
    height:36px;
    border:0;
    border-radius:11px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    color:#b42318;
    background:rgba(180, 35, 24, 0.08);
    cursor:pointer;
    transition:transform 0.2s ease, background-color 0.2s ease, color 0.2s ease
}
.cart-item__remove:hover {
    transform:translateY(-1px);
    background:#b42318;
    color:#fff
}
.pos-payment-branch {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    padding:0.9rem 1rem;
    margin-bottom:1rem;
    border-radius:14px;
    background:rgba(0, 101, 119, 0.06);
    border:1px solid rgba(0, 101, 119, 0.14)
}
.pos-payment-branch span {
    color:var(--on-surface-variant);
    font-size:0.84rem;
    font-weight:700
}
.pos-payment-branch strong {
    color:var(--on-surface);
    font-size:0.95rem;
    font-weight:800
}
.cart-footer {
    padding:1.2rem 1.25rem;
    background-color:var(--surface-container-low);
    display:flex;
    flex-direction:column;
    gap:0.9rem
}
.totals {
    display:flex;
    flex-direction:column;
    gap:0.6rem
}
.pos-adjustments {
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(112px, 1fr));
    gap:0.65rem;
    margin-top:0.15rem
}
.pos-adjustment {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:0.55rem;
    padding:0.45rem 0.55rem;
    border-radius:12px;
    background:rgba(255, 255, 255, 0.88);
    border:1px solid var(--outline-variant);
    color:var(--on-surface-variant);
    font-size:0.8rem;
    font-weight:700
}
.pos-adjustment__field {
    display:inline-flex;
    align-items:center;
    gap:0.3rem;
    min-width:0
}
.pos-adjustment__field input {
    width:64px;
    min-width:0;
    border:0;
    background:transparent;
    padding:0;
    text-align:end;
    font:inherit;
    color:var(--on-surface)
}
.pos-adjustment__field input:focus {
    outline:none
}
.pos-adjustment__field em {
    font-style:normal;
    color:var(--primary);
    font-weight:800
}
.total-row {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:0.75rem;
    font-size:0.9rem;
    color:var(--on-surface-variant)
}
.total-row.grand {
    font-weight:800;
    font-size:1.5rem;
    color:var(--primary);
    margin-top:0.5rem;
    padding-top:1rem;
    border-top:2px solid var(--outline-variant)
}
.categories {
    display:flex;
    gap:0.75rem;
    overflow-x:auto;
    padding-bottom:0.5rem
}
.category-tab {
    padding:0.6rem 1.25rem;
    background-color:var(--surface-container-lowest);
    border-radius:100px;
    white-space:nowrap;
    font-size:0.9rem;
    font-weight:600;
    cursor:pointer;
    transition:all 0.2s ease;
    border:1px solid transparent
}
.category-tab:hover {
    background-color:var(--surface-bright)
}
.category-tab.active {
    background-color:var(--primary);
    color:var(--on-primary)
}
@keyframes fadeIn {
    from {
        opacity:0;
        transform:translateY(20px)
    }
    to {
        opacity:1;
        transform:translateY(0)
    }
}
.product-card {
    animation:fadeIn 0.4s ease forwards
}
.ops-dashboard {
    display:flex;
    flex-direction:column;
    gap:1.5rem
}
.ops-dashboard__header {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:1rem
}
.ops-dashboard__eyebrow {
    color:var(--primary);
    font-size:0.82rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:0.08em;
    margin-bottom:0.4rem
}
.ops-dashboard__subtitle {
    color:var(--on-surface-variant);
    max-width:760px;
    margin-top:0.35rem
}
.ops-dashboard__stamp {
    min-width:190px;
    text-align:center;
    background:rgba(255, 255, 255, 0.8);
    border-radius:18px;
    padding:1rem 1.25rem;
    box-shadow:var(--shadow-ambient)
}
.ops-dashboard__stamp strong, .ops-dashboard__stamp span {
    display:block
}
.ops-dashboard__stamp span {
    color:var(--on-surface-variant);
    font-size:0.92rem;
    margin-top:0.25rem
}
.ops-dashboard__stats {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:1rem
}
.ops-stat-card {
    display:flex;
    align-items:flex-start;
    gap:1rem;
    padding:1.4rem 1.5rem;
    border-radius:22px;
    background:linear-gradient(135deg, var(--primary), var(--primary-container));
    color:white;
    box-shadow:0 18px 38px rgba(0, 101, 119, 0.2)
}
.ops-stat-card__icon {
    width:48px;
    height:48px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255, 255, 255, 0.14)
}
.ops-stat-card span, .ops-stat-strip span {
    display:block;
    font-size:0.82rem;
    font-weight:700;
    letter-spacing:0.04em;
    text-transform:uppercase;
    opacity:0.95
}
.ops-stat-card strong, .ops-stat-strip strong {
    display:block;
    font-family:var(--font-headline);
    font-size:2rem;
    margin:0.25rem 0 0.35rem
}
.ops-stat-card small {
    display:block;
    color:rgba(255, 255, 255, 0.82)
}
.ops-dashboard__stats--secondary {
    grid-template-columns:repeat(3, minmax(0, 1fr))
}
.ops-stat-strip {
    background:rgba(255, 255, 255, 0.88);
    border-radius:20px;
    padding:1.1rem 1.25rem;
    box-shadow:var(--shadow-ambient)
}
.ops-stat-strip strong {
    color:var(--on-surface);
    font-size:1.35rem
}
.ops-dashboard__grid {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:1rem
}
.ops-panel {
    background:rgba(255, 255, 255, 0.92);
    border-radius:22px;
    border:1px solid rgba(0, 101, 119, 0.08);
    box-shadow:var(--shadow-ambient);
    overflow:hidden
}
.ops-panel__header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    padding:1.2rem 1.25rem;
    border-bottom:1px solid rgba(62, 73, 76, 0.08)
}
.ops-panel__header h2 {
    font-size:1.35rem
}
.ops-panel__header a {
    color:var(--on-surface-variant);
    text-decoration:none;
    font-weight:700;
    font-size:0.92rem
}
.ops-list {
    display:flex;
    flex-direction:column
}
.ops-list__item {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    padding:1rem 1.25rem;
    border-bottom:1px solid rgba(62, 73, 76, 0.08)
}
.ops-list__item:last-child {
    border-bottom:none
}
.ops-list__item strong, .ops-list__meta strong {
    display:block
}
.ops-list__item span, .ops-list__meta span {
    color:var(--on-surface-variant);
    font-size:0.84rem
}
.ops-list__meta {
    text-align:right
}
.ops-product-mini {
    display:flex;
    align-items:center;
    gap:0.8rem
}
.ops-product-mini__thumb {
    width:44px;
    height:44px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:rgba(0, 101, 119, 0.08);
    color:var(--primary)
}
.ops-product-mini__thumb img {
    width:100%;
    height:100%;
    object-fit:cover
}
.ops-money--negative {
    color:#c62828
}
.ops-money--positive {
    color:#2e7d32
}
.ops-panel__empty {
    padding:1.4rem 1.25rem;
    color:var(--on-surface-variant)
}
.analytics-hub {
    display:flex;
    flex-direction:column;
    gap:1.75rem
}
.analytics-hub__header {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:1rem
}
.analytics-hub__eyebrow {
    color:var(--primary);
    font-size:0.82rem;
    font-weight:800;
    letter-spacing:0.08em;
    text-transform:uppercase;
    margin-bottom:0.4rem
}
.analytics-hub__subtitle {
    color:var(--on-surface-variant);
    max-width:760px;
    margin-top:0.35rem
}
.analytics-hub__filters {
    display:flex;
    gap:0.75rem;
    flex-wrap:wrap
}
.analytics-chip {
    border:none;
    border-radius:999px;
    padding:0.75rem 1rem;
    background:rgba(255, 255, 255, 0.76);
    color:var(--on-surface-variant);
    font-weight:700
}
.analytics-chip--active {
    background:linear-gradient(135deg, var(--primary), var(--primary-container));
    color:white
}
.analytics-hero {
    display:grid;
    grid-template-columns:1.5fr 0.8fr 1fr;
    gap:1.25rem
}
.analytics-hero__main {
    position:relative;
    overflow:hidden;
    border-radius:28px;
    padding:2rem;
    background:linear-gradient(135deg, var(--primary-container), var(--primary));
    color:white;
    min-height:280px
}
.analytics-hero__content {
    position:relative;
    z-index:1;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    height:100%
}
.analytics-hero__label {
    font-size:0.85rem;
    font-weight:700;
    letter-spacing:0.08em;
    text-transform:uppercase;
    opacity:0.86;
    margin-bottom:0.65rem
}
.analytics-hero__main h2 {
    font-size:clamp(2.4rem, 4vw, 4rem);
    line-height:0.95
}
.analytics-hero__trend {
    margin-top:1rem;
    display:inline-flex;
    align-items:center;
    gap:0.55rem;
    font-weight:700
}
.analytics-hero__trend.is-positive {
    color:#d6fff4
}
.analytics-hero__trend.is-negative {
    color:#ffd9d6
}
.analytics-hero__actions {
    margin-top:1.5rem;
    display:flex;
    gap:0.75rem;
    flex-wrap:wrap
}
.analytics-button {
    text-decoration:none;
    font-weight:800;
    padding:0.9rem 1.2rem;
    border-radius:14px
}
.analytics-button--light {
    background:white;
    color:var(--primary)
}
.analytics-button--ghost {
    border:1px solid rgba(255, 255, 255, 0.22);
    color:white
}
.analytics-hero__halo {
    position:absolute;
    top:-70px;
    right:-80px;
    width:260px;
    height:260px;
    border-radius:999px;
    background:rgba(255, 255, 255, 0.12);
    filter:blur(10px)
}
.analytics-hero__glyph {
    position:absolute;
    right:2rem;
    bottom:1rem;
    font-size:5rem;
    opacity:0.18
}
.analytics-hero__side {
    display:flex;
    flex-direction:column;
    gap:1.25rem
}
.analytics-mini-card, .analytics-panel, .analytics-feature {
    background:rgba(255, 255, 255, 0.92);
    border-radius:24px;
    box-shadow:var(--shadow-ambient)
}
.analytics-mini-card {
    padding:1.5rem
}
.analytics-mini-card__top {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:0.75rem;
    margin-bottom:1rem
}
.analytics-mini-card__icon {
    width:42px;
    height:42px;
    border-radius:14px;
    background:rgba(0, 101, 119, 0.1);
    color:var(--primary);
    display:flex;
    align-items:center;
    justify-content:center
}
.analytics-badge {
    font-size:0.72rem;
    font-weight:800;
    color:var(--primary);
    padding:0.4rem 0.6rem;
    border-radius:999px;
    background:rgba(0, 101, 119, 0.08)
}
.analytics-badge--warning {
    color:#ba1a1a;
    background:rgba(186, 26, 26, 0.1)
}
.analytics-mini-card p, .analytics-mini-card small {
    color:var(--on-surface-variant)
}
.analytics-mini-card h3 {
    font-size:2rem;
    margin:0.35rem 0
}
.analytics-feature {
    position:relative;
    overflow:hidden;
    min-height:280px
}
.analytics-feature img {
    width:100%;
    height:100%;
    object-fit:cover
}
.analytics-feature__overlay {
    position:absolute;
    inset:0;
    padding:1.75rem;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    background:linear-gradient(180deg, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.78));
    color:white
}
.analytics-feature__overlay p {
    color:rgba(255, 255, 255, 0.78);
    margin-top:0.35rem
}
.analytics-feature__overlay a {
    margin-top:0.9rem;
    color:#ffe170;
    text-decoration:none;
    font-weight:800
}
.analytics-grid {
    display:grid;
    grid-template-columns:1.35fr 0.85fr;
    gap:1.25rem
}
.analytics-panel {
    padding:1.5rem
}
.analytics-panel--warm {
    background:linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(255, 245, 214, 0.62))
}
.analytics-panel__header {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:1rem;
    margin-bottom:1.25rem
}
.analytics-panel__header p, .analytics-panel__hint, .analytics-panel__link {
    color:var(--on-surface-variant);
    font-size:0.92rem
}
.analytics-panel__link {
    text-decoration:none;
    font-weight:700
}
.analytics-bars {
    display:flex;
    align-items:end;
    gap:1rem;
    min-height:290px
}
.analytics-bars__item {
    flex:1;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:0.55rem
}
.analytics-bars__rail {
    width:100%;
    height:240px;
    border-radius:18px 18px 0 0;
    background:rgba(62, 73, 76, 0.08);
    position:relative;
    display:flex;
    align-items:end
}
.analytics-bars__fill {
    width:100%;
    border-radius:18px 18px 0 0;
    background:linear-gradient(180deg, #43b6cf, var(--primary))
}
.analytics-bars__item span {
    color:var(--on-surface-variant);
    font-size:0.78rem;
    font-weight:800;
    letter-spacing:0.08em
}
.analytics-bars__item strong {
    font-size:0.82rem;
    color:var(--primary)
}
.analytics-bars__item.is-current span, .analytics-bars__item.is-current strong {
    color:var(--primary)
}
.analytics-activity {
    display:flex;
    flex-direction:column;
    gap:0.85rem
}
.analytics-activity__item {
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:0.85rem;
    align-items:center;
    padding:0.95rem 0;
    border-bottom:1px solid rgba(62, 73, 76, 0.08)
}
.analytics-activity__item:last-child {
    border-bottom:none
}
.analytics-activity__dot {
    width:12px;
    height:12px;
    border-radius:999px
}
.analytics-activity__dot--success {
    background:#22c55e;
    box-shadow:0 0 12px rgba(34, 197, 94, 0.35)
}
.analytics-activity__dot--primary {
    background:var(--primary)
}
.analytics-activity__dot--warning {
    background:#e9c400
}
.analytics-activity__body span, .analytics-activity__item small {
    color:var(--on-surface-variant);
    font-size:0.84rem
}
.analytics-snapshot {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:0.9rem
}
.analytics-snapshot__item {
    background:rgba(255, 255, 255, 0.78);
    border-radius:18px;
    padding:1rem
}
.analytics-snapshot__item span {
    display:block;
    color:var(--on-surface-variant);
    font-size:0.82rem;
    margin-bottom:0.3rem
}
.analytics-snapshot__item strong {
    font-size:1.3rem
}
.analytics-snapshot__item .is-negative {
    color:#ba1a1a
}
.analytics-product-list {
    display:flex;
    flex-direction:column;
    gap:0.8rem
}
.analytics-product-list__item {
    display:flex;
    justify-content:space-between;
    gap:1rem;
    align-items:center;
    padding:1rem;
    border-radius:18px;
    background:rgba(247, 250, 252, 0.9)
}
.analytics-product-list__item span {
    color:var(--on-surface-variant);
    font-size:0.84rem
}
.analytics-empty {
    color:var(--on-surface-variant);
    padding:1rem 0
}
.analytics-kelvin {
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:2rem;
    padding:2rem;
    border-radius:28px;
    background:rgba(229, 233, 235, 0.78)
}
.analytics-kelvin__content p {
    color:var(--on-surface-variant);
    max-width:560px;
    line-height:1.7;
    margin-top:0.75rem
}
.analytics-kelvin__meter {
    margin-top:1.5rem
}
.analytics-kelvin__labels {
    display:flex;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:0.65rem;
    font-size:0.82rem;
    font-weight:800
}
.analytics-kelvin__labels strong {
    color:var(--primary)
}
.analytics-kelvin__bar {
    position:relative;
    height:10px;
    border-radius:999px;
    background:linear-gradient(to right, #ff8c00, #ffcc00, #ffffff, #87ceeb, #0000ff)
}
.analytics-kelvin__thumb {
    position:absolute;
    left:34%;
    top:50%;
    width:22px;
    height:22px;
    border-radius:999px;
    background:white;
    border:4px solid var(--primary);
    transform:translate(-50%, -50%);
    box-shadow:0 8px 24px rgba(0, 101, 119, 0.25)
}
.analytics-kelvin__presets {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:0.9rem;
    margin-top:1.5rem
}
.analytics-preset {
    padding:1rem;
    border-radius:18px;
    background:rgba(255, 255, 255, 0.88)
}
.analytics-preset.is-active {
    background:linear-gradient(135deg, var(--primary), var(--primary-container));
    color:white;
    box-shadow:0 18px 36px rgba(0, 101, 119, 0.18)
}
.analytics-preset span {
    display:block;
    margin-top:0.25rem;
    color:var(--on-surface-variant);
    font-size:0.82rem
}
.analytics-preset.is-active span {
    color:rgba(255, 255, 255, 0.78)
}
.analytics-kelvin__gallery {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:1rem
}
.analytics-kelvin__column {
    display:flex;
    flex-direction:column;
    gap:1rem
}
.analytics-kelvin__column--offset {
    padding-top:2rem
}
.analytics-kelvin__gallery img {
    width:100%;
    height:240px;
    object-fit:cover;
    border-radius:22px;
    box-shadow:var(--shadow-ambient)
}
.analytics-kelvin__card {
    min-height:120px;
    border-radius:22px;
    padding:1.2rem;
    display:flex;
    align-items:end;
    font-weight:800
}
.analytics-kelvin__card--gold {
    background:#e9c400;
    color:#221b00
}
.analytics-kelvin__card--cool {
    background:#0f4f67;
    color:white
}
@media (max-width:1080px) {
    .pos-container {
        grid-template-columns:1fr;
        gap:1.25rem;
        height:auto
    }
    .products-section, .cart-section {
        min-height:auto
    }
    .product-grid {
        max-height:38dvh
    }
    .cart {
        height:calc(100dvh - 6.9rem);
        max-height:calc(100dvh - 6.9rem)
    }
    body {
        overflow-x:hidden
    }
    main {
        padding-top:5.25rem
    }
    body:not(.sidebar-collapsed) .layout-sidebar-toggle {
        opacity:0;
        pointer-events:none
    }
    .app-sidebar {
        position:fixed;
        inset-block:0;
        inset-inline-start:0;
        height:100dvh;
        max-height:100dvh;
        box-shadow:0 24px 60px rgba(0, 0, 0, 0.18);
        z-index:30
    }
    .sidebar-close {
        display:inline-flex
    }
    body.sidebar-collapsed .app-sidebar {
        width:var(--sidebar-width);
        max-width:var(--sidebar-width);
        min-width:var(--sidebar-width);
        padding:2rem 1.5rem;
        border-right-width:1px;
        border-right-color:var(--outline-variant);
        opacity:1;
        visibility:hidden;
        pointer-events:none;
        transform:translateX(-100%)
    }
    .app-rtl.sidebar-collapsed .app-sidebar {
        transform:translateX(100%)
    }
    body:not(.sidebar-collapsed) .app-sidebar {
        opacity:1;
        visibility:visible;
        pointer-events:auto;
        transform:translateX(0)
    }
    .analytics-hero, .analytics-grid, .analytics-kelvin {
        grid-template-columns:1fr
    }
}
@media (max-width:720px) {
    main {
        padding:4.85rem 1.25rem 1.25rem
    }
    .cart {
        height:calc(100dvh - 6.1rem);
        max-height:calc(100dvh - 6.1rem);
        border-radius:20px
    }
    .cart-header {
        padding:1rem 1rem 0.9rem
    }
    .cart-header h2 {
        font-size:1.05rem
    }
    .cart-branch, .cart-customer {
        padding:0.75rem 1rem
    }
    .cart-customer {
        padding-top:0.7rem;
        padding-bottom:0.7rem
    }
    .cart-customer__label {
        margin-bottom:0.35rem;
        font-size:0.67rem
    }
    .cart-branch__field, .cart-customer__trigger {
        min-height:42px;
        padding:0.45rem 0.75rem;
        border-radius:12px
    }
    .cart-branch__icon, .cart-customer__trigger-main i, .cart-customer__trigger-caret {
        font-size:0.85rem
    }
    .cart-branch__select, .cart-customer__trigger-text {
        font-size:0.88rem
    }
    .cart-customer__row {
        gap:0.45rem
    }
    .cart-customer__add {
        width:42px;
        min-height:42px;
        border-radius:12px
    }
    .cart-items {
        padding:0.8rem 0.85rem 1rem;
        gap:0.7rem;
        min-height:18rem
    }
    .cart-item {
        direction:ltr;
        display:grid;
        grid-template-columns:auto auto auto minmax(0, 1fr) auto;
        align-items:center;
        gap:0.65rem;
        padding:0.6rem 0.7rem;
        border:1px solid rgba(62, 73, 76, 0.14);
        border-radius:16px;
        background:var(--surface-container-lowest)
    }
    .cart-item__remove {
        order:1;
        width:30px;
        height:30px;
        border-radius:10px
    }
    .item-price {
        order:2;
        color:var(--primary);
        font-size:0.92rem;
        font-weight:800;
        white-space:nowrap
    }
    .item-qty-control {
        order:3;
        gap:0.75rem;
        padding:0.35rem 0.65rem;
        border-radius:14px;
        font-size:0.8rem
    }
    .item-details {
        order:4;
        min-width:0;
        direction:rtl;
        text-align:right
    }
    .item-details h4 {
        font-size:0.9rem;
        line-height:1.3;
        margin-bottom:0.05rem;
        display:-webkit-box;
        -webkit-line-clamp:2;
        -webkit-box-orient:vertical;
        overflow:hidden
    }
    .item-details p {
        font-size:0.76rem;
        line-height:1.3;
        display:-webkit-box;
        -webkit-line-clamp:2;
        -webkit-box-orient:vertical;
        overflow:hidden
    }
    .item-img {
        order:5;
        width:46px;
        height:46px;
        border-radius:10px;
        justify-self:end
    }
    .cart-footer {
        padding:1.1rem 1rem 1rem;
        gap:0.85rem
    }
    .total-row {
        font-size:0.85rem
    }
    .total-row.grand {
        font-size:1.2rem;
        margin-top:0.25rem;
        padding-top:0.75rem
    }
    .analytics-hub__header, .ops-dashboard__header, .ops-dashboard__stats, .ops-dashboard__stats--secondary, .ops-dashboard__grid {
        grid-template-columns:1fr;
        flex-direction:column
    }
    .analytics-kelvin__presets, .analytics-kelvin__gallery, .analytics-snapshot {
        grid-template-columns:1fr
    }
    .analytics-bars {
        gap:0.55rem
    }
    .analytics-panel, .analytics-kelvin, .analytics-hero__main, .analytics-mini-card {
        padding:1.2rem
    }
    .ops-dashboard__stamp {
        width:100%;
        text-align:left
    }
    .modal-backdrop {
        padding:1rem
    }
    .customer-form__grid {
        grid-template-columns:1fr
    }
    .customer-modal__header, .customer-form {
        padding:1.25rem
    }
    .customer-modal__footer {
        flex-direction:column-reverse
    }
    .customer-modal__footer .btn {
        width:100%
    }
    .cart-customer__row {
        align-items:stretch
    }
    .cart-customer__add {
        width:48px;
        height:auto;
        min-height:42px
    }
}
.inventory-actions {
    flex-wrap:nowrap;
    justify-content:flex-end;
    align-items:center
}
.inventory-actions__buttons {
    display:flex;
    align-items:center;
    gap:0.75rem;
    flex-wrap:nowrap
}
.inventory-search {
    width:360px;
    flex:0 1 360px
}
.inventory-action-btn {
    white-space:nowrap;
    display:inline-flex;
    align-items:center;
    gap:0.45rem
}
.inventory-banner {
    display:flex;
    align-items:center;
    gap:0.75rem;
    padding:1rem 1.25rem;
    border-radius:18px;
    margin-bottom:1.5rem;
    box-shadow:var(--shadow-ambient)
}
.inventory-banner--success {
    background:rgba(0, 128, 150, 0.1);
    color:var(--primary)
}
.inventory-banner--error {
    background:rgba(198, 40, 40, 0.12);
    color:#b42318;
    border:1px solid rgba(198, 40, 40, 0.18)
}
.password-toggle-group {
    position:relative;
    display:flex;
    align-items:center
}
.password-toggle-group input {
    position:relative;
    z-index:1;
    width:100%;
    padding-inline-end:5rem
}
.password-toggle-btn {
    position:absolute;
    inset-inline-end:0.6rem;
    top:50%;
    transform:translateY(-50%);
    z-index:2;
    display:inline-flex;
    align-items:center;
    gap:0.35rem;
    border:none;
    background:transparent;
    color:var(--on-surface-variant);
    font:inherit;
    font-size:0.82rem;
    font-weight:700;
    cursor:pointer;
    pointer-events:auto;
    padding:0.35rem 0.45rem;
    border-radius:999px;
    transition:background-color 0.2s ease, color 0.2s ease
}
.password-toggle-btn:hover {
    background:rgba(0, 101, 119, 0.08);
    color:var(--primary)
}
.password-toggle-btn:focus-visible {
    outline:none;
    box-shadow:0 0 0 3px rgba(0, 101, 119, 0.14)
}
.inventory-overview {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:1rem
}
.inventory-admin-overview {
    grid-template-columns:repeat(4, minmax(0, 1fr))
}
.inventory-stat {
    background:linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(255, 255, 255, 1));
    border-radius:22px;
    padding:1.35rem 1.5rem;
    box-shadow:var(--shadow-ambient);
    border:1px solid rgba(0, 101, 119, 0.08)
}
.inventory-stat__label {
    display:inline-block;
    color:var(--on-surface-variant);
    font-size:0.85rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.06em;
    margin-bottom:0.5rem
}
.inventory-stat strong {
    display:block;
    font-family:var(--font-headline);
    font-size:2rem;
    color:var(--on-surface)
}
.inventory-stat small {
    display:block;
    margin-top:0.35rem;
    color:var(--on-surface-variant);
    font-size:0.9rem
}
.inventory-shell {
    display:flex;
    flex-direction:column
}
.inventory-categories {
    margin:1rem 0 1.35rem
}
.inventory-categories .category-tab {
    border:1px solid rgba(0, 101, 119, 0.08);
    font:inherit
}
.inventory-table-card {
    background:var(--surface-container-lowest);
    border-radius:26px;
    padding:1.5rem;
    box-shadow:var(--shadow-ambient)
}
.inventory-table-card__head {
    display:flex;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:1rem
}
.inventory-table-card__head h2 {
    font-family:var(--font-headline);
    font-size:1.35rem;
    margin-bottom:0.25rem
}
.inventory-table-card__head p {
    color:var(--on-surface-variant)
}
.inventory-grid-select {
    display:flex;
    justify-content:flex-end;
    margin-bottom:1rem
}
.inventory-grid-select label {
    display:inline-flex;
    align-items:center;
    gap:0.5rem;
    padding:0.55rem 0.8rem;
    border-radius:999px;
    background:rgba(0, 101, 119, 0.08);
    color:var(--primary);
    font-size:0.85rem;
    font-weight:800
}
.inventory-grid-select input, .inventory-grid-card__select input {
    width:1.05rem;
    height:1.05rem;
    accent-color:var(--primary)
}
.inventory-product-grid {
    display:grid;
    grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));
    gap:1.25rem
}
.inventory-grid-card {
    position:relative;
    min-height:100%;
    cursor:default;
    border:1px solid rgba(0, 101, 119, 0.08)
}
.inventory-grid-card:hover {
    transform:translateY(-5px)
}
.inventory-grid-card__select {
    position:absolute;
    top:0.8rem;
    left:0.8rem;
    z-index:3;
    width:34px;
    height:34px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    background:rgba(255, 255, 255, 0.92);
    box-shadow:0 8px 18px rgba(15, 23, 42, 0.12)
}
.inventory-grid-card__select input:disabled {
    cursor:not-allowed;
    opacity:0.4
}
.inventory-grid-card__image {
    width:100%;
    border:0;
    padding:0;
    cursor:pointer;
    color:var(--primary);
    font-size:2rem
}
.inventory-grid-card__body {
    display:flex;
    flex-direction:column;
    gap:0.55rem;
    min-height:0
}
.inventory-grid-card__body h3 {
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    min-height:2.5em;
    line-height:1.25
}
.inventory-grid-card__chips {
    display:flex;
    align-items:center;
    gap:0.45rem;
    flex-wrap:wrap
}
.inventory-grid-card__chips .inventory-chip {
    min-width:0;
    max-width:100%;
    padding:0.35rem 0.65rem;
    font-size:0.76rem
}
.inventory-grid-card__chips .inventory-stock {
    padding:0.35rem 0.65rem;
    font-size:0.76rem
}
.inventory-grid-card__footer {
    gap:0.5rem;
    align-items:flex-end
}
.inventory-grid-card__profit {
    color:#2e7d32;
    font-size:0.78rem;
    font-weight:800;
    text-align:end
}
.inventory-grid-card__actions {
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(96px, 1fr));
    gap:0.55rem;
    margin-top:auto
}
.inventory-card-action {
    min-height:40px;
    border:0;
    border-radius:12px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:0.42rem;
    padding:0.55rem 0.7rem;
    background:rgba(0, 101, 119, 0.08);
    color:var(--primary);
    font:inherit;
    font-size:0.84rem;
    font-weight:800;
    cursor:pointer;
    transition:background-color 0.2s ease, color 0.2s ease, transform 0.2s ease
}
.inventory-card-action:hover {
    transform:translateY(-1px);
    background:rgba(0, 101, 119, 0.14)
}
.inventory-card-action--primary {
    background:var(--primary);
    color:var(--on-primary)
}
.inventory-card-action--primary:hover {
    background:var(--primary-container);
    color:var(--on-primary)
}
.inventory-grid-empty {
    grid-column:1 / -1
}
.inventory-table-wrap {
    overflow-x:auto
}
.inventory-table {
    width:100%;
    border-collapse:separate;
    border-spacing:0
}
.inventory-table thead th {
    text-align:left;
    padding:0.95rem 1rem;
    color:var(--on-surface-variant);
    font-size:0.8rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:0.06em;
    border-bottom:1px solid rgba(62, 73, 76, 0.1)
}
.inventory-table tbody td {
    padding:1rem;
    vertical-align:middle;
    border-bottom:1px solid rgba(62, 73, 76, 0.08)
}
.inventory-product-cell {
    display:flex;
    align-items:center;
    gap:1rem;
    min-width:280px
}
.inventory-product-thumb {
    width:58px;
    height:58px;
    border-radius:16px;
    background:linear-gradient(135deg, rgba(0, 101, 119, 0.12), rgba(0, 140, 164, 0.18));
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    color:var(--primary);
    font-size:1.1rem;
    flex-shrink:0
}
.inventory-product-thumb img {
    width:100%;
    height:100%;
    object-fit:cover
}
.inventory-product-thumb--button {
    border:none;
    cursor:pointer
}
.inventory-product-name {
    font-weight:700;
    margin-bottom:0.2rem
}
.inventory-product-name--button {
    border:none;
    background:transparent;
    padding:0;
    cursor:pointer;
    text-align:left
}
.inventory-product-name--button:hover {
    color:var(--primary)
}
.inventory-product-desc {
    color:var(--on-surface-variant);
    font-size:0.88rem;
    max-width:420px
}
.inventory-chip {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:120px;
    padding:0.45rem 1rem;
    border-radius:999px;
    background:rgba(0, 101, 119, 0.08);
    color:var(--primary);
    font-size:0.85rem;
    font-weight:700;
    white-space:nowrap
}
.inventory-muted {
    color:var(--on-surface-variant);
    white-space:nowrap
}
.inventory-price {
    color:var(--primary);
    font-weight:800;
    white-space:nowrap
}
.inventory-stock {
    display:inline-flex;
    align-items:center;
    padding:0.45rem 0.75rem;
    border-radius:999px;
    font-size:0.85rem;
    font-weight:700;
    white-space:nowrap
}
.inventory-stock--ok {
    background:rgba(46, 125, 50, 0.12);
    color:#2e7d32
}
.inventory-stock--low {
    background:rgba(198, 40, 40, 0.12);
    color:#c62828
}
.inventory-empty {
    text-align:center;
    color:var(--on-surface-variant);
    padding:3rem 1rem
}
.inventory-empty i {
    display:block;
    font-size:2rem;
    margin-bottom:0.75rem;
    opacity:0.35
}
.inventory-row-action {
    border:none;
    background:rgba(0, 101, 119, 0.08);
    color:var(--primary);
    border-radius:12px;
    padding:0.6rem 0.8rem;
    display:inline-flex;
    align-items:center;
    gap:0.45rem;
    font-weight:700;
    cursor:pointer
}
.inventory-row-action:hover {
    background:rgba(0, 101, 119, 0.14)
}
.inventory-modal {
    width:min(100%, 760px);
    max-width:calc(100vw - 3rem);
    max-height:calc(100vh - 3rem);
    background:var(--surface-container-lowest);
    border-radius:28px;
    box-shadow:0 24px 60px rgba(0, 0, 0, 0.16);
    overflow:hidden;
    display:flex;
    flex-direction:column
}
.inventory-modal--wide {
    width:min(100%, 1020px)
}
.inventory-modal__header {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:1rem;
    padding:1.5rem 1.75rem;
    border-bottom:1px solid rgba(62, 73, 76, 0.1)
}
.inventory-modal__header h2 {
    font-size:1.7rem;
    margin-bottom:0.25rem
}
.inventory-modal__header p {
    color:var(--on-surface-variant);
    max-width:640px
}
.inventory-modal__close {
    width:42px;
    height:42px;
    border:none;
    border-radius:999px;
    background:var(--surface-container-low);
    color:var(--on-surface-variant);
    cursor:pointer
}
.inventory-form {
    display:flex;
    flex-direction:column;
    min-height:0
}
.inventory-form__layout {
    display:grid;
    grid-template-columns:240px 1fr;
    gap:1.5rem;
    padding:1.5rem 1.75rem 1.25rem;
    overflow-y:auto;
    min-height:0
}
.inventory-form__sidebar {
    display:flex;
    flex-direction:column;
    gap:1rem
}
.inventory-form__sidebar h3, .inventory-form__section h3 {
    font-size:1.35rem;
    margin-bottom:0.35rem
}
.inventory-form__sidebar p, .inventory-form__section p {
    color:var(--on-surface-variant);
    font-size:0.94rem
}
.inventory-preview-card {
    background:linear-gradient(180deg, rgba(0, 101, 119, 0.06), rgba(0, 101, 119, 0.02));
    border:1px dashed rgba(0, 101, 119, 0.18);
    border-radius:24px;
    padding:1rem
}
.inventory-preview-card__image {
    aspect-ratio:1;
    border-radius:18px;
    background:rgba(255, 255, 255, 0.7);
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    color:rgba(0, 101, 119, 0.5);
    font-size:1.8rem
}
.inventory-preview-card__image img {
    width:100%;
    height:100%;
    object-fit:cover
}
.inventory-preview-card__meta {
    display:flex;
    flex-direction:column;
    gap:0.2rem;
    margin-top:1rem
}
.inventory-preview-card__meta strong {
    font-size:1rem
}
.inventory-preview-card__meta span {
    color:var(--on-surface-variant);
    font-size:0.9rem
}
.inventory-form__content {
    display:flex;
    flex-direction:column;
    gap:1.5rem
}
.inventory-form__section {
    background:rgba(247, 250, 252, 0.75);
    border-radius:24px;
    padding:1.25rem
}

.inventory-form-tabs {
    display: flex;
    gap: 0.5rem;
    padding: 0.35rem;
    background: var(--surface-container);
    border-radius: 14px;
}

.inventory-form-tabs button {
    flex: 1;
    border: 0;
    border-radius: 10px;
    padding: 0.8rem 1rem;
    background: transparent;
    color: var(--on-surface-variant);
    cursor: pointer;
    font: inherit;
    font-weight: 700;
}

.inventory-form-tabs button.active {
    background: var(--surface-container-lowest);
    color: var(--primary);
    box-shadow: var(--shadow-ambient);
}

.inventory-data-sheet__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.inventory-data-sheet {
    display: grid;
    gap: 0.8rem;
}

.inventory-data-sheet__row {
    display: grid;
    grid-template-columns: minmax(150px, 0.8fr) minmax(200px, 1.2fr) 42px;
    align-items: end;
    gap: 0.75rem;
    padding: 0.9rem;
    border: 1px solid var(--outline-variant);
    border-radius: 14px;
}

.inventory-data-sheet__remove {
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 10px;
    background: rgba(185, 28, 28, 0.1);
    color: #b91c1c;
    cursor: pointer;
}

.inventory-data-sheet__empty {
    padding: 2rem;
}

.inventory-data-sheet-image {
    display: grid;
    gap: 1rem;
}

.inventory-data-sheet-image__preview {
    min-height: 260px;
    padding: 0.75rem;
    border: 1px solid var(--outline-variant);
    border-radius: 14px;
    background: var(--surface-container-lowest);
    display: flex;
    align-items: center;
    justify-content: center;
}

.inventory-data-sheet-image__preview img {
    display: block;
    width: 100%;
    max-height: 520px;
    object-fit: contain;
    border-radius: 8px;
}

.inventory-data-sheet-image__preview--details img {
    max-height: 65vh;
}

.inventory-details__spec-table {
    overflow: hidden;
    border: 1px solid var(--outline-variant);
    border-radius: 14px;
}

.inventory-details__spec-table > div {
    display: grid;
    grid-template-columns: minmax(130px, 0.7fr) minmax(160px, 1.3fr);
    border-bottom: 1px solid var(--outline-variant);
}

.inventory-details__spec-table > div:last-child {
    border-bottom: 0;
}

.inventory-details__spec-table span,
.inventory-details__spec-table strong {
    padding: 0.85rem 1rem;
}

.inventory-details__spec-table span {
    background: var(--surface-container);
    color: var(--on-surface-variant);
}

@media (max-width: 700px) {
    .inventory-data-sheet__heading {
        align-items: stretch;
        flex-direction: column;
    }

    .inventory-data-sheet__row {
        grid-template-columns: 1fr;
    }
}
.inventory-form__specs {
    display:grid;
    grid-template-columns:280px 1fr;
    gap:1rem;
    margin-top:1rem
}
.inventory-tip-card {
    border-radius:20px;
    padding:1rem;
    background:rgba(0, 101, 119, 0.08);
    color:var(--primary)
}
.inventory-tip-card strong {
    display:flex;
    align-items:center;
    gap:0.5rem;
    margin-bottom:0.5rem
}
.inventory-tip-card p {
    color:var(--on-surface-variant);
    font-size:0.92rem
}
.inventory-spec-metrics {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:0.9rem
}
.inventory-spec-pill {
    border-radius:18px;
    background:white;
    padding:1rem;
    border:1px solid rgba(62, 73, 76, 0.08)
}
.inventory-spec-pill span {
    display:block;
    color:var(--on-surface-variant);
    font-size:0.82rem;
    margin-bottom:0.3rem
}
.inventory-spec-pill strong {
    font-size:1.05rem
}
.inventory-form__grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:1rem;
    margin-top:1rem
}
.inventory-field {
    display:flex;
    flex-direction:column;
    gap:0.45rem
}
.inventory-field--full {
    grid-column:1 / -1
}
.inventory-field label {
    font-size:0.82rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:0.05em;
    color:var(--on-surface-variant)
}
.inventory-field input, .inventory-field select, .inventory-field textarea {
    width:100%;
    border:1px solid rgba(62, 73, 76, 0.14);
    background:#f0f4f6;
    border-radius:14px;
    padding:0.95rem 1rem;
    color:var(--on-surface);
    font-family:var(--font-body)
}
.inventory-field select {
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    padding-right:2.75rem
}
.inventory-select {
    position:relative;
    border:1px solid rgba(62, 73, 76, 0.14);
    border-radius:14px;
    background:#f0f4f6;
    transition:border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease
}
.inventory-select:hover {
    background:#edf3f5
}
.inventory-select:focus-within {
    border-color:var(--primary);
    box-shadow:0 0 0 4px rgba(0, 101, 119, 0.12);
    background:white
}
.inventory-select i {
    position:absolute;
    right:1rem;
    top:50%;
    transform:translateY(-50%);
    color:var(--primary);
    pointer-events:none;
    font-size:0.85rem
}
.inventory-select select {
    border:none;
    background:transparent;
    box-shadow:none
}
.inventory-select select:focus {
    box-shadow:none
}
.inventory-upload {
    position:relative;
    border:1px dashed rgba(0, 101, 119, 0.22);
    background:rgba(0, 101, 119, 0.04);
    border-radius:18px;
    overflow:hidden
}
.inventory-upload input[type="file"] {
    position:absolute;
    inset:0;
    opacity:0;
    cursor:pointer;
    z-index:1
}
.inventory-upload__content {
    display:flex;
    align-items:center;
    gap:0.9rem;
    padding:1rem 1.1rem
}
.inventory-upload__content i {
    width:42px;
    height:42px;
    border-radius:14px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(0, 101, 119, 0.12);
    color:var(--primary)
}
.inventory-upload__content strong {
    display:block;
    margin-bottom:0.15rem
}
.inventory-upload__content span {
    color:var(--on-surface-variant);
    font-size:0.88rem
}
.safa-pagination {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    flex-wrap:wrap
}
.safa-pagination__summary {
    color:#8a94a6;
    font-size:0.95rem
}
.safa-pagination__controls {
    display:inline-flex;
    align-items:center;
    gap:0.4rem;
    padding:0.3rem;
    border-radius:16px;
    background:rgba(0, 101, 119, 0.06)
}
.safa-pagination__button, .safa-pagination__page, .safa-pagination__ellipsis {
    min-width:38px;
    height:38px;
    border:none;
    border-radius:12px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-family:var(--font-body);
    font-size:0.9rem;
    font-weight:700
}
.safa-pagination__button, .safa-pagination__page {
    background:white;
    color:var(--on-surface-variant);
    cursor:pointer;
    transition:transform 0.2s ease, background-color 0.2s ease, color 0.2s ease
}
.safa-pagination__button:hover, .safa-pagination__page:hover {
    color:var(--primary);
    transform:translateY(-1px)
}
.safa-pagination__page--active {
    background:linear-gradient(135deg, var(--primary), var(--primary-container));
    color:white;
    box-shadow:0 10px 24px rgba(0, 101, 119, 0.18)
}
.safa-pagination__button--disabled {
    background:rgba(255, 255, 255, 0.6);
    color:#b0b8c5
}
.safa-pagination__ellipsis {
    color:#8a94a6
}
.inventory-field textarea {
    min-height:130px;
    resize:vertical
}
.inventory-field input:focus, .inventory-field select:focus, .inventory-field textarea:focus {
    outline:none;
    border-color:var(--primary);
    box-shadow:0 0 0 4px rgba(0, 101, 119, 0.12)
}
.inventory-field__error {
    color:#c62828;
    font-size:0.85rem
}
.inventory-modal__footer {
    flex-shrink:0;
    display:flex;
    justify-content:flex-end;
    gap:0.75rem;
    padding:1.25rem 1.75rem 1.5rem;
    background:rgba(241, 244, 246, 0.85);
    border-top:1px solid rgba(62, 73, 76, 0.08)
}
.inventory-admin-table-wrap {
    overflow-x:auto
}
.inventory-admin-table th,
.inventory-admin-table td {
    white-space:nowrap
}
.inventory-admin-table th:first-child,
.inventory-admin-table td:first-child {
    min-width:280px
}
.inventory-admin-qty {
    min-width:54px;
    padding:0.45rem 0.7rem;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(62, 73, 76, 0.08);
    color:var(--on-surface-variant);
    font-weight:800
}
.inventory-admin-qty.is-active {
    background:rgba(0, 101, 119, 0.12);
    color:var(--primary)
}
.inventory-admin-empty {
    min-height:220px;
    display:grid;
    place-items:center;
    gap:0.75rem;
    color:var(--on-surface-variant);
    text-align:center
}
.inventory-admin-empty i {
    font-size:2rem;
    opacity:0.4
}
.inventory-admin-modal-grid {
    display:grid;
    grid-template-columns:minmax(240px, 300px) minmax(0, 1fr);
    gap:1.25rem;
    padding:1.5rem 1.75rem 0
}
.inventory-admin-product-card {
    display:grid;
    align-content:start;
    gap:1rem;
    padding:1.1rem;
    border-radius:22px;
    background:linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(241, 244, 246, 0.94));
    border:1px solid rgba(0, 101, 119, 0.08);
    box-shadow:var(--shadow-ambient)
}
.inventory-admin-product-card h3 {
    font-family:var(--font-headline);
    font-size:1.35rem
}
.inventory-admin-product-meta {
    display:grid;
    gap:0.8rem
}
.inventory-import {
    display:flex;
    flex-direction:column;
    min-height:0
}
.inventory-import__notice {
    display:flex;
    align-items:center;
    gap:0.7rem;
    margin:1.25rem 1.75rem 0;
    padding:1rem 1.1rem;
    border-radius:16px;
    background:rgba(0, 140, 164, 0.08);
    color:var(--primary)
}
.inventory-import__steps {
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:0.75rem;
    padding:1.25rem 1.75rem 0
}
.inventory-step {
    display:flex;
    align-items:center;
    gap:0.6rem;
    color:var(--on-surface-variant);
    font-size:0.92rem;
    padding:0.75rem 0.9rem;
    border-radius:16px;
    background:rgba(241, 244, 246, 0.8)
}
.inventory-step span {
    width:28px;
    height:28px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(62, 73, 76, 0.08);
    font-weight:800
}
.inventory-step--active {
    color:var(--primary);
    background:rgba(0, 101, 119, 0.08)
}
.inventory-step--active span {
    background:var(--primary);
    color:white
}
.inventory-import__body {
    display:grid;
    grid-template-columns:1.4fr 1fr;
    gap:1.25rem;
    padding:1.5rem 1.75rem;
    overflow-y:auto;
    min-height:0
}
.inventory-import__dropzone {
    border:1px dashed rgba(0, 101, 119, 0.22);
    border-radius:24px;
    padding:1.5rem;
    background:linear-gradient(180deg, rgba(0, 101, 119, 0.04), rgba(0, 101, 119, 0.01))
}
.inventory-import__icon {
    width:56px;
    height:56px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(0, 101, 119, 0.12);
    color:var(--primary);
    font-size:1.3rem;
    margin-bottom:1rem
}
.inventory-import__dropzone h3 {
    font-size:1.2rem;
    margin-bottom:0.4rem
}
.inventory-import__dropzone p {
    color:var(--on-surface-variant);
    margin-bottom:1rem
}
.inventory-import__dropzone input[type="file"] {
    width:100%;
    border:1px solid rgba(62, 73, 76, 0.14);
    border-radius:14px;
    padding:0.85rem 1rem;
    background:white
}
.inventory-import__file {
    margin-top:1rem;
    display:inline-flex;
    align-items:center;
    gap:0.6rem;
    padding:0.65rem 0.9rem;
    border-radius:14px;
    background:white;
    color:var(--primary);
    font-weight:700
}
.inventory-import__info {
    display:flex;
    flex-direction:column;
    gap:1rem
}
.inventory-mapping-card {
    margin-top:1rem;
    border-radius:24px;
    padding:1.25rem;
    background:rgba(247, 250, 252, 0.82)
}
.inventory-mapping-card__title {
    font-size:0.82rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:0.08em;
    color:var(--on-surface-variant);
    margin-bottom:0.9rem
}
.inventory-mapping-row {
    display:grid;
    grid-template-columns:1fr auto 1fr;
    gap:1rem;
    align-items:center;
    padding:1rem;
    border-radius:18px;
    background:white;
    border:1px solid rgba(62, 73, 76, 0.08)
}
.inventory-mapping-row + .inventory-mapping-row {
    margin-top:0.75rem
}
.inventory-mapping-row--required {
    border-color:rgba(198, 40, 40, 0.22);
    background:rgba(198, 40, 40, 0.04)
}
.inventory-mapping-row__label {
    display:block;
    color:var(--on-surface-variant);
    font-size:0.76rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:0.06em;
    margin-bottom:0.35rem
}
.inventory-mapping-row__select select {
    width:100%;
    border:1px solid rgba(62, 73, 76, 0.14);
    background:#f0f4f6;
    border-radius:12px;
    padding:0.8rem 0.9rem
}
.inventory-import__preview {
    border-radius:24px;
    background:rgba(247, 250, 252, 0.85);
    padding:1.25rem
}
.inventory-import__preview-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:1rem
}
.inventory-import__preview-header span {
    color:var(--on-surface-variant);
    font-size:0.82rem
}
.inventory-import__preview-product {
    display:flex;
    gap:0.9rem;
    align-items:center;
    background:white;
    border-radius:18px;
    padding:1rem;
    margin-bottom:1rem
}
.inventory-import__preview-thumb {
    width:52px;
    height:52px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(62, 73, 76, 0.08);
    color:var(--on-surface-variant)
}
.inventory-import__preview-product span {
    display:block;
    color:var(--on-surface-variant);
    font-size:0.8rem
}
.inventory-import__preview-product strong {
    display:block;
    margin:0.2rem 0 0.35rem
}
.inventory-import__preview-meta {
    display:flex;
    gap:0.75rem;
    color:var(--primary);
    font-weight:700;
    font-size:0.85rem
}
.inventory-import__stats {
    display:grid;
    grid-template-columns:1fr;
    gap:0.75rem
}
.inventory-import__stats div {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:0.85rem 0.95rem;
    border-radius:16px;
    background:white
}
.inventory-import__stats span {
    color:var(--on-surface-variant);
    font-size:0.88rem
}
.inventory-import__stats strong {
    font-size:1rem
}
.inventory-modal--details {
    width:min(100%, 900px)
}
.inventory-details {
    padding:1.5rem 1.75rem;
    overflow-y:auto
}
.inventory-details__hero {
    display:grid;
    grid-template-columns:320px 1fr;
    gap:1.5rem
}
.inventory-details__image {
    background:linear-gradient(135deg, rgba(0, 101, 119, 0.1), rgba(0, 140, 164, 0.18));
    border-radius:26px;
    min-height:300px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    color:var(--primary);
    font-size:2rem
}
.inventory-details__image img {
    width:100%;
    height:100%;
    object-fit:cover
}
.inventory-details__summary {
    display:flex;
    flex-direction:column;
    gap:1rem
}
.inventory-details__topline {
    display:flex;
    align-items:center;
    gap:0.75rem;
    flex-wrap:wrap
}
.inventory-details__numbers {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:1rem
}
.inventory-details__numbers div {
    background:rgba(247, 250, 252, 0.85);
    border-radius:18px;
    padding:1rem
}
.inventory-details__numbers span, .inventory-detail-box span {
    display:block;
    color:var(--on-surface-variant);
    font-size:0.82rem;
    margin-bottom:0.35rem
}
.inventory-details__numbers strong, .inventory-detail-box strong {
    font-size:1.1rem
}
.inventory-details__summary p {
    color:var(--on-surface-variant);
    line-height:1.7
}
.inventory-details__meta {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:1rem;
    margin-top:1.25rem
}
.inventory-detail-box {
    background:rgba(247, 250, 252, 0.85);
    border-radius:18px;
    padding:1rem
}
.inventory-import__callout {
    padding:1.25rem;
    border-radius:24px;
    background:rgba(241, 244, 246, 0.85)
}
.inventory-import__callout strong {
    display:block;
    margin-bottom:0.45rem;
    font-size:1rem
}
.inventory-import__callout p {
    color:var(--on-surface-variant)
}
.inventory-import__actions {
    display:flex;
    justify-content:flex-start
}
.settings-page {
    direction:ltr
}
.settings-page__header {
    margin-bottom:1rem
}
.settings-page__subtitle {
    color:var(--on-surface-variant);
    margin-top:0.3rem;
    max-width:820px
}
.settings-grid {
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:1rem
}
.settings-card {
    background:var(--surface-container-lowest);
    border-radius:16px;
    box-shadow:var(--shadow-ambient);
    overflow:hidden
}
.settings-card--wide {
    grid-row:span 2
}
.settings-card__header {
    padding:1.1rem 1.25rem;
    border-bottom:1px solid var(--surface-container-low)
}
.settings-card__header p {
    color:var(--on-surface-variant);
    margin-top:0.2rem;
    font-size:0.9rem
}
.settings-form {
    display:flex;
    flex-direction:column;
    min-height:0
}
.settings-form__layout {
    display:grid;
    grid-template-columns:190px 1fr;
    gap:1rem;
    padding:1rem 1.25rem
}
.settings-logo {
    display:flex;
    flex-direction:column;
    gap:0.8rem;
    width:100%;
    max-width:190px;
    min-width:0
}
.settings-logo__preview {
    width:100%;
    aspect-ratio:1;
    border-radius:16px;
    border:1px dashed rgba(62, 73, 76, 0.24);
    background:rgba(241, 244, 246, 0.7);
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    color:var(--on-surface-variant);
    font-size:1.8rem
}
.settings-logo__preview img {
    width:100%;
    height:100%;
    object-fit:cover
}
.settings-upload {
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:10px;
    background:var(--surface-container-low);
    border:1px solid rgba(62, 73, 76, 0.14);
    padding:0.65rem 0.75rem;
    font-weight:700;
    color:var(--on-surface);
    cursor:pointer
}
.settings-upload input[type="file"] {
    position:absolute;
    inset:0;
    opacity:0;
    cursor:pointer
}
.settings-upload span {
    display:inline-flex;
    align-items:center;
    gap:0.45rem;
    font-size:0.86rem
}
.settings-form__grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:0.9rem;
    min-width:0
}
.settings-form--compact {
    padding:0 1.1rem 1rem
}
.settings-switches {
    border-top:1px solid var(--surface-container-low);
    margin:0 1.25rem;
    padding:0.95rem 0 0.2rem;
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:0.75rem
}
.settings-switch {
    display:inline-flex;
    align-items:center;
    gap:0.55rem;
    color:var(--on-surface);
    font-weight:600;
    font-size:0.88rem
}
.settings-switch input[type="checkbox"] {
    width:18px;
    height:18px;
    accent-color:var(--primary)
}
.settings-form__footer {
    padding:0.9rem 1.25rem 1.15rem;
    display:flex;
    justify-content:flex-end;
    border-top:1px solid var(--surface-container-low);
    background:rgba(241, 244, 246, 0.6)
}
.invoice-ledger {
    direction:ltr
}
.invoice-ledger__top {
    display:flex;
    justify-content:flex-end;
    margin-bottom:1.2rem
}
.invoice-ledger__search {
    width:320px;
    background:var(--surface-container-lowest);
    box-shadow:var(--shadow-ambient)
}
.invoice-ledger__search i {
    color:var(--on-surface-variant)
}
.invoice-ledger__content {
    width:100%
}
.invoice-ledger__head {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:1rem
}
.invoice-ledger__head h1 {
    font-size:2rem;
    line-height:1.1
}
.invoice-ledger__head p {
    margin-top:0.35rem;
    color:var(--on-surface-variant)
}
.invoice-ledger__head p strong {
    color:var(--primary)
}
.invoice-ledger__actions {
    display:inline-flex;
    align-items:center;
    gap:0.6rem
}
.invoice-ledger__action-btn {
    display:inline-flex;
    align-items:center;
    gap:0.5rem;
    min-height:40px
}
.invoice-ledger__action-btn--disabled {
    pointer-events:none
}
.invoice-ledger__filter-wrap {
    position:relative
}
.invoice-ledger__filter-menu {
    position:absolute;
    top:calc(100% + 0.45rem);
    right:0;
    min-width:140px;
    border-radius:10px;
    background:var(--surface-container-lowest);
    border:1px solid var(--surface-container-high);
    box-shadow:var(--shadow-ambient);
    padding:0.3rem;
    z-index:10;
    display:flex;
    flex-direction:column;
    gap:0.15rem
}
.invoice-ledger__filter-menu button {
    border:none;
    background:transparent;
    color:var(--on-surface);
    text-align:left;
    border-radius:8px;
    padding:0.45rem 0.55rem;
    font-size:0.84rem;
    font-weight:700;
    cursor:pointer
}
.invoice-ledger__filter-menu button:hover {
    background:var(--surface-container-low)
}
.invoice-ledger__filter-menu button.active {
    background:rgba(0, 101, 119, 0.14);
    color:var(--primary)
}
.invoice-ledger__stats {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:0.9rem;
    margin-bottom:1rem
}
.invoice-stat-card {
    background:var(--surface-container-lowest);
    border-radius:14px;
    box-shadow:var(--shadow-ambient);
    padding:1rem 1.15rem
}
.invoice-stat-card span {
    display:block;
    font-size:0.74rem;
    text-transform:uppercase;
    letter-spacing:0.08em;
    color:var(--on-surface-variant)
}
.invoice-stat-card strong {
    margin-top:0.3rem;
    display:block;
    font-size:1.35rem
}
.invoice-ledger__table-card {
    background:var(--surface-container-lowest);
    border-radius:16px;
    box-shadow:0 12px 40px rgba(0, 101, 119, 0.06);
    overflow:hidden
}
.invoice-ledger__table-wrap {
    overflow-x:auto
}
.invoice-ledger__table {
    width:100%;
    min-width:860px;
    border-collapse:collapse;
    text-align:left
}
.invoice-ledger__table th {
    font-size:0.72rem;
    text-transform:uppercase;
    letter-spacing:0.09em;
    font-weight:800;
    color:var(--on-surface-variant);
    background:rgba(241, 244, 246, 0.72);
    padding:1rem 1.15rem
}
.invoice-ledger__table td {
    padding:1rem 1.15rem;
    border-top:1px solid var(--surface-container-low);
    font-size:0.92rem
}
.invoice-ledger__table tbody tr:hover {
    background:var(--surface-bright)
}
.invoice-ledger__number {
    color:var(--primary);
    font-weight:800
}
.invoice-ledger__muted {
    color:var(--on-surface-variant)
}
.invoice-ledger__customer {
    display:inline-flex;
    align-items:center;
    gap:0.55rem
}
.invoice-ledger__avatar {
    width:30px;
    height:30px;
    border-radius:50%;
    background:var(--surface-container);
    color:#0b7ca3;
    font-size:0.74rem;
    font-weight:800;
    display:inline-flex;
    align-items:center;
    justify-content:center
}
.invoice-ledger__amount {
    font-weight:800
}
.invoice-ledger__status {
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:0.22rem 0.62rem;
    font-size:0.72rem;
    text-transform:uppercase;
    letter-spacing:0.05em;
    font-weight:800
}
.invoice-ledger__status--paid {
    background:rgba(8, 145, 178, 0.14);
    color:#0e7490
}
.invoice-ledger__status--pending {
    background:rgba(217, 119, 6, 0.16);
    color:#a16207
}
.invoice-ledger__status--overdue {
    background:rgba(220, 38, 38, 0.14);
    color:#b91c1c
}
.invoice-ledger__more-btn {
    width:34px;
    height:34px;
    border:none;
    border-radius:8px;
    background:transparent;
    color:var(--on-surface-variant);
    cursor:pointer
}
.invoice-ledger__more-btn:hover {
    background:var(--surface-container-low);
    color:var(--primary)
}
.invoice-ledger__actions-cell {
    display:flex;
    align-items:center;
    gap:0.3rem
}
.invoice-edit-summary {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:0.9rem;
    margin-top:0.75rem;
    padding:0 1.75rem 0.4rem
}
.invoice-edit-summary div {
    border:1px solid rgba(62, 73, 76, 0.12);
    border-radius:14px;
    padding:0.85rem 1rem;
    background:rgba(241, 244, 246, 0.45)
}
.invoice-edit-summary span {
    display:block;
    color:var(--on-surface-variant);
    font-size:0.78rem;
    margin-bottom:0.3rem
}
.invoice-edit-summary strong {
    display:block;
    color:var(--on-surface);
    font-size:1rem;
    font-weight:800
}
.invoice-history-list {
    padding:0 1.75rem 1rem;
    display:flex;
    flex-direction:column;
    gap:0.9rem;
    max-height:420px;
    overflow:auto
}
.invoice-history-item {
    border:1px solid rgba(62, 73, 76, 0.12);
    border-radius:16px;
    padding:1rem;
    background:rgba(241, 244, 246, 0.35)
}
.invoice-history-item__head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:0.75rem
}
.invoice-history-item__head strong {
    color:var(--on-surface);
    font-size:0.95rem
}
.invoice-history-item__head span {
    color:var(--on-surface-variant);
    font-size:0.8rem
}
.invoice-history-item__body {
    display:flex;
    flex-direction:column;
    gap:0.55rem
}
.invoice-history-change {
    display:grid;
    grid-template-columns:minmax(90px, auto) 1fr auto 1fr;
    gap:0.65rem;
    align-items:center;
    font-size:0.86rem
}
.invoice-history-change span {
    color:var(--on-surface-variant);
    font-weight:700
}
.invoice-history-change strong {
    color:var(--on-surface);
    overflow-wrap:anywhere
}
.invoice-history-change i {
    color:var(--primary);
    justify-self:center
}
.invoice-history-empty {
    color:var(--on-surface-variant);
    text-align:center;
    padding:1rem
}
.invoice-ledger__empty {
    text-align:center;
    color:var(--on-surface-variant);
    padding:1.8rem 1rem
}
.invoice-ledger__footer {
    padding:1rem 1.15rem;
    border-top:1px solid var(--surface-container-low);
    background:rgba(241, 244, 246, 0.4);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:0.75rem
}
.invoice-ledger__footer span {
    font-size:0.85rem;
    color:var(--on-surface-variant)
}
.purchase-ledger__products {
    display:flex;
    flex-direction:column;
    gap:0.2rem;
    min-width:220px
}
.purchase-ledger .invoice-ledger__stats {
    grid-template-columns:repeat(4, minmax(0, 1fr))
}
.purchase-ledger__products strong {
    line-height:1.5
}
.purchase-ledger__products small {
    color:var(--on-surface-variant);
    line-height:1.5
}
.purchase-modal {
    width:min(100%, 940px)
}
.purchase-modal__form {
    min-height:0;
    display:flex;
    flex-direction:column;
    height:100%
}
.purchase-modal__body {
    padding:1.25rem 1.5rem 1rem;
    display:flex;
    flex-direction:column;
    gap:1rem;
    overflow-y:auto;
    min-height:0
}
.purchase-import {
    padding:1.2rem 1.25rem
}
.purchase-import__head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:0.8rem
}
.purchase-import__head h3 {
    font-size:1.08rem;
    margin-bottom:0.25rem
}
.purchase-import__head p, .purchase-import__hint {
    color:var(--on-surface-variant)
}
.purchase-import__hint {
    font-size:0.88rem;
    margin-bottom:0.95rem
}
.purchase-import__controls {
    display:flex;
    align-items:center;
    gap:0.75rem;
    flex-wrap:wrap
}
.purchase-import__controls input[type="file"] {
    flex:1 1 320px;
    min-width:220px
}
.purchase-import__table-wrap {
    margin-top:1rem;
    border:1px solid rgba(62, 73, 76, 0.08);
    border-radius:20px;
    overflow:hidden;
    background:#fff
}
.purchase-import__table th:last-child, .purchase-import__table td:last-child {
    width:64px;
    text-align:center
}
.purchase-import__errors {
    display:flex;
    flex-direction:column;
    gap:0.3rem
}
.purchase-import__errors span {
    color:#b42318;
    font-size:0.8rem;
    font-weight:700;
    line-height:1.4
}
.purchase-import__status {
    display:inline-flex;
    align-items:center;
    min-height:32px;
    padding:0.35rem 0.65rem;
    border-radius:999px;
    font-size:0.8rem;
    font-weight:800
}
.purchase-import__status--valid {
    background:rgba(22, 101, 52, 0.1);
    color:#166534
}
.purchase-import__summary {
    margin-top:0.9rem;
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:0.85rem
}
.purchase-import__summary > div {
    border-radius:16px;
    background:rgba(241, 248, 250, 0.9);
    border:1px solid rgba(0, 101, 119, 0.1);
    padding:0.85rem 1rem;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem
}
.purchase-import__summary span {
    color:var(--on-surface-variant);
    font-size:0.86rem
}
.purchase-import__summary strong {
    color:var(--primary);
    font-size:1.05rem
}
.purchase-picker {
    position:relative
}
.purchase-picker__search {
    background:var(--surface-container-lowest);
    border:1px solid rgba(0, 101, 119, 0.24);
    box-shadow:inset 0 0 0 1px rgba(0, 101, 119, 0.06), var(--shadow-ambient)
}
.purchase-picker__search:focus-within {
    border-color:var(--primary);
    box-shadow:0 0 0 3px rgba(0, 101, 119, 0.12), inset 0 0 0 1px rgba(0, 101, 119, 0.08)
}
.purchase-picker__hint, .purchase-picker__empty {
    margin-top:0.55rem;
    color:var(--on-surface-variant);
    font-size:0.88rem
}
.purchase-picker__results {
    margin-top:0.65rem;
    display:flex;
    flex-direction:column;
    border:1px solid rgba(62, 73, 76, 0.1);
    border-radius:18px;
    background:#fff;
    box-shadow:0 18px 40px rgba(15, 23, 42, 0.08);
    overflow:hidden;
    max-height:280px;
    overflow-y:auto
}
.purchase-picker__result {
    border:none;
    background:transparent;
    padding:0.95rem 1rem;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    cursor:pointer;
    text-align:inherit
}
.purchase-picker__result + .purchase-picker__result {
    border-top:1px solid rgba(62, 73, 76, 0.08)
}
.purchase-picker__result:hover {
    background:rgba(0, 101, 119, 0.05)
}
.purchase-picker__result span {
    display:flex;
    flex-direction:column;
    gap:0.2rem;
    min-width:0
}
.purchase-picker__result strong {
    line-height:1.5
}
.purchase-picker__result small, .purchase-picker__result em {
    color:var(--on-surface-variant);
    font-style:normal
}
.purchase-builder__table-wrap {
    border:1px solid rgba(62, 73, 76, 0.08);
    border-radius:20px;
    overflow:hidden;
    background:#fff
}
.purchase-builder__table th:last-child, .purchase-builder__table td:last-child {
    width:64px;
    text-align:center
}
.purchase-builder__product {
    display:flex;
    flex-direction:column;
    gap:0.25rem;
    min-width:190px
}
.purchase-builder__product small {
    color:var(--on-surface-variant)
}
.purchase-builder__input {
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    width:100%;
    min-width:110px;
    border:1px solid rgba(0, 101, 119, 0.34);
    border-radius:12px;
    background:var(--surface-container-lowest);
    padding:0.75rem 0.8rem;
    color:var(--on-surface);
    box-shadow:inset 0 0 0 1px rgba(0, 101, 119, 0.08);
    transition:border-color 0.2s ease, box-shadow 0.2s ease
}
.purchase-builder__input:focus {
    outline:none;
    border-color:var(--primary);
    box-shadow:0 0 0 4px rgba(0, 101, 119, 0.12)
}
.purchase-builder__input::-webkit-outer-spin-button, .purchase-builder__input::-webkit-inner-spin-button {
    margin:0
}
.purchase-builder__total {
    font-weight:800;
    color:var(--primary)
}
.purchase-builder__remove {
    width:40px;
    height:40px;
    border:none;
    border-radius:12px;
    background:rgba(198, 40, 40, 0.08);
    color:#b42318;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer
}
.purchase-builder__empty {
    text-align:center;
    color:var(--on-surface-variant);
    padding:1.4rem 1rem
}
.purchase-summary {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:1rem
}

.purchase-discount {
    display: grid;
    grid-template-columns: minmax(180px, 0.7fr) minmax(200px, 1fr);
    gap: 1rem;
    padding: 1rem;
    border: 1px solid var(--outline-variant);
    border-radius: 14px;
    background: var(--surface-container-low);
}

@media (max-width: 700px) {
    .purchase-discount {
        grid-template-columns: 1fr;
    }
}
.purchase-summary > div {
    border-radius:18px;
    background:linear-gradient(180deg, rgba(241, 248, 250, 0.92) 0%, rgba(255, 255, 255, 0.98) 100%);
    border:1px solid rgba(0, 101, 119, 0.1);
    padding:1rem 1.1rem;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem
}
.purchase-summary span {
    color:var(--on-surface-variant);
    font-size:0.88rem
}
.purchase-summary strong {
    font-size:1.2rem;
    color:var(--primary)
}
.purchase-summary__total strong {
    font-size:1.4rem
}
.purchase-modal__notes textarea {
    min-height:110px;
    resize:vertical
}
.app-rtl .purchase-picker__result, .app-rtl .purchase-ledger__products {
    text-align:right
}
.app-rtl .purchase-import__head {
    text-align:right
}
.categories-page {
    direction:ltr
}
.categories-page__header {
    display:grid;
    grid-template-columns:minmax(320px, 1fr) auto auto;
    align-items:end;
    column-gap:1rem;
    row-gap:0.8rem;
    margin-bottom:1.1rem
}
.categories-page__subtitle {
    color:var(--on-surface-variant);
    font-size:0.92rem;
    margin-top:0.3rem;
    max-width:560px
}
.categories-page__header .header-left {
    min-width:0
}
.categories-page__actions {
    display:inline-flex;
    align-items:center;
    gap:0.75rem;
    flex-wrap:nowrap
}
.categories-page__search {
    width:min(340px, 40vw);
    background-color:var(--surface-container-lowest);
    box-shadow:var(--shadow-ambient)
}
.categories-page__search i {
    color:var(--on-surface-variant)
}
.categories-filters {
    display:flex;
    flex-wrap:wrap;
    gap:0.6rem;
    margin-bottom:0
}
.categories-filters .analytics-chip {
    border:none;
    cursor:pointer;
    display:inline-flex;
    align-items:center;
    gap:0.45rem;
    white-space:nowrap
}
.categories-filters .analytics-chip span {
    display:inline-flex;
    min-width:28px;
    height:22px;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    font-size:0.72rem;
    font-weight:800;
    background:rgba(62, 73, 76, 0.12);
    color:inherit
}
.categories-page__create-btn {
    min-width:158px;
    white-space:nowrap;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:0.45rem
}
.categories-table th, .categories-table td {
    text-align:left
}
.categories-name strong {
    font-size:0.97rem;
    color:var(--on-surface)
}
.categories-desc {
    color:var(--on-surface-variant);
    max-width:460px
}
.categories-actions {
    display:inline-flex;
    align-items:center;
    gap:0.5rem
}
.inventory-row-action--danger {
    color:#b91c1c;
    background:rgba(220, 38, 38, 0.08)
}
.inventory-row-action--danger:hover {
    background:rgba(220, 38, 38, 0.14)
}
.btn-danger {
    background:linear-gradient(135deg, #d33a44, #b91c1c);
    color:#fff
}
.btn-danger:hover {
    opacity:0.92;
    transform:scale(1.02)
}
.categories-modal {
    width:min(100%, 700px);
    max-height:calc(100vh - 2rem)
}
.categories-form {
    display:flex;
    flex-direction:column;
    min-height:0
}
.categories-modal__body {
    padding:1rem 1.4rem 0.9rem;
    overflow-y:auto
}
.categories-form__grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:0.95rem
}
.categories-form .inventory-field textarea {
    min-height:120px
}
.categories-modal__footer {
    margin-top:auto
}
.categories-delete-modal {
    width:min(100%, 520px)
}
.categories-delete-content {
    padding:1rem 1.6rem 0.4rem;
    color:var(--on-surface-variant);
    text-align:center
}
.categories-delete-icon {
    width:48px;
    height:48px;
    border-radius:14px;
    margin:0 auto 0.7rem;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:1.1rem;
    background:rgba(220, 38, 38, 0.14);
    color:#c62828
}
.categories-delete-content h3 {
    color:var(--on-surface);
    margin-bottom:0.35rem
}
.invoice-preview-backdrop {
    align-items:center
}
.invoice-preview-modal {
    width:min(100%, 920px);
    max-width:calc(100vw - 2rem);
    max-height:calc(100vh - 2rem);
    border-radius:14px;
    background:#f5f7fb;
    box-shadow:0 24px 70px rgba(15, 23, 42, 0.35);
    overflow:hidden;
    display:flex;
    flex-direction:column
}
.invoice-preview-toolbar {
    flex-shrink:0;
    display:flex;
    align-items:center;
    gap:0.55rem;
    padding:0.6rem 0.9rem;
    border-bottom:1px solid rgba(148, 163, 184, 0.28);
    background:#fff
}
.invoice-preview-toolbar__btn {
    min-height:34px;
    padding:0.45rem 0.8rem;
    display:inline-flex;
    align-items:center;
    gap:0.45rem
}
.invoice-preview-sheet {
    flex:1;
    overflow-y:auto;
    background:#fff;
    margin:0.85rem;
    border-radius:8px;
    border:1px solid #e2e8f0;
    padding:1.35rem
}
.invoice-preview-head {
    display:grid;
    gap:1rem;
    border-bottom:2px solid #1f2540;
    padding-bottom:0.9rem;
    margin-bottom:1rem
}
.invoice-preview-brand {
    display:flex;
    justify-content:center
}
.invoice-preview-store__logo {
    width:180px;
    max-width:100%;
    max-height:180px;
    object-fit:contain;
    margin:0 auto
}
.invoice-preview-meta-grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:1.5rem;
    align-items:start
}
.invoice-preview-meta {
    min-width:0
}
.invoice-preview-meta p {
    margin:0.25rem 0;
    color:#334155;
    font-weight:600;
    overflow-wrap:anywhere;
    font-size:0.85rem
}
.invoice-preview-meta h3 {
    margin:0 0 0.5rem;
    font-size:1.3rem;
    color:#1f2540;
    font-weight:800
}
.invoice-preview-meta--center {
    text-align:center;
    align-self:center
}
.invoice-preview-meta--align-end {
    text-align:end
}
.invoice-preview-table {
    width:100%;
    border-collapse:collapse;
    margin-bottom:1rem
}
.invoice-preview-table th {
    background:#1f2540;
    color:#fff;
    font-size:0.85rem;
    padding:0.5rem 0.6rem
}
.invoice-preview-table td {
    border-bottom:1px solid #e5e7eb;
    padding:0.5rem 0.6rem;
    color:#1e293b;
    font-weight:600;
    font-size:0.85rem
}
.invoice-preview-empty {
    text-align:center;
    color:#64748b;
    padding:1rem
}
.invoice-preview-summary-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 2rem;
    margin-top: 1.5rem;
}
.invoice-preview-summary {
    width: 320px;
    max-width: 100%;
    margin: 0;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #f8fafc;
    overflow: hidden;
}
.invoice-preview-summary div {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    padding:0.5rem 0.75rem;
    border-bottom:1px solid #e2e8f0
}
.invoice-preview-summary div:last-child {
    border-bottom:none
}
.invoice-preview-summary span {
    color:#64748b;
    font-weight:700;
    font-size:0.85rem
}
.invoice-preview-summary strong {
    color:#111827;
    font-weight:800;
    font-size:0.85rem
}
.invoice-preview-summary__total {
    background:#eef2ff
}
.invoice-preview-summary__total strong {
    font-size:1.05rem;
    color:#0f172a
}
.invoice-preview-footer {
    margin-top:1rem;
    padding-top:1rem;
    border-top:1px dashed rgba(148, 163, 184, 0.4);
    display:flex;
    justify-content:space-between;
    gap:1rem;
    align-items:flex-end
}
.invoice-preview-note {
    flex:1;
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:0.45rem;
    padding:0;
    border-top:none;
    margin-top:0;
    color:#8f1f1f;
    font-size:0.9rem;
    font-weight:800;
    line-height:1.7
}
.invoice-preview-footer__link {
    color:#0b5cab;
    font-size:0.9rem;
    font-weight:800;
    text-decoration:none;
    word-break:break-word
}
.invoice-preview-footer__qr-wrap {
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:0.45rem;
    flex:none
}
.invoice-preview-footer__qr {
    width:112px;
    height:112px;
    object-fit:contain;
    border:1px solid #d9e2ec;
    border-radius:12px;
    padding:0.35rem;
    background:#fff
}
@media (max-width:900px) {
    .invoice-preview-meta-grid {
        grid-template-columns:1fr
    }
    .invoice-preview-meta--center {
        text-align:start;
        align-self:auto
    }
    .invoice-preview-meta--align-end {
        text-align:start
    }
}
@media print {
    body * {
        visibility:hidden !important
    }
    .invoice-preview-modal, .invoice-preview-modal * {
        visibility:visible !important
    }
    .invoice-preview-backdrop {
        position:static !important;
        background:#fff !important;
        padding:0 !important
    }
    .invoice-preview-modal {
        position:absolute;
        inset:0;
        width:100%;
        max-width:none;
        max-height:none;
        border-radius:0;
        box-shadow:none;
        background:#fff
    }
    .invoice-preview-toolbar {
        display:none !important
    }
    .invoice-preview-sheet {
        margin:0;
        border:none;
        border-radius:0;
        padding:0;
        direction: rtl !important;
        min-height: 98vh !important;
        display: flex !important;
        flex-direction: column !important;
    }
    .invoice-preview-footer {
        margin-top: auto !important;
    }
    .invoice-preview-meta-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 1.5rem !important;
    }
    .invoice-preview-meta--align-end {
        text-align: left !important; /* Force left align on the left column in Arabic print */
    }
    .invoice-preview-meta p {
        margin: 4px 0 !important;
        color: #000 !important;
    }
    .invoice-preview-meta h3 {
        color: #000 !important;
    }
    .invoice-preview-table th {
        background: #000 !important;
        color: #fff !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
    .invoice-preview-table td {
        color: #000 !important;
    }
    .invoice-preview-summary strong,
    .invoice-preview-summary span {
        color: #000 !important;
    }
    .invoice-preview-summary__total {
        background: #f1f5f9 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}
.branches-page {
    direction:ltr
}
.branches-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:1.1rem
}
.branches-header__content h1 {
    margin-bottom:0.25rem
}
.branches-header__content p {
    color:var(--on-surface-variant);
    display:inline-flex;
    align-items:center;
    gap:0.45rem;
    font-size:0.9rem
}
.branches-add-btn {
    display:inline-flex;
    align-items:center;
    gap:0.45rem
}
.branches-kpis {
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(0, 2fr);
    gap:1rem;
    margin-bottom:1rem
}
.branches-kpi-card, .branches-op-card {
    position:relative;
    border-radius:16px;
    background:var(--surface-container-lowest);
    box-shadow:var(--shadow-ambient);
    padding:1.1rem 1.25rem
}
.branches-kpi-card__label {
    font-size:0.75rem;
    text-transform:uppercase;
    letter-spacing:0.07em;
    color:var(--on-surface-variant)
}
.branches-kpi-card strong {
    display:block;
    font-size:2rem;
    margin:0.35rem 0 0.15rem
}
.branches-kpi-card small {
    color:#0f8b94;
    font-weight:700
}
.branches-kpi-card__icon {
    position:absolute;
    right:1rem;
    bottom:0.9rem;
    font-size:2.5rem;
    color:rgba(11, 124, 163, 0.12)
}
.branches-op-card {
    border-left:4px solid var(--primary)
}
.branches-op-card h2 {
    font-size:1.1rem
}
.branches-op-card p {
    margin-top:0.4rem;
    color:var(--on-surface-variant);
    line-height:1.6
}
.branches-op-card__meta {
    margin-top:0.9rem;
    display:flex;
    align-items:center;
    gap:0.5rem;
    flex-wrap:wrap
}
.branches-op-card__meta span {
    border-radius:999px;
    background:var(--surface-container-low);
    color:var(--on-surface);
    padding:0.25rem 0.6rem;
    font-size:0.72rem;
    font-weight:700;
    text-transform:uppercase
}
.branches-op-card__meta span:last-child {
    background:rgba(31, 139, 85, 0.18);
    color:#1f8b55
}
.branches-table-card .inventory-table-card__head {
    align-items:center
}
.branches-table-card__head {
    gap:1rem
}
.branches-active-filter {
    margin-top:0.2rem;
    font-size:0.82rem;
    color:var(--on-surface-variant)
}
.branches-table-head-actions {
    display:flex;
    align-items:center;
    gap:0.35rem
}
.branches-search {
    width:min(100%, 320px)
}
.branches-filter-wrap {
    position:relative
}
.branches-table-head-actions button {
    width:32px;
    height:32px;
    border:none;
    border-radius:8px;
    background:var(--surface-container-low);
    color:var(--on-surface-variant);
    cursor:pointer
}
.branches-filter-menu {
    position:absolute;
    top:calc(100% + 0.45rem);
    right:0;
    min-width:160px;
    border-radius:10px;
    background:var(--surface-container-lowest);
    border:1px solid var(--surface-container-high);
    box-shadow:var(--shadow-ambient);
    z-index:10;
    padding:0.3rem;
    display:flex;
    flex-direction:column;
    gap:0.2rem
}
.branches-filter-menu button {
    width:100%;
    height:auto;
    border:none;
    border-radius:8px;
    background:transparent;
    color:var(--on-surface);
    text-align:left;
    padding:0.45rem 0.55rem;
    font-size:0.85rem;
    font-weight:600
}
.branches-filter-menu button:hover {
    background:var(--surface-container-low)
}
.branches-filter-menu button.active {
    background:rgba(11, 124, 163, 0.14);
    color:#0b7ca3
}
.branches-table th, .branches-table td {
    text-align:left;
    vertical-align:top
}
.branches-name {
    display:inline-flex;
    align-items:center;
    gap:0.5rem
}
.branches-name__dot {
    width:8px;
    height:8px;
    border-radius:999px
}
.branches-name__dot--online {
    background:#2eb85c
}
.branches-name__dot--partial {
    background:#f59e0b
}
.branches-name__dot--offline {
    background:#ef4444
}
.branches-manager {
    display:inline-flex;
    align-items:center;
    gap:0.45rem;
    max-width:220px
}
.branches-manager__avatar {
    width:26px;
    height:26px;
    border-radius:50%;
    background:#0b7ca3;
    color:#fff;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:0.72rem;
    font-weight:700
}
.branches-staff {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:34px;
    padding:0.2rem 0.55rem;
    border-radius:999px;
    background:var(--surface-container-low);
    font-weight:700;
    font-size:0.82rem
}
.branches-status-picker {
    display:inline-flex;
    align-items:center;
    gap:0.25rem;
    padding:0.25rem;
    border-radius:999px;
    background:var(--surface-container-low)
}
.branches-status-picker button {
    border:none;
    background:transparent;
    color:var(--on-surface-variant);
    padding:0.38rem 0.7rem;
    border-radius:999px;
    font-size:0.75rem;
    font-weight:700;
    cursor:pointer
}
.branches-status-picker button.is-active {
    background:var(--surface-container-lowest);
    color:var(--primary);
    box-shadow:0 4px 10px rgba(0, 0, 0, 0.06)
}
.branches-status {
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:0.2rem 0.55rem;
    font-size:0.72rem;
    font-weight:700
}
.branches-status--online {
    color:#1f8b55;
    background:rgba(31, 139, 85, 0.16)
}
.branches-status--partial {
    color:#af6e00;
    background:rgba(245, 158, 11, 0.18)
}
.branches-status--offline {
    color:#c62828;
    background:rgba(198, 40, 40, 0.15)
}
.branches-row-actions {
    display:flex;
    flex-wrap:wrap;
    gap:0.45rem;
    min-width:235px
}
.branches-row--expanded td {
    border-bottom:none
}
.branches-expand-row td {
    padding-top:0;
    background:transparent
}
.branches-access-card {
    margin:0 0 1rem;
    border-radius:20px;
    border:1px solid rgba(0, 101, 119, 0.12);
    background:linear-gradient(180deg, rgba(241, 248, 250, 0.9) 0%, rgba(255, 255, 255, 0.98) 100%);
    overflow:hidden
}
.branches-access-card__header {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:1rem;
    padding:1.1rem 1.25rem;
    border-bottom:1px solid rgba(62, 73, 76, 0.1)
}
.branches-access-card__header h3 {
    margin-bottom:0.2rem;
    font-size:1.1rem
}
.branches-access-card__header p {
    color:var(--on-surface-variant)
}
.branches-access-card__meta {
    display:flex;
    align-items:center;
    gap:0.55rem;
    flex-wrap:wrap
}
.branches-access-grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:1rem;
    padding:1rem 1.25rem 1.25rem
}
.branches-access-panel {
    border-radius:18px;
    background:rgba(255, 255, 255, 0.92);
    border:1px solid rgba(62, 73, 76, 0.08);
    box-shadow:0 12px 32px rgba(0, 0, 0, 0.04);
    overflow:hidden
}
.branches-access-panel__head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:1rem;
    padding:1rem 1rem 0.9rem;
    border-bottom:1px solid rgba(62, 73, 76, 0.08)
}
.branches-access-panel__head h4 {
    margin-bottom:0.15rem;
    font-size:1rem
}
.branches-access-panel__head p {
    color:var(--on-surface-variant);
    font-size:0.88rem;
    max-width:340px
}
.branches-access-empty {
    padding:2rem 1rem;
    text-align:center;
    color:var(--on-surface-variant)
}
.branches-access-empty i {
    font-size:1.8rem;
    color:rgba(11, 124, 163, 0.28);
    margin-bottom:0.9rem
}
.branches-access-empty h5 {
    font-size:1rem;
    color:var(--on-surface);
    margin-bottom:0.2rem
}
.branches-access-list {
    display:flex;
    flex-direction:column;
    gap:0.8rem;
    padding:1rem
}
.branches-user-card {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    border-radius:16px;
    background:var(--surface-container-lowest);
    border:1px solid rgba(62, 73, 76, 0.08);
    padding:0.9rem 1rem
}
.branches-user-card__identity {
    display:flex;
    align-items:center;
    gap:0.75rem;
    min-width:0
}
.branches-user-card__identity strong {
    display:block
}
.branches-user-card__identity p {
    color:var(--on-surface-variant);
    font-size:0.88rem;
    overflow-wrap:anywhere
}
.branches-user-card__avatar {
    width:40px;
    height:40px;
    border-radius:50%;
    background:rgba(0, 101, 119, 0.14);
    color:var(--primary);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-weight:800
}
.branches-user-card__avatar--seller {
    background:rgba(245, 158, 11, 0.16);
    color:#af6e00
}
.branches-user-card__actions {
    display:inline-flex;
    align-items:center;
    gap:0.55rem;
    flex-shrink:0
}
.branches-user-card__edit {
    border:1px solid rgba(0, 101, 119, 0.18);
    background:rgba(0, 101, 119, 0.06);
    color:var(--primary);
    border-radius:12px;
    padding:0.6rem 0.8rem;
    font-weight:700;
    cursor:pointer;
    transition:background-color 0.2s ease, color 0.2s ease, transform 0.2s ease
}
.branches-user-card__edit:hover {
    transform:translateY(-1px);
    background:var(--primary);
    color:#fff
}
.branches-user-card__remove {
    border:none;
    background:rgba(198, 40, 40, 0.08);
    color:#b42318;
    border-radius:12px;
    padding:0.6rem 0.8rem;
    font-weight:700;
    cursor:pointer;
    flex-shrink:0
}
.inventory-field__hint {
    display:block;
    margin-top:0.35rem;
    color:var(--on-surface-variant);
    font-size:0.76rem;
    line-height:1.4
}
.branches-table-footer {
    padding:1rem 1.25rem;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:0.8rem
}
.branches-table-footer p {
    font-size:0.72rem;
    letter-spacing:0.05em;
    color:var(--on-surface-variant);
    font-weight:700
}
.branches-map-card {
    margin-top:1rem;
    border-radius:14px;
    min-height:220px;
    overflow:hidden;
    background:radial-gradient(circle at 75% 35%, rgba(255, 255, 255, 0.14), transparent 45%), repeating-linear-gradient( 120deg, rgba(255, 255, 255, 0.06) 0, rgba(255, 255, 255, 0.06) 2px, transparent 2px, transparent 18px ), linear-gradient(135deg, #4b5563 0%, #111827 100%);
    box-shadow:var(--shadow-ambient);
    display:flex;
    align-items:stretch
}
.branches-map-card__overlay {
    width:min(100%, 340px);
    background:rgba(255, 255, 255, 0.94);
    margin:1rem;
    border-radius:12px;
    padding:1rem;
    display:flex;
    flex-direction:column;
    gap:0.7rem
}
.branches-map-card__overlay p {
    color:var(--on-surface-variant);
    line-height:1.6;
    font-size:0.86rem
}
.app-rtl .invoice-ledger, .app-rtl .categories-page, .app-rtl .branches-page {
    direction:rtl
}
.app-rtl .invoice-ledger__table, .app-rtl .categories-table, .app-rtl .branches-table th, .app-rtl .branches-table td {
    text-align:right
}
.app-rtl .invoice-ledger__filter-menu, .app-rtl .branches-filter-menu {
    right:auto;
    left:0
}
.app-rtl .invoice-ledger__filter-menu button, .app-rtl .branches-filter-menu button {
    text-align:right
}
.app-rtl .branches-kpi-card__icon {
    right:auto;
    left:1rem
}
.app-rtl .branches-op-card {
    border-left:none;
    border-right:4px solid var(--primary)
}
.branches-create-modal {
    width:min(100%, 780px);
    max-height:calc(100vh - 1.25rem);
    border-radius:22px
}
.branches-create-form {
    min-height:0;
    height:100%;
    display:flex;
    flex-direction:column
}
.branches-create-body {
    padding:1rem 1.35rem 0.8rem;
    overflow-y:auto;
    min-height:0
}
.branches-create-grid {
    gap:0.9rem 1rem;
    margin-top:0
}
.branches-create-form .inventory-field label {
    color:var(--on-surface);
    font-size:0.76rem;
    letter-spacing:0.04em;
    text-transform:uppercase
}
.branches-create-form .inventory-field input, .branches-create-form .inventory-field select, .branches-create-form .inventory-field textarea {
    background:var(--surface-container-lowest);
    border-radius:12px;
    padding:0.8rem 0.9rem
}
.branches-create-form .inventory-field input:focus, .branches-create-form .inventory-field select:focus {
    border-color:var(--primary);
    box-shadow:0 0 0 3px rgba(0, 104, 122, 0.12)
}
.branches-delete-modal, .branches-assign-modal {
    width:min(100%, 680px)
}
.branches-status-confirm-modal {
    width:min(100%, 560px);
    border-radius:24px;
    overflow:hidden
}
.branches-status-confirm-modal .inventory-modal__header {
    align-items:center;
    padding:1.35rem 1.5rem 1.1rem
}
.branches-status-confirm-modal .inventory-modal__header > div {
    flex:1;
    min-width:0
}
.branches-status-confirm-modal .inventory-modal__header h2 {
    font-size:1.5rem;
    line-height:1.3
}
.branches-status-confirm-modal .inventory-modal__header p {
    max-width:none;
    font-size:0.95rem;
    line-height:1.7
}
.branches-delete-content {
    padding:1.5rem 1.75rem 0.25rem;
    text-align:center
}
.branches-delete-icon {
    width:64px;
    height:64px;
    border-radius:50%;
    margin:0 auto 1rem;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(198, 40, 40, 0.1);
    color:#b42318;
    font-size:1.35rem
}
.branches-delete-content h3 {
    margin-bottom:0.35rem
}
.branches-delete-content p {
    color:var(--on-surface-variant);
    max-width:460px;
    margin:0 auto
}
.branches-status-confirm {
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:0.85rem;
    padding:1.35rem 1.5rem 1.15rem;
    text-align:center;
    background:linear-gradient(180deg, rgba(241, 248, 250, 0.64) 0%, rgba(255, 255, 255, 0.96) 100%)
}
.branches-status-confirm__icon {
    width:72px;
    height:72px;
    margin:0;
    border-radius:22px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg, rgba(0, 101, 119, 0.16), rgba(17, 138, 177, 0.22));
    color:var(--primary);
    box-shadow:0 18px 32px rgba(0, 101, 119, 0.16);
    font-size:1.45rem
}
.branches-status-confirm h3 {
    margin:0;
    font-size:1.15rem;
    line-height:1.6;
    max-width:420px
}
.branches-status-confirm p {
    color:var(--on-surface-variant);
    max-width:420px;
    margin:0;
    line-height:1.8;
    font-size:0.95rem
}
.branches-status-confirm__target {
    margin-top:0.25rem;
    width:min(100%, 420px);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:0.9rem;
    padding:1rem 1.1rem;
    border-radius:18px;
    background:rgba(255, 255, 255, 0.96);
    border:1px solid rgba(62, 73, 76, 0.08);
    box-shadow:0 14px 28px rgba(15, 23, 42, 0.06)
}
.branches-status-confirm__target span {
    color:var(--on-surface-variant);
    font-size:0.84rem;
    font-weight:700
}
.branches-status-confirm__target .branches-status {
    padding:0.38rem 0.8rem;
    font-size:0.8rem;
    flex-shrink:0
}
.branches-status-confirm-modal .inventory-modal__footer {
    padding-top:1rem
}
.app-rtl .branches-status-confirm__target {
    direction:rtl
}
.branches-assign-body {
    display:flex;
    flex-direction:column;
    gap:1rem
}
.branches-assign-mode {
    display:inline-flex;
    gap:0.4rem;
    padding:0.3rem;
    border-radius:999px;
    background:var(--surface-container-low);
    width:fit-content
}
.branches-assign-mode button {
    border:none;
    background:transparent;
    color:var(--on-surface-variant);
    border-radius:999px;
    padding:0.55rem 0.9rem;
    font-weight:700;
    cursor:pointer
}
.branches-assign-mode button.is-active {
    background:var(--surface-container-lowest);
    color:var(--primary);
    box-shadow:0 4px 12px rgba(0, 0, 0, 0.06)
}
.branches-assign-note {
    display:flex;
    align-items:center;
    gap:0.65rem;
    border-radius:14px;
    background:rgba(0, 140, 164, 0.08);
    color:var(--primary);
    padding:0.9rem 1rem
}
.branches-create-footer {
    margin-top:auto;
    padding-top:0.9rem;
    border-top:1px solid var(--surface-container-low);
    background:var(--surface-container-low)
}
.branches-create-form .inventory-field__error {
    margin-top:0.05rem;
    font-size:0.8rem;
    color:#c62828
}
.auth-page {
    min-height:100vh;
    margin:0;
    display:grid;
    place-items:center;
    padding:1.5rem;
    background:radial-gradient(circle at top left, rgba(0, 140, 164, 0.22), transparent 30%), radial-gradient(circle at bottom right, rgba(245, 158, 11, 0.18), transparent 28%), linear-gradient(135deg, #f4f7f8 0%, #eaf0f2 100%)
}
.auth-shell {
    width:min(100%, 980px);
    display:grid;
    grid-template-columns:minmax(0, 1.1fr) minmax(360px, 0.9fr);
    border-radius:28px;
    overflow:hidden;
    box-shadow:0 30px 90px rgba(15, 23, 42, 0.14);
    background:var(--surface-container-lowest)
}
.auth-panel {
    padding:2.5rem
}
.auth-panel--brand {
    background:linear-gradient(160deg, rgba(0, 101, 119, 0.98) 0%, rgba(17, 94, 89, 0.94) 100%);
    color:white;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:1rem
}
.auth-brand-mark {
    width:72px;
    height:72px;
    border-radius:22px;
    background:rgba(255, 255, 255, 0.14);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:1.8rem
}
.auth-brand-mark img {
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:22px
}
.auth-panel--brand h1, .auth-panel--form h2 {
    margin:0
}
.auth-panel--brand p {
    max-width:440px;
    line-height:1.75;
    color:rgba(255, 255, 255, 0.82)
}
.auth-panel--form {
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:1.25rem
}
.auth-panel--form p {
    color:var(--on-surface-variant)
}
.auth-eyebrow {
    display:inline-block;
    margin-bottom:0.35rem;
    color:var(--primary);
    text-transform:uppercase;
    letter-spacing:0.08em;
    font-size:0.76rem;
    font-weight:800
}
.auth-form {
    display:flex;
    flex-direction:column;
    gap:1rem
}
.auth-field {
    display:flex;
    flex-direction:column;
    gap:0.45rem;
    font-weight:700;
    color:var(--on-surface)
}
.auth-field input {
    border:1px solid rgba(62, 73, 76, 0.16);
    border-radius:14px;
    padding:0.9rem 1rem;
    background:white;
    font:inherit
}
.auth-field input:focus {
    outline:none;
    border-color:var(--primary);
    box-shadow:0 0 0 3px rgba(0, 104, 122, 0.12)
}
.auth-check {
    display:inline-flex;
    align-items:center;
    gap:0.55rem;
    color:var(--on-surface-variant);
    position:relative;
    width:fit-content;
    cursor:pointer;
    user-select:none
}
.auth-check input[type="checkbox"] {
    position:absolute;
    inset:0;
    opacity:0;
    cursor:pointer
}
.auth-check__box {
    width:22px;
    height:22px;
    flex:0 0 22px;
    border-radius:7px;
    border:1px solid rgba(62, 73, 76, 0.22);
    background:linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(241, 244, 246, 0.95));
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:transparent;
    box-shadow:0 8px 18px rgba(15, 23, 42, 0.06);
    transition:border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, transform 0.2s ease
}
.auth-check__box i {
    font-size:0.72rem
}
.auth-check:hover .auth-check__box {
    transform:translateY(-1px);
    border-color:rgba(0, 101, 119, 0.2);
    box-shadow:0 12px 22px rgba(15, 23, 42, 0.08)
}
.auth-check input[type="checkbox"]:checked + .auth-check__box {
    border-color:rgba(0, 101, 119, 0.24);
    background:linear-gradient(135deg, var(--primary), var(--primary-container));
    color:#ffffff;
    box-shadow:0 12px 24px rgba(0, 101, 119, 0.18)
}
.auth-check input[type="checkbox"]:focus-visible + .auth-check__box {
    box-shadow:0 0 0 4px rgba(0, 101, 119, 0.12)
}
.auth-submit {
    width:100%;
    justify-content:center
}
.debts-page {
    direction:ltr
}
.debts-page__header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:1.25rem
}
.debts-page__search {
    width:300px
}
.debts-card {
    background:var(--surface-container-lowest);
    border-radius:16px;
    box-shadow:var(--shadow-ambient);
    overflow:hidden
}
.debts-table {
    width:100%;
    border-collapse:collapse
}
.debts-table th, .debts-table td {
    padding:0.9rem 1rem;
    text-align:right;
    border-bottom:1px solid var(--surface-container-low);
    font-size:0.92rem
}
.debts-table th {
    font-weight:800;
    color:var(--on-surface);
    background:#f8fbfd
}
.debts-customer {
    display:inline-flex;
    align-items:center;
    gap:0.45rem
}
.debts-customer i {
    color:#ff4d4f;
    font-size:0.8rem
}
.debts-money {
    font-weight:700
}
.debts-money--paid {
    color:#2e7d32
}
.debts-money--due {
    color:#c62828
}
.debts-status {
    display:inline-flex;
    padding:0.25rem 0.65rem;
    border-radius:999px;
    font-size:0.76rem;
    font-weight:700
}
.debts-status--settled {
    color:#1f8b55;
    background:rgba(39, 174, 96, 0.16)
}
.debts-status--active {
    color:#0b7ca3;
    background:rgba(11, 124, 163, 0.16)
}
.debts-status--overdue {
    color:#c62828;
    background:rgba(198, 40, 40, 0.14)
}
.debts-pay-btn {
    border:1px solid var(--surface-container-highest);
    background:#f6fafc;
    color:var(--on-surface);
    border-radius:10px;
    font-weight:700;
    padding:0.4rem 0.75rem;
    display:inline-flex;
    align-items:center;
    gap:0.45rem;
    cursor:pointer
}
.debts-pay-btn:disabled {
    opacity:0.45;
    cursor:not-allowed
}
.debts-empty {
    text-align:center;
    color:var(--on-surface-variant);
    padding:2rem 1rem
}
.debts-pagination {
    padding:1rem
}
.debts-modal {
    width:min(100%, 460px);
    background:#f2f8fd;
    border-radius:16px;
    box-shadow:0 24px 60px rgba(0, 0, 0, 0.18);
    overflow:hidden
}
.debts-modal__header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:1rem 1.1rem
}
.debts-modal__close {
    border:none;
    background:transparent;
    color:var(--on-surface-variant);
    cursor:pointer
}
.debts-modal__form {
    padding:0 1.1rem 1.1rem;
    display:flex;
    flex-direction:column;
    gap:0.9rem
}
.debts-modal__summary {
    background:#e8eff5;
    border-radius:10px;
    padding:0.7rem 0.9rem;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0.75rem
}
.debts-modal__summary span {
    display:block;
    color:var(--on-surface-variant);
    font-size:0.8rem
}
.debts-modal__summary strong {
    display:block;
    margin-top:0.2rem
}
.debts-field {
    display:flex;
    flex-direction:column;
    gap:0.45rem
}
.debts-field label {
    font-weight:700;
    color:var(--on-surface-variant)
}
.debts-field input, .debts-field select {
    width:100%;
    background:#f8fbff;
    border:1px solid #d0dbe7;
    border-radius:10px;
    padding:0.7rem 0.9rem
}
.debts-payment-methods {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:0.65rem
}
.debts-payment-method {
    border:1px solid rgba(62, 73, 76, 0.12);
    background:linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 251, 255, 0.96));
    color:var(--on-surface-variant);
    border-radius:16px;
    min-height:56px;
    padding:0.8rem 0.75rem;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:0.5rem;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 10px 24px rgba(15, 23, 42, 0.05);
    transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, background 0.2s ease, color 0.2s ease
}
.debts-payment-method:hover {
    transform:translateY(-1px);
    border-color:rgba(0, 101, 119, 0.16);
    box-shadow:0 14px 28px rgba(15, 23, 42, 0.08)
}
.debts-payment-method i {
    font-size:0.92rem
}
.debts-payment-method.is-active {
    border-color:rgba(0, 101, 119, 0.22);
    background:linear-gradient(135deg, rgba(0, 101, 119, 0.14), rgba(0, 128, 150, 0.06));
    color:#064e5d;
    box-shadow:0 16px 32px rgba(0, 101, 119, 0.12)
}
.debts-error {
    color:#c62828;
    font-size:0.82rem
}
.debts-modal__footer {
    margin-top:0.5rem;
    display:flex;
    justify-content:flex-start;
    gap:0.6rem
}
@media (max-width:1080px) {
    .inventory-form__layout, .inventory-import__body, .inventory-overview, .inventory-details__hero {
        grid-template-columns:1fr
    }
    .inventory-admin-overview {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }
}
@media (max-width:720px) {
    .pos-payment-method {
        padding:0.85rem 0.9rem
    }
    .debts-payment-methods {
        grid-template-columns:1fr
    }
    .inventory-admin-overview {
        grid-template-columns:1fr
    }
    .settings-grid {
        grid-template-columns:1fr
    }
    .settings-card--wide {
        grid-row:auto
    }
    .settings-form__layout {
        grid-template-columns:1fr;
        padding:0.9rem 1rem
    }
    .settings-logo {
        max-width:220px
    }
    .settings-form__grid {
        grid-template-columns:1fr
    }
    .settings-switches {
        margin:0 1rem;
        grid-template-columns:1fr
    }
    .settings-form__footer {
        padding:0.85rem 1rem 1rem
    }
    .settings-form__footer .btn {
        width:100%
    }
    .categories-page__header {
        grid-template-columns:1fr;
        align-items:stretch
    }
    .categories-page__search {
        width:100%
    }
    .categories-filters {
        flex-direction:column
    }
    .categories-filters .analytics-chip {
        width:100%;
        justify-content:space-between
    }
    .categories-actions {
        flex-direction:column;
        align-items:stretch
    }
    .categories-page__create-btn {
        width:100%
    }
    .categories-actions .inventory-row-action {
        justify-content:center
    }
    .categories-form__grid {
        grid-template-columns:1fr
    }
    .categories-modal__body {
        padding:0.9rem 1rem 0.7rem
    }
    .invoice-preview-modal {
        max-width:calc(100vw - 1rem);
        max-height:calc(100vh - 1rem)
    }
    .invoice-preview-sheet {
        margin:0.5rem;
        padding:0.85rem
    }
    .invoice-preview-meta-grid {
        grid-template-columns:1fr
    }
    .invoice-preview-meta h3 {
        font-size:1.5rem
    }
    .invoice-preview-meta--center {
        text-align:start;
        align-self:auto
    }
    .invoice-preview-meta--align-end {
        text-align:start
    }
    .invoice-preview-summary {
        max-width:100%
    }
    .invoice-preview-footer {
        flex-direction:column;
        align-items:stretch
    }
    .invoice-preview-footer__qr-wrap {
        align-items:flex-start
    }
    .invoice-ledger__top {
        justify-content:stretch
    }
    .invoice-ledger__search {
        width:100%
    }
    .invoice-ledger__head {
        flex-direction:column;
        align-items:stretch
    }
    .invoice-ledger__actions {
        width:100%;
        display:grid;
        grid-template-columns:1fr 1fr
    }
    .invoice-ledger__action-btn {
        justify-content:center
    }
    .invoice-ledger__stats {
        grid-template-columns:1fr
    }
    .purchase-ledger .invoice-ledger__stats {
        grid-template-columns:1fr
    }
    .invoice-ledger__footer {
        flex-direction:column;
        align-items:flex-start
    }
    .purchase-summary {
        grid-template-columns:1fr
    }
    .branches-header {
        flex-direction:column;
        align-items:stretch
    }
    .branches-table-card__head, .branches-table-head-actions {
        flex-direction:column;
        align-items:stretch
    }
    .branches-search {
        width:100%
    }
    .branches-kpis {
        grid-template-columns:1fr
    }
    .branches-access-card__header, .branches-access-grid, .branches-access-panel__head, .branches-user-card {
        grid-template-columns:1fr;
        flex-direction:column;
        align-items:stretch
    }
    .branches-access-grid {
        display:grid
    }
    .branches-status-picker {
        flex-wrap:wrap
    }
    .branches-row-actions {
        min-width:0
    }
    .branches-table-footer {
        flex-direction:column;
        align-items:flex-start
    }
    .branches-map-card__overlay {
        width:auto
    }
    .branches-create-modal {
        max-width:calc(100vw - 1rem);
        max-height:calc(100vh - 1rem)
    }
    .branches-delete-modal, .branches-assign-modal, .branches-status-confirm-modal {
        max-width:calc(100vw - 1rem)
    }
    .branches-status-confirm {
        padding:1rem 0.9rem 0.95rem
    }
    .branches-status-confirm__target {
        width:100%;
        padding:0.85rem 0.9rem
    }
    .branches-create-grid {
        grid-template-columns:1fr
    }
    .branches-create-body {
        padding:0.85rem 0.9rem 0.6rem
    }
    .auth-shell {
        grid-template-columns:1fr
    }
    .auth-panel {
        padding:1.5rem
    }
    .debts-page__header {
        flex-direction:column;
        align-items:stretch
    }
    .debts-page__search {
        width:100%
    }
    .debts-page .inventory-table {
        min-width:760px
    }
    .inventory-modal {
        max-width:calc(100vw - 1rem);
        max-height:calc(100vh - 1rem);
        border-radius:22px
    }
    .inventory-actions {
        justify-content:stretch;
        flex-wrap:wrap
    }
    .inventory-actions__buttons {
        width:100%;
        flex-wrap:wrap
    }
    .inventory-actions .btn, .inventory-search, .inventory-action-btn {
        width:100%
    }
    .safa-pagination {
        flex-direction:column;
        align-items:stretch
    }
    .safa-pagination__controls {
        justify-content:center;
        flex-wrap:wrap
    }
    .inventory-table-card, .inventory-modal__header, .inventory-import__steps, .inventory-import__body, .inventory-modal__footer {
        padding-left:1rem;
        padding-right:1rem
    }
    .inventory-admin-modal-grid {
        grid-template-columns:1fr;
        padding:1rem 1rem 0
    }
    .inventory-form__layout {
        padding:1rem
    }
    .inventory-form__grid, .inventory-import__steps, .inventory-form__specs, .inventory-spec-metrics, .inventory-details__numbers, .inventory-details__meta, .inventory-mapping-row {
        grid-template-columns:1fr
    }
    .inventory-mapping-row {
        justify-items:start
    }
    .inventory-modal__footer {
        flex-direction:column-reverse
    }
    .inventory-modal__footer .btn {
        width:100%
    }
    .purchase-modal__body {
        padding:1rem
    }
    .purchase-import__head, .purchase-import__controls {
        flex-direction:column;
        align-items:stretch
    }
    .purchase-import__controls input[type="file"] {
        min-width:0
    }
    .purchase-picker__result {
        flex-direction:column;
        align-items:flex-start
    }
    .purchase-import__summary {
        grid-template-columns:1fr
    }
    .purchase-builder__table {
        min-width:720px
    }
}
