/* Hide native numeric steppers across ERP forms, dialogs and dynamic grids.
   Keep number inputs and their precision/range validation intact. */
input[type="number"] {
  -moz-appearance: textfield;
  appearance: textfield;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
}

:root {
  /* IVMEGO product identity: turquoise, dark navy and white. */
  --brand-turquoise: #10c7c4;
  --brand-turquoise-dark: #079996;
  --brand-turquoise-pale: #e8fbfa;
  --brand-navy: #062e5b;
  --brand-navy-soft: #0b3b6f;
  --brand-white: #ffffff;
  --ink: var(--brand-navy);
  --muted: #667177;
  --line: #dce3e5;
  --paper: var(--brand-white);
  --canvas: #f5f8f8;
  --navy: var(--brand-navy);
  --navy-soft: var(--brand-navy-soft);
  --green: var(--brand-turquoise);
  --green-dark: var(--brand-turquoise-dark);
  --green-pale: var(--brand-turquoise-pale);
  --amber: #be7a1f;
  --shadow: 0 14px 40px rgba(20, 43, 49, .08);
  --ui-font: Inter, Aptos, "Segoe UI", system-ui, sans-serif;
  /* Card / Form UI Standard v1 tokens; extend the brand theme without replacing it. */
  --erp-space-1: 4px;
  --erp-space-2: 8px;
  --erp-space-3: 12px;
  --erp-space-4: 16px;
  --erp-space-5: 20px;
  --erp-space-6: 24px;
  --erp-control-height: 36px;
  --erp-control-height-compact: 32px;
  --erp-radius-sm: 6px;
  --erp-radius-md: 9px;
  --erp-radius-lg: 14px;
  --erp-border: var(--line);
  --erp-surface: var(--paper);
  --erp-surface-muted: #f3f6f7;
  --erp-accent: var(--brand-turquoise-dark);
  /* Quiet field focus, shared with the licensing UI; independent of brand actions. */
  --erp-focus-border: #6654ff;
  --erp-focus-halo: rgba(102, 84, 255, .12);
  --erp-focus-shadow: 0 0 0 3px var(--erp-focus-halo);
  --erp-row-hover-text: #1b3155;
  --erp-row-hover-surface: #eae7fa;
  --erp-font-default: 9pt;
  --erp-font-label: var(--erp-font-default);
  --erp-font-control: var(--erp-font-default);
  --erp-font-caption: var(--erp-font-default);
  --erp-grid-font-size: var(--erp-font-default);
  --erp-grid-font-weight: 500;
  --erp-grid-header-font-size: var(--erp-font-default);
  --erp-grid-header-font-weight: 700;
  --erp-success: #147a5b;
  --erp-warning: #9a610b;
  --erp-danger: #b23b35;
  --erp-info: #286da8;
  font-family: var(--ui-font);
  font-size: var(--erp-font-default);
  color: var(--ink);
  background: var(--canvas);
  font-synthesis: none;
}

/* Fresh-install data typography. Explicit shared view preferences take priority.
   Titles, icons and output/print design sizes retain their own visual hierarchy. */
@media screen {
  :where(.app-shell,dialog) :where(input,select,textarea,label,label > span,label > b,label > strong,th,td,th > span,td > span) {
    font-size: var(--grid-appearance-size,var(--document-form-font,var(--erp-font-default))) !important;
  }
}

/*
 * ERP data-row typography
 *
 * Keep light-theme table data consistent and readable across every module.
 * Semantic child components such as status badges retain their own colors.
 */
:root:not([data-theme="dark"]) table tbody td,
:root:not([data-theme="dark"]) .standard-table tbody tr.is-selected td,
:root:not([data-theme="dark"]) .standard-table .reference-cell {
  color: #090909;
}

/* Shared list hover: readable text on a quiet lavender surface. Keep selection,
   validation/progress rows and semantic child badges/buttons under module control. */
:root[data-theme="dark"] {
  --erp-row-hover-text: #f4f3ff;
  --erp-row-hover-surface: #29354f;
}

:root body :is(
  .standard-table, #productWorkspaceTable, .erp-data-grid,
  .stock-selection-table, .stock-excel-grid, .branch-list-table,
  .ua-user-table, .product-variant-table, .quick-stock-search-popup table,
  .document-list-table table, .recovery-list table
) > tbody > tr:where(:not(
  .is-selected, .is-active, .selected, [aria-selected="true"],
  .has-error, [data-result], .is-saving, .is-committed, .is-loading, .is-empty,
  .empty-row, [aria-disabled="true"]
)):is(:hover, :focus-visible) > td:not(.empty-row) {
  color: var(--erp-row-semantic-text, var(--erp-row-hover-text));
  background-color: var(--erp-row-hover-surface);
}

td.product-variant-quantity:is(.out, .negative) {
  --erp-row-semantic-text: var(--erp-danger);
}

/* Mail workspace scrolling and compose window. */
.mail-workspace-body > main { min-height: 0 !important; overflow: hidden; grid-template-rows: auto minmax(0, 1fr) !important; }
.mail-message-list { height: 100%; min-height: 0; max-height: 100%; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; scroll-behavior: smooth; }
.mail-workspace-body .mail-message-list { height: min(100%, 420px); align-self: start; }
.mail-compose-dialog { width: min(680px, calc(100vw - 34px)); max-width: none; padding: 0; border: 0; border-radius: 20px; color: var(--ink); background: var(--paper); box-shadow: 0 28px 90px rgba(2,25,49,.34); }
.mail-compose-dialog::backdrop { background: rgba(3,27,51,.55); backdrop-filter: blur(5px); }
.mail-compose-form { display: grid; gap: 14px; padding: 22px; }
.mail-compose-form > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.mail-compose-form h2 { margin: 4px 0 0; font-size: 21px; }
.mail-compose-form label { display: grid; gap: 6px; color: var(--ink); font-size: 9px; font-weight: 850; }
.mail-compose-form input, .mail-compose-form textarea { width: 100%; border: 1px solid var(--line); border-radius: 10px; color: var(--ink); background: var(--paper); font: inherit; font-size: 10px; }
.mail-compose-form input { min-height: 42px; padding: 0 12px; }
.mail-compose-form textarea { min-height: 210px; padding: 12px; resize: vertical; line-height: 1.55; }
.mail-compose-actions { display: flex; justify-content: flex-end; gap: 8px; }
.mail-compose-actions .button { min-width: 105px; }

:root[data-font="inter"] { --ui-font: Inter, Aptos, "Segoe UI", system-ui, sans-serif; }
:root[data-font="roboto"] { --ui-font: Roboto, "Segoe UI", Arial, sans-serif; }
:root[data-font="open-sans"] { --ui-font: "Open Sans", "Segoe UI", Arial, sans-serif; }
:root[data-font="lato"] { --ui-font: Lato, "Segoe UI", Arial, sans-serif; }
:root[data-font="helvetica"] { --ui-font: Helvetica, Arial, sans-serif; }
:root[data-font="futura"] { --ui-font: Futura, "Century Gothic", Arial, sans-serif; }
:root[data-font="garamond"] { --ui-font: Garamond, "Times New Roman", serif; }
:root[data-font="bodoni"] { --ui-font: "Bodoni 72", "Bodoni MT", Didot, "Times New Roman", serif; }
:root[data-font="avenir"] { --ui-font: Avenir, "Avenir Next", "Segoe UI", sans-serif; }
:root[data-font="times-new-roman"] { --ui-font: "Times New Roman", Times, serif; }
:root[data-font="verdana"] { --ui-font: Verdana, Geneva, sans-serif; }
:root[data-font="montserrat"] { --ui-font: Montserrat, "Segoe UI", Arial, sans-serif; }
:root[data-font="thamo"] { --ui-font: Thamo, Tahoma, "Segoe UI", sans-serif; }

#dashboardShortcutPalette { display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 0; }
#dashboardShortcutPalette span { font-size:12px;margin-right:12px; }
#dashboardShortcutPalette button { width:28px;height:28px;border:2px solid white;border-radius:50%;cursor:pointer; }
#dashboardShortcutPalette button[aria-pressed=true] { outline:2px solid var(--ink);outline-offset:2px; }
#dashboardShortcutGrid a { border-left:3px solid var(--shortcut-color,#4f9697); }
#dashboardShortcutGrid a > span,.dashboard-shortcut-option-icon { color:var(--shortcut-color,#4f9697);background:color-mix(in srgb,var(--shortcut-color,#4f9697) 12%,transparent); }
#dashboardShortcutOptionList .is-selected { border-color:var(--shortcut-color,#4f9697); }
.mail-reader-container { min-height:0; overflow:auto; padding:20px; background:var(--paper); }
.mail-reader { border:1px solid var(--line); border-radius:14px; overflow:hidden; color:var(--ink); background:var(--paper); }
.mail-reader-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 18px; border-bottom:1px solid var(--line); }
.mail-reader-toolbar > span { color:var(--brand-turquoise); font-size:10px; font-weight:800; letter-spacing:1.4px; }
.mail-reader-header { padding:20px; border-bottom:1px solid var(--line); border-left:4px solid var(--brand-turquoise); }
.mail-reader-header h2 { margin:0 0 14px; font-size:20px; line-height:1.35; overflow-wrap:anywhere; }
.mail-reader-meta { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px 20px; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.mail-reader-meta time { opacity:.7; }
.mail-reader-body { padding:24px 20px; min-height:240px; font-size:14px; line-height:1.7; overflow-wrap:anywhere; }
.mail-reader-body iframe { display:block; }
@media(max-width:760px) { .mail-reader-container { padding:10px; } .mail-reader-toolbar { flex-wrap:wrap; } .mail-reader-header,.mail-reader-body { padding:16px; } }
.mail-message-list { min-height: 0; overflow: auto; padding: 12px 20px 22px; }
.mail-message-row { display: grid; grid-template-columns: minmax(115px, 175px) minmax(0, 1fr) auto; gap: 10px; align-items: start; padding: 10px 9px; border-bottom: 1px solid #dce4e7; color: #101820; background: #fff; }
.mail-message-row.unread { border-left: 3px solid var(--brand-turquoise); color: #101820; background: #fff; }
.mail-message-row > strong, .mail-message-row b { overflow: hidden; font-size: 9px; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.mail-message-row > div { min-width: 0; align-self: start; display: grid; gap: 2px; padding: 0; line-height: 1; }
.mail-message-row > div > b { display: block; margin: 0; line-height: 1; }
.mail-message-row p { overflow: hidden; margin: 3px 0 0; color: #3d474d; font-size: 7px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.mail-message-row time { color: #4c575d; font-size: 6.5px; white-space: nowrap; }
.dashboard-mail-card .mail-message-row { width: 100%; min-height: 21px; box-sizing: border-box; grid-template-columns: minmax(72px, 35%) minmax(0, 1fr); gap: 6px; align-items: center; padding: 3px 4px; cursor: pointer; }
.dashboard-mail-card .mail-message-row:hover, .dashboard-mail-card .mail-message-row:focus-visible { background: #f4f8f8; outline: none; }
.dashboard-mail-card .mail-message-row > strong, .dashboard-mail-card .mail-message-row b { font-size: 6.5px; line-height: 1; }
.dashboard-mail-card .mail-message-row p { display: none; }
.dashboard-mail-card .mail-message-row time { display: none; }
@media (max-width: 760px) { .mail-message-row { grid-template-columns: 1fr; gap: 5px; } }

.user-settings-shortcut { width: 42px; height: 42px; flex: 0 0 auto; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 13px; color: var(--brand-navy); background: var(--paper); font-size: 15px; font-weight: 900; text-decoration: none; box-shadow: 0 5px 16px rgba(6,46,91,.08); }
.user-settings-shortcut:hover { color: white; border-color: var(--brand-turquoise); background: var(--brand-turquoise-dark); }
.preferences-page { display: grid; gap: 22px; }
.preferences-hero { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 34px 38px; border: 1px solid var(--line); border-radius: 24px; background: linear-gradient(135deg, var(--paper), var(--brand-turquoise-pale)); box-shadow: var(--shadow); }
.preferences-hero h1 { margin: 7px 0 8px; font-size: clamp(28px, 3vw, 42px); letter-spacing: -.8px; }
.preferences-hero p:last-child { max-width: 680px; margin: 0; color: var(--muted); }
.preferences-user-badge { padding: 11px 15px; border-radius: 999px; color: var(--brand-turquoise-dark); background: var(--paper); font-size: 10px; font-weight: 800; white-space: nowrap; }
.preferences-grid { display: grid; grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr); gap: 20px; }
.preference-card, .font-option-grid { padding: 26px; border: 1px solid var(--line); border-radius: 22px; background: var(--paper); box-shadow: var(--shadow); }
.preference-card { display: grid; align-content: start; gap: 24px; }
.preference-card h2 { margin: 6px 0 7px; font-size: 24px; }
.preference-card p { color: var(--muted); line-height: 1.55; }
.preference-card label { display: grid; gap: 8px; font-weight: 800; }
.preference-card small { color: var(--muted); line-height: 1.5; }
.font-option-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.font-option-grid button { min-height: 150px; display: grid; align-content: center; gap: 8px; padding: 20px; border: 2px solid transparent; border-radius: 17px; color: var(--ink); background: var(--canvas); text-align: left; transition: transform .18s, border-color .18s, background .18s; }
.font-option-grid button:hover { transform: translateY(-2px); border-color: rgba(16,199,196,.4); }
.font-option-grid button.active { border-color: var(--brand-turquoise); background: var(--brand-turquoise-pale); box-shadow: inset 0 0 0 1px rgba(16,199,196,.2); }
.font-option-grid button span { color: var(--brand-turquoise-dark); font-size: 11px; font-weight: 900; letter-spacing: .8px; text-transform: uppercase; }
.font-option-grid button strong { font-size: 18px; }
.font-option-grid button small { color: var(--muted); }
.font-option-grid [data-font-option="inter"] { font-family: Inter, sans-serif; }
.font-option-grid [data-font-option="roboto"] { font-family: Roboto, sans-serif; }
.font-option-grid [data-font-option="open-sans"] { font-family: "Open Sans", sans-serif; }
.font-option-grid [data-font-option="lato"] { font-family: Lato, sans-serif; }
.font-option-grid [data-font-option="helvetica"] { font-family: Helvetica, Arial, sans-serif; }
.font-option-grid [data-font-option="futura"] { font-family: Futura, "Century Gothic", Arial, sans-serif; }
.font-option-grid [data-font-option="garamond"] { font-family: Garamond, "Times New Roman", serif; }
.font-option-grid [data-font-option="bodoni"] { font-family: "Bodoni 72", "Bodoni MT", Didot, "Times New Roman", serif; }
.font-option-grid [data-font-option="avenir"] { font-family: Avenir, "Avenir Next", "Segoe UI", sans-serif; }
.font-option-grid [data-font-option="times-new-roman"] { font-family: "Times New Roman", Times, serif; }
.font-option-grid [data-font-option="verdana"] { font-family: Verdana, Geneva, sans-serif; }
.font-option-grid [data-font-option="montserrat"] { font-family: Montserrat, "Segoe UI", Arial, sans-serif; }
.font-option-grid [data-font-option="thamo"] { font-family: Thamo, Tahoma, "Segoe UI", sans-serif; }
@media (max-width: 900px) { .preferences-grid { grid-template-columns: 1fr; } .preferences-hero { align-items: flex-start; flex-direction: column; } }
@media (max-width: 620px) { .font-option-grid { grid-template-columns: 1fr; } .user-settings-shortcut { display: none; } }

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: var(--canvas); }
button, input, select { font: inherit; }
button { cursor: pointer; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 274px minmax(0,1fr); transition: grid-template-columns .24s ease; }
.icon-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.sidebar { position: fixed; isolation: isolate; inset: 0 auto 0 0; width: 274px; height: 100vh; height: 100dvh; min-height: 0; z-index: 20; display: flex; flex-direction: column; overflow: hidden; padding: 15px 14px 12px; color: white; background: linear-gradient(180deg, #20218f 0%, #181981 46%, #12135f 100%); border-right: 1px solid rgba(4,5,29,.58); box-shadow: 10px 0 34px rgba(9,10,52,.24); transform: translateX(0); transition: transform .24s ease, visibility .24s ease; }
.sidebar::before { content: ""; position: absolute; z-index: -2; inset: 0; pointer-events: none; background: radial-gradient(circle at 4% 12%, rgba(42,230,222,.19), transparent 29%), radial-gradient(circle at 104% 76%, rgba(110,114,255,.2), transparent 34%); }
.sidebar::after { content: ""; position: absolute; z-index: -1; inset: 0; pointer-events: none; opacity: .42; background: repeating-linear-gradient(136deg, rgba(0,0,0,.28) 0 1px, transparent 1px 34px), repeating-linear-gradient(46deg, transparent 0 68px, rgba(0,0,0,.16) 68px 69px, transparent 69px 138px); mask-image: linear-gradient(180deg, rgba(0,0,0,.78), rgba(0,0,0,.3) 58%, rgba(0,0,0,.7)); }
.brand { position: relative; display: grid; grid-template-columns: 56px minmax(0, 1fr); align-items: center; gap: 10px; flex: 0 0 auto; min-height: 62px; margin: 0 3px 14px; padding: 6px 7px 9px; border: 0; border-bottom: 1px solid rgba(181,207,210,.15); border-radius: 0; color: white; background: transparent; box-shadow: none; text-decoration: none; transition: border-color .2s ease; }
.brand:hover { border-color: rgba(64,226,220,.48); }
.brand:focus-visible { outline: 3px solid rgba(16,199,196,.32); outline-offset: 2px; }
.brand-visual { width: 56px; height: 44px; display: grid; place-items: center; overflow: visible; border-radius: 0; background: transparent; box-shadow: none; }
.brand-logo {
  display: block;
  width: 52px;
  height: 42px;
  object-fit: contain;
  filter: drop-shadow(0 3px 6px rgba(4, 5, 29, .24));
}
.brand-copy { min-width: 0; display: grid; gap: 3px; }
.brand-copy strong { overflow: hidden; color: #fff; font-size: 13px; font-weight: 900; letter-spacing: -.2px; text-overflow: ellipsis; white-space: nowrap; }
.brand-name-accent { color: #27e1d8; }
.brand-copy small { color: #c7ccff; font-size: 7px; font-weight: 700; letter-spacing: .3px; line-height: 1.35; }
.sidebar nav { display: grid; flex: 1 1 auto; min-height: 0; align-content: start; gap: 1px; overflow-x: hidden; overflow-y: auto; padding: 0 5px 13px 0; overscroll-behavior: contain; scrollbar-gutter: stable; }
.sidebar nav::-webkit-scrollbar { width: 5px; }
.sidebar nav::-webkit-scrollbar-track { background: transparent; }
.sidebar nav::-webkit-scrollbar-thumb { border: 1px solid transparent; border-radius: 999px; background: rgba(77,214,208,.32); background-clip: padding-box; }
.sidebar nav { scrollbar-color: rgba(77,214,208,.32) transparent; scrollbar-width: thin; }
.nav-group-label { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 2px 8px 6px; color: #c9cdff; font-size: 7px; font-weight: 900; letter-spacing: 1.3px; text-transform: uppercase; }
.nav-group-label b { font: inherit; }
.nav-group-label small { padding: 0; border: 0; border-radius: 0; color: #969de7; font-size: 5.5px; letter-spacing: .9px; }
.nav-group-label:first-child { margin-top: 0; }
.nav-item { position: relative; display: flex; gap: 9px; align-items: center; min-height: 36px; padding: 7px 9px; border: 0; border-radius: 6px; color: #e0e8e9; text-decoration: none; font-size: 11.5px; line-height: 1.2; outline: 0; transition: color .16s ease, background .16s ease; }
.nav-leaf-icon { width: 16px; height: 16px; flex: 0 0 16px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; color: #aeb5f4; }
.nav-item:hover { color: white; background: rgba(255,255,255,.09); }
.nav-item:hover .nav-leaf-icon { color: #b7dcda; }
.nav-item:focus-visible { outline: 2px solid rgba(41,224,218,.58); outline-offset: -2px; }
.nav-item.active { color: #fff; background: rgba(12,23,78,.38); box-shadow: inset 3px 0 #35e0da; }
.nav-item.active::after { content: none; }
.nav-item.active .nav-leaf-icon { color: #39e1dc; }
.nav-item-create { margin-top: 4px; color: #bdf5f2; background: rgba(16,199,196,.06); }
.nav-tree { min-width: 0; margin: 0; border-bottom: 1px solid rgba(176,199,201,.075); }
.nav-tree > summary { min-height: 43px; display: flex; align-items: center; gap: 10px; padding: 7px 8px; border: 0; border-radius: 6px; color: #e1e9ea; list-style: none; cursor: pointer; outline: 0; transition: color .16s ease, background .16s ease; }
.nav-tree > summary::-webkit-details-marker { display: none; }
.nav-tree > summary:hover { color: #fff; background: rgba(255,255,255,.08); }
.nav-tree > summary:focus-visible { outline: 2px solid rgba(41,224,218,.5); outline-offset: -2px; }
.nav-tree[open] > summary { color: #fff; background: rgba(7,9,58,.2); box-shadow: inset 2px 0 #35d8d2; }
.nav-tree > summary strong { min-width: 0; flex: 1; overflow: hidden; font-size: 12px; font-weight: 750; line-height: 1.15; text-overflow: ellipsis; white-space: nowrap; }
details[data-nav-group="system"] summary strong { white-space: normal; }
.nav-tree > summary i { width: 18px; height: 18px; display: grid; place-items: center; border-radius: 4px; color: #879fa2; font-size: 10px; font-style: normal; transition: color .2s ease, transform .25s ease; }
.nav-tree[open] > summary i { color: #4ce3de; transform: rotate(180deg); }
.nav-module-link { min-height: 43px; gap: 10px; padding: 7px 8px; border-bottom: 1px solid rgba(176,199,201,.075); border-radius: 6px; color: #e1e9ea; }
.nav-module-link strong { min-width: 0; flex: 1; overflow: hidden; font-size: 12px; font-weight: 750; line-height: 1.15; text-overflow: ellipsis; white-space: nowrap; }
.nav-module-link.active { background: rgba(7,9,58,.2); box-shadow: inset 2px 0 #35d8d2; }
.nav-module-icon { width: 19px; height: 19px; flex: 0 0 19px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; color: #52d8d3; }
.nav-tree-children { position: relative; display: grid; gap: 1px; margin: 1px 0 6px 16px; padding: 3px 0 4px 10px; }
.nav-tree-children::before { content: ""; position: absolute; inset: 2px auto 4px 0; width: 1px; background: rgba(98,224,219,.3); }
.nav-tree:not(.nav-tree-nested)[open] > .nav-tree-children {
  margin-top: 3px;
  padding: 7px 6px 8px 11px;
  border: 1px solid rgba(119, 134, 255, .24);
  border-left: 2px solid #2de0da;
  border-radius: 0 9px 9px 0;
  background-color: rgba(12, 15, 78, .72);
  background-image:
    linear-gradient(120deg, rgba(54, 224, 218, .08), transparent 42%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.025) 0 1px, transparent 1px 20px);
  box-shadow:
    0 9px 22px rgba(5, 5, 44, .22),
    inset 0 1px rgba(255,255,255,.06),
    inset 10px 0 28px rgba(42, 224, 218, .035);
}
.nav-tree:not(.nav-tree-nested)[open] > .nav-tree-children .nav-item { color: #d9ddff; }
.nav-tree:not(.nav-tree-nested)[open] > .nav-tree-children .nav-leaf-icon { color: #9fa9ea; }
.nav-tree:not(.nav-tree-nested)[open] > .nav-tree-children .nav-item:hover {
  color: #fff;
  background: rgba(83, 94, 190, .24);
}
.nav-tree:not(.nav-tree-nested)[open] > .nav-tree-children .nav-item.active {
  color: #fff;
  background: linear-gradient(90deg, rgba(24, 207, 201, .27), rgba(92, 99, 210, .22));
  box-shadow:
    inset 3px 0 #2ce0da,
    0 0 0 1px rgba(54, 225, 219, .28),
    0 5px 14px rgba(2, 6, 45, .16);
}
.nav-tree:not(.nav-tree-nested)[open] > .nav-tree-children .nav-item.active .nav-leaf-icon { color: #5bf3ee; }
.nav-tree:not(.nav-tree-nested)[open] > .nav-tree-children .nav-item-create {
  color: #baf8f5;
  background: rgba(24, 199, 194, .105);
}
.nav-tree:not(.nav-tree-nested)[open] > .nav-tree-children .nav-item-settings {
  color: #b8c0ee;
  border-top: 1px solid rgba(176, 185, 245, .10);
}
.nav-tree-children .nav-item { position: relative; min-height: 31px; padding: 6px 8px; border-radius: 5px; font-size: 10.75px; }
.nav-tree-children .nav-item::before { content: none; }
.nav-tree-children .nav-leaf-icon { width: 14px; height: 14px; flex-basis: 14px; }
.nav-item-settings { margin-top: 2px; color: #c3ccf4; }
.nav-tree-nested { margin: 0; }
.nav-tree-nested > summary { min-height: 36px; padding: 5px 7px; border-radius: 5px; }
.nav-tree-nested > summary strong { font-size: 11px; }
.nav-tree-nested .nav-module-icon { width: 16px; height: 16px; flex-basis: 16px; }
.nav-tree-nested > .nav-tree-children { margin-left: 17px; }
.nav-tree-deep > summary { min-height: 32px; gap: 7px; padding-inline: 5px; }
.nav-tree-deep > summary strong { font-size: 10.5px; }
.nav-tree-deep > .nav-tree-children { margin-left: 12px; padding-left: 7px; }
details[data-nav-group="inventory-stock-price-operations"] > summary strong { overflow: visible; text-overflow: clip; white-space: normal; }
.price-type-page .master-list-toolbar > div:first-child strong,.price-type-page .master-list-toolbar > div:first-child small { display: block; }
.price-type-page .master-list-toolbar > div:first-child strong { font-size: 12px; }
.price-type-page .master-list-toolbar > div:first-child small { margin-top: 4px; color: var(--muted); font-size: 8px; }
.price-type-grid table { min-width: 980px; }
.price-type-actions { display: flex; flex-wrap: wrap; gap: 5px; }
.price-type-action { min-height: 28px; padding: 5px 8px; border: 1px solid var(--line); border-radius: 7px; color: var(--brand-navy); background: var(--paper); font: inherit; font-size: 7px; font-weight: 850; cursor: pointer; }
.price-type-action:hover { border-color: var(--brand-turquoise); color: var(--brand-turquoise-dark); }
.price-type-action.danger { color: #a13d38; }
.price-type-action:disabled { opacity: .45; cursor: not-allowed; }
.price-type-default { color: #087f7d; font-weight: 900; }
.price-type-dialog { width: min(650px,calc(100vw - 28px)); }
.price-type-dialog > form { padding: 22px; }
.price-type-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; margin-top: 18px; }
.price-type-fields.single-column { grid-template-columns: 1fr; }
.price-type-fields label { display: grid; gap: 6px; color: var(--muted); font-size: 8px; font-weight: 800; }
.price-type-fields input,.price-type-fields select { min-height: 40px; width: 100%; padding: 8px 10px; border: 1px solid var(--line); border-radius: 9px; color: var(--ink); background: var(--paper); font: inherit; }
.product-price-dialog .price-type-fields input[name="effectiveFrom"]:disabled { opacity: 1; cursor: not-allowed; color: #65747b; border-color: #d5dfe2; background: #edf2f3; }
.product-price-dialog .price-type-fields input[name="effectiveFromTime"]:disabled { opacity: 1; cursor: not-allowed; color: #65747b; border-color: #d5dfe2; background: #edf2f3; }
.product-price-effective-fields { min-width: 0; display: grid; grid-template-columns: minmax(0,1fr) 108px; align-items: end; gap: 9px; }
.product-price-effective-fields label { min-width: 0; }
.product-price-dialog #productPriceDateHelp.is-immediate { padding: 9px 11px; border-left: 3px solid var(--brand-turquoise-dark); border-radius: 7px; color: #31545b; background: color-mix(in srgb,var(--brand-turquoise-pale) 62%,var(--paper)); }
.price-type-fields .price-type-check { display: flex; align-items: center; gap: 9px; min-height: 40px; color: var(--ink); }
.price-type-fields .price-type-check input { width: 17px; min-height: 17px; }
.price-type-dialog .dialog-help { padding: 10px 12px; border-radius: 9px; color: #7c5a10; background: #fff6d9; }
@media (max-width: 680px) { .price-type-fields { grid-template-columns: 1fr; }.product-price-effective-fields { grid-template-columns: minmax(0,1fr) 104px; } }
.sidebar-note { position: relative; flex: 0 0 auto; margin-top: 7px; display: flex; align-items: center; gap: 9px; padding: 8px 7px; border: 0; border-top: 1px solid rgba(170,196,198,.14); border-radius: 0; background: transparent; box-shadow: none; }
.sidebar-note strong, .sidebar-note small { display: block; }
.sidebar-note strong { font-size: 9.5px; }
.sidebar-note small { margin-top: 2px; color: #c6caf4; font-size: 7px; }
.sidebar-note .sidebar-application-version { margin-top: 4px; color: #76eee7; font-weight: 750; letter-spacing: .02em; }
.pulse { width: 9px; height: 9px; border: 2px solid rgba(255,255,255,.25); border-radius: 50%; background: #21ddd7; box-shadow: 0 0 0 5px rgba(16,199,196,.11), 0 0 16px rgba(33,221,215,.32); }

main { grid-column: 2; min-width: 0; }
.topbar { min-height: 76px; display: flex; align-items: center; gap: 24px; padding: 12px 4vw; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.92); backdrop-filter: blur(14px); position: sticky; top: 0; z-index: 10; }
.workspace-tabs { min-width: 0; min-height: 47px; display: flex; align-items: flex-end; gap: 4px; padding: 5px 0 6px; overflow-x: auto; overflow-y: hidden; border-bottom: 1px solid var(--line); background: rgba(247,250,251,.96); box-shadow: 0 5px 14px rgba(6,46,91,.04); scrollbar-color: #63c9c6 #dfe8ea; scrollbar-width: thin; -ms-overflow-style: auto; overscroll-behavior-x: contain; }
.workspace-tabs::-webkit-scrollbar { display: block; height: 6px; }
.workspace-tabs::-webkit-scrollbar-track { border-radius: 999px; background: #dfe8ea; }
.workspace-tabs::-webkit-scrollbar-thumb { border-radius: 999px; background: linear-gradient(90deg, #0aa9a5, #63d4cf); }
.workspace-tabs::-webkit-scrollbar-thumb:hover { background: #078d8b; }
.workspace-close-all { height: 36px; min-width: 68px; flex: 0 0 auto; display: flex; align-items: center; justify-content: center; gap: 4px; padding: 0 7px; border: 1px solid #092c50; border-bottom: 0; border-radius: 0 7px 0 0; color: #fff; background: #072f59; cursor: pointer; }
.workspace-close-all:hover { color: #fff; background: #0b477f; }
.workspace-close-all:focus { outline: none; }
.workspace-close-all:focus-visible { box-shadow: inset 0 0 0 2px rgba(255,255,255,.75); }
.workspace-close-all span { font-size: 15px; line-height: 1; }
.workspace-close-all strong { font-size: 7.4px; font-weight: 850; letter-spacing: 0; }
.workspace-tab { --workspace-tab-accent: #70818a; --workspace-tab-border: #c8d2d7; --workspace-tab-bg: #edf3f4; --workspace-tab-active-bg: #fff; height: 36px; min-width: 138px; max-width: 225px; display: flex; align-items: stretch; border: 1px solid var(--workspace-tab-border); border-bottom: 0; border-radius: 7px 7px 0 0; color: #43545c; background: var(--workspace-tab-bg); box-shadow: inset 0 3px var(--workspace-tab-accent); overflow: hidden; transition: color .16s ease, background .16s ease, box-shadow .16s ease; }
.workspace-tab.active { color: var(--brand-navy); background: var(--workspace-tab-active-bg); box-shadow: inset 0 4px var(--workspace-tab-accent); }
.workspace-tab.workspace-module-stock { --workspace-tab-accent: #00a99d; --workspace-tab-border: #9bded8; --workspace-tab-bg: #e9f8f6; --workspace-tab-active-bg: #f7fffe; }
.workspace-tab.workspace-module-accounts { --workspace-tab-accent: #7652b5; --workspace-tab-border: #cbbbe5; --workspace-tab-bg: #f3eefb; --workspace-tab-active-bg: #fcfaff; }
.workspace-tab.workspace-module-sales { --workspace-tab-accent: #d4474f; --workspace-tab-border: #efb6ba; --workspace-tab-bg: #fff0f1; --workspace-tab-active-bg: #fff9f9; }
.workspace-tab.workspace-module-purchasing { --workspace-tab-accent: #d88616; --workspace-tab-border: #efd0a2; --workspace-tab-bg: #fff6e9; --workspace-tab-active-bg: #fffbf5; }
.workspace-tab.workspace-module-finance { --workspace-tab-accent: #16855f; --workspace-tab-border: #a5d8c6; --workspace-tab-bg: #ecf8f3; --workspace-tab-active-bg: #f8fffc; }
.workspace-tab.workspace-module-system { --workspace-tab-accent: #52728d; --workspace-tab-border: #bdcbd6; --workspace-tab-bg: #eef3f7; --workspace-tab-active-bg: #fafcfe; }
.workspace-tab-home { min-width: 126px; color: #fff; border-color: #07838a; border-radius: 7px 7px 0 0; background: linear-gradient(135deg,#086f78,#13bdb8); }
.workspace-tab-home.active { color: #fff; background: linear-gradient(135deg,#075a65,#0d9d9c); box-shadow: inset 0 3px rgba(255,255,255,.8); }
.workspace-tab-open { min-width: 0; flex: 1; display: flex; align-items: center; gap: 7px; padding: 0 10px; border: 0; color: inherit; background: transparent; text-align: left; }
.workspace-tab-open:focus { outline: none; }
.workspace-tab-open:focus-visible { box-shadow: inset 0 0 0 2px rgba(7,131,138,.55); }
.workspace-tab-copy { min-width: 0; display: grid; gap: 1px; }
.workspace-tab-copy strong, .workspace-tab-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.workspace-tab-copy strong { font-size: 9.5px; font-weight: 850; }
.workspace-tab-copy small { color: #73838a; font-size: 7.3px; font-weight: 650; }
.workspace-tab-home .workspace-tab-copy small { color: rgba(255,255,255,.75); }
.workspace-tab-record { min-width: 185px; }
.workspace-tab-editing .workspace-tab-copy small::before { content: "●"; margin-right: 4px; color: var(--amber); }
.workspace-tab-close { width: 31px; border: 0; color: #738086; background: transparent; font-size: 16px; }
.workspace-tab-close:hover { color: #a52b24; background: #fff0ee; }
.workspace-dirty { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: var(--amber); box-shadow: 0 0 0 3px rgba(190,122,31,.12); }
:root[data-theme="dark"] .workspace-tabs { background: rgba(9,30,52,.96); }
:root[data-theme="dark"] .workspace-tab { border-color: color-mix(in srgb, var(--workspace-tab-accent) 52%, #29445d); color: #e4edf2; background: color-mix(in srgb, var(--workspace-tab-accent) 20%, #102b43); }
:root[data-theme="dark"] .workspace-tab.active { color: #fff; background: color-mix(in srgb, var(--workspace-tab-accent) 13%, #071f35); }
:root[data-theme="dark"] .workspace-tab-home { border-color: #12bdb8; background: linear-gradient(135deg,#075d68,#087f83); }
:root[data-theme="dark"] .workspace-close-all { border-color: #2a5276; color: #fff; background: #061f38; }
:root[data-theme="dark"] .workspace-tab-copy small { color: #9eb1bd; }
.menu-button { width: 42px; height: 42px; display: grid; flex: 0 0 42px; place-items: center; padding: 0; border: 1px solid transparent; border-radius: 10px; color: var(--brand-navy); background: transparent; font-size: 22px; line-height: 1; transition: color .16s ease, border-color .16s ease, background .16s ease; }
.menu-button:hover { color: var(--brand-turquoise-dark); border-color: var(--line); background: var(--brand-turquoise-pale); }
.menu-button:focus-visible { outline: 2px solid var(--brand-turquoise); outline-offset: 2px; }

@media (min-width: 1051px) {
  :root.sidebar-collapsed .app-shell { grid-template-columns: 0 minmax(0,1fr); }
  :root.sidebar-collapsed .sidebar { visibility: hidden; pointer-events: none; transform: translateX(-100%); }
}
.workspace-identity { position: relative; min-width: 190px; flex: 1; color: var(--ink); }
.workspace-identity-summary { width: fit-content; max-width: 100%; display: flex; align-items: center; gap: 8px; padding: 7px 10px; border: 1px solid transparent; border-radius: 10px; cursor: pointer; list-style: none; transition: border-color .18s ease, background .18s ease; }
.workspace-identity-summary::-webkit-details-marker { display: none; }
.workspace-identity-summary::after { content: "⌄"; width: 18px; height: 18px; display: grid; place-items: center; border-radius: 5px; color: var(--muted); font-size: 12px; transition: transform .18s ease, background .18s ease; }
.workspace-identity-summary:hover { border-color: var(--line); background: color-mix(in srgb, var(--paper) 92%, var(--green) 8%); }
.workspace-identity-summary:hover::after { color: var(--brand-navy); background: color-mix(in srgb, var(--green) 10%, transparent); }
.workspace-identity[open] .workspace-identity-summary::after { transform: rotate(180deg); }
.workspace-company { min-width: 0; display: grid; gap: 3px; }
.workspace-company small, .workspace-identity-meta small { color: var(--muted); font-size: 7px; font-weight: 850; letter-spacing: 1px; line-height: 1; }
.workspace-company strong { max-width: min(310px, 24vw); overflow: hidden; color: var(--brand-navy); font-size: 12px; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }
.workspace-identity-meta { display: flex; align-items: center; gap: 6px; }
.workspace-identity-meta > span { min-width: 76px; display: grid; gap: 3px; padding: 7px 9px; border: 1px solid var(--line); border-radius: 8px; background: color-mix(in srgb, var(--paper) 90%, var(--green) 10%); }
.workspace-identity-meta strong { max-width: 128px; overflow: hidden; color: var(--brand-navy); font-size: 9px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.workspace-license-panel { position: absolute; z-index: 130; top: calc(100% + 12px); left: 0; width: min(390px, 88vw); padding: 16px; border: 1px solid color-mix(in srgb, var(--line) 78%, var(--green) 22%); border-radius: 15px; background: var(--paper); box-shadow: 0 20px 48px rgba(6,46,91,.18); }
.workspace-license-panel::before { content: ""; position: absolute; top: -6px; left: 24px; width: 11px; height: 11px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); background: var(--paper); transform: rotate(45deg); }
.workspace-license-panel header { display: flex; align-items: center; gap: 10px; margin-bottom: 13px; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.workspace-license-panel header div { display: grid; gap: 2px; }
.workspace-license-panel header small { color: var(--green-deep); font-size: 8px; font-weight: 900; letter-spacing: 1.4px; }
.workspace-license-panel header strong { color: var(--brand-navy); font-size: 14px; }
.workspace-license-mark { width: 40px; height: 40px; display: grid; flex: 0 0 40px; place-items: center; overflow: hidden; border: 1px solid rgba(17,25,112,.18); border-radius: 10px; background: linear-gradient(145deg,#3134c8,#171978); box-shadow: 0 7px 17px rgba(17,25,112,.17); }
.workspace-license-mark img { display: block; width: 100%; height: 100%; object-fit: cover; }
.workspace-license-panel dl { display: grid; gap: 1px; margin: 0; }
.workspace-license-panel dl > div { display: grid; grid-template-columns: 132px minmax(0,1fr); align-items: baseline; gap: 10px; padding: 7px 8px; border-radius: 7px; }
.workspace-license-panel dl > div:nth-child(odd) { background: color-mix(in srgb, var(--paper) 93%, var(--green) 7%); }
.workspace-license-panel dt { color: var(--muted); font-size: 9px; font-weight: 800; }
.workspace-license-panel dd { min-width: 0; margin: 0; overflow-wrap: anywhere; color: var(--brand-navy); font-size: 10px; font-weight: 800; }
.tenant-box { display: flex; gap: 13px; align-items: center; }
.tenant-box > label { color: var(--muted); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .6px; }
.tenant-control { display: flex; }
.tenant-control input { width: min(350px, 27vw); border-radius: 8px 0 0 8px; border-right: 0; }
.tenant-control .button { border-radius: 0 8px 8px 0; }
.theme-toggle { width: 104px; height: 42px; flex: 0 0 auto; display: grid; place-items: center; padding: 0; border: 0; border-radius: 999px; color: var(--ink); background: transparent; filter: drop-shadow(0 5px 12px rgba(6,46,91,.14)); transition: transform .2s; }
.theme-toggle:hover { transform: translateY(-1px) scale(1.02); }
.theme-toggle:focus-visible { outline: 3px solid rgba(16,199,196,.25); outline-offset: 2px; }
.theme-switch-track { position: relative; width: 100%; height: 100%; display: block; overflow: hidden; border: 2px solid #98bfff; border-radius: inherit; background: linear-gradient(115deg, #8fc9ff, #d9efff 68%, #f6fbff); box-shadow: inset 0 2px 6px rgba(6,46,91,.13); transition: border-color .35s, background .35s; }
.theme-sun, .theme-moon { position: absolute; top: 4px; width: 31px; height: 31px; border-radius: 50%; transition: transform .4s cubic-bezier(.2,.8,.2,1), opacity .25s; }
.theme-sun { left: 5px; z-index: 4; background: linear-gradient(145deg, #ffc34d, #ff970f); box-shadow: 0 3px 9px rgba(255,142,0,.45); }
.theme-moon { right: 5px; z-index: 4; opacity: 0; transform: translateX(18px); background: #f5f3d9; box-shadow: inset -8px -3px 0 #d9def0, 0 3px 9px rgba(0,0,0,.24); }
.theme-cloud { position: absolute; z-index: 2; height: 15px; border-radius: 999px; background: rgba(255,255,255,.94); box-shadow: -9px 3px 0 rgba(255,255,255,.94), 8px 4px 0 rgba(255,255,255,.78); transition: transform .4s, opacity .3s; }
.theme-cloud::before { content: ""; position: absolute; width: 17px; height: 17px; left: 7px; top: -7px; border-radius: 50%; background: inherit; }
.theme-cloud-one { width: 40px; right: 5px; bottom: 3px; }.theme-cloud-two { width: 27px; right: 26px; bottom: -2px; opacity: .72; }
.theme-stars { position: absolute; inset: 5px auto auto 10px; z-index: 2; color: #bceef0; opacity: 0; font-size: 9px; letter-spacing: 3px; transform: translateX(-10px); transition: opacity .3s, transform .4s; }

.content { position: relative; isolation: isolate; width: min(1280px, calc(100% - 7vw)); margin: 0 auto; padding: 11px 0 80px; }
.content::before { content: ""; position: absolute; z-index: 0; top: 5px; left: min(-4vw, -30px); width: min(620px, 62vw); height: 290px; pointer-events: none; opacity: .58; background-image: radial-gradient(circle, rgba(55,144,226,.32) 1.6px, transparent 1.9px); background-size: 13px 13px; -webkit-mask-image: linear-gradient(120deg, #000 0%, rgba(0,0,0,.72) 38%, transparent 82%); mask-image: linear-gradient(120deg, #000 0%, rgba(0,0,0,.72) 38%, transparent 82%); }
.content > * { position: relative; z-index: 1; }
.hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; padding: 0 4px 35px; }
.hero h1 { max-width: 760px; margin: 6px 0 13px; font-size: clamp(31px, 4vw, 54px); line-height: 1.02; letter-spacing: -2.2px; }
.hero > div > p:last-child { max-width: 670px; color: var(--muted); line-height: 1.65; }
.eyebrow { margin: 0; color: var(--green-dark); font-size: 10px; letter-spacing: 1.8px; font-weight: 900; }
.hero-status { min-width: 240px; display: flex; align-items: center; gap: 12px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); }
.hero-status small, .hero-status strong { display: block; }
.hero-status small { color: var(--muted); font-size: 10px; text-transform: uppercase; }
.hero-status strong { margin-top: 3px; font-size: 13px; }
.status-icon { color: #aeb8bb; }
.hero-status[data-state="connected"] .status-icon { color: var(--green); }
.hero-status[data-state="error"] .status-icon { color: #c44e45; }

.steps { display: flex; align-items: center; padding: 17px 24px; margin-bottom: 22px; border: 1px solid var(--line); border-radius: 14px; background: var(--paper); box-shadow: var(--shadow); }
.step { display: flex; align-items: center; gap: 10px; opacity: .5; }
.step.active, .step.complete { opacity: 1; }
.step > span { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid #aeb9bc; border-radius: 50%; font-size: 11px; font-weight: 800; }
.step.active > span { color: white; border-color: var(--navy); background: var(--navy); }
.step.complete > span { color: white; border-color: var(--green); background: var(--green); }
.step strong, .step small { display: block; white-space: nowrap; }
.step strong { font-size: 12px; }
.step small { color: var(--muted); font-size: 10px; margin-top: 2px; }
.step-line { flex: 1; height: 1px; margin: 0 20px; background: var(--line); }
.message { position: fixed; top: 88px; right: 24px; z-index: 45; width: min(430px, calc(100vw - 48px)); margin: 0; padding: 14px 16px; border-radius: 18px; color: #65552c; background: #fffaf0; border: 1px solid #e9debd; box-shadow: 0 16px 40px rgba(88,72,30,.12); font-size: 13px; white-space: pre-line; }
[hidden] { display: none !important; }
.app-page { animation: page-enter .22s ease-out; }
@keyframes page-enter { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.module-settings-page { display: grid; gap: 18px; }
.module-settings-hero { display: flex; align-items: center; gap: 17px; padding: 8px 3px 4px; }
.module-settings-hero h1 { margin: 5px 0 6px; font-size: clamp(27px,3vw,42px); line-height: 1; letter-spacing: -1.25px; }
.module-settings-hero p:last-child { margin: 0; color: var(--muted); font-size: 11px; }
.module-settings-icon { width: 58px; height: 58px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 17px; color: white; background: linear-gradient(145deg,var(--brand-turquoise),#08787d); box-shadow: 0 14px 30px rgba(8,120,125,.2); font-size: 15px; font-weight: 900; }
.settings-command-card { display: grid; grid-template-columns: minmax(0,1fr) 250px; gap: 22px; padding: 26px; border: 1px solid var(--line); border-radius: 20px; background: var(--paper); box-shadow: 0 16px 45px rgba(6,46,91,.07); }
.settings-command-copy h2 { margin: 7px 0 9px; font-size: 22px; letter-spacing: -.5px; }
.settings-command-copy p { max-width: 740px; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.65; }
.settings-command-kicker { color: var(--brand-turquoise-dark); font-size: 8px; font-weight: 900; letter-spacing: 1.25px; }
.settings-scope-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 18px; }
.settings-scope-chips span { padding: 6px 9px; border-radius: 999px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 8px; font-weight: 850; }
.settings-toggle-card { align-self: center; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 10px; padding: 17px; border: 1px solid var(--line); border-radius: 15px; background: color-mix(in srgb,var(--brand-turquoise-pale) 45%,var(--paper)); cursor: pointer; }
.settings-toggle-card input { position: absolute; opacity: 0; pointer-events: none; }
.settings-toggle-track { position: relative; width: 52px; height: 29px; border-radius: 999px; background: #aebdc3; transition: .2s; }
.settings-toggle-track i { position: absolute; top: 4px; left: 4px; width: 21px; height: 21px; border-radius: 50%; background: white; box-shadow: 0 3px 8px rgba(0,0,0,.2); transition: .2s; }
.settings-toggle-card input:checked + .settings-toggle-track { background: var(--brand-turquoise); }
.settings-toggle-card input:checked + .settings-toggle-track i { transform: translateX(23px); }
.settings-toggle-card input:focus-visible + .settings-toggle-track { outline: 3px solid rgba(16,199,196,.25); outline-offset: 3px; }
.settings-toggle-card strong, .settings-toggle-card small { display: block; }
.settings-toggle-card strong { font-size: 11px; }.settings-toggle-card small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.settings-command-actions { grid-column: 1 / -1; display: flex; align-items: center; justify-content: flex-end; gap: 17px; padding-top: 18px; border-top: 1px solid var(--line); }
.settings-command-actions > span { margin-right: auto; color: var(--muted); font-size: 9px; }
.settings-placeholder-card { min-height: 230px; display: grid; place-content: center; text-align: center; border: 1px dashed var(--line); border-radius: 20px; color: var(--muted); background: color-mix(in srgb,var(--paper) 88%,transparent); }
.settings-placeholder-card strong { color: var(--ink); font-size: 17px; }.settings-placeholder-card p { margin: 8px 0 0; font-size: 10px; }
.cheque-notes-workspace { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.cheque-notes-card { display:grid; grid-template-columns:minmax(0,1fr) 180px; grid-template-rows:1fr auto; align-items:center; gap:16px; min-height:150px; padding:20px; border:1px solid var(--line); border-radius:16px; background:var(--paper); box-shadow:0 8px 24px color-mix(in srgb,var(--ink) 5%,transparent); }
.cheque-notes-card h2 { margin:4px 0 7px; color:var(--ink); font-size:19px; }
.cheque-notes-card p:not(.eyebrow) { margin:0; color:var(--muted); font-size:12px; }
.cheque-notes-card .eyebrow { margin:0; color:var(--green-dark); font-size:10px; font-weight:800; letter-spacing:.12em; }
.cheque-notes-actions { display:flex; flex-wrap:wrap; gap:8px; }
.cheque-notes-actions a.button:is(:link,:visited,:hover,:active,:focus){text-decoration:none}
.cheque-notes-card-chart{grid-column:2;grid-row:1 / 3;align-self:center;min-width:0;margin:0;text-align:center;color:var(--ink)}
.cheque-notes-card-chart svg{display:block;width:100%;height:auto;overflow:visible}
.cheque-notes-card-chart svg text{fill:currentColor;font-family:var(--ui-font);font-variant-numeric:tabular-nums}
.cheque-notes-pie-track{stroke:color-mix(in srgb,var(--ink) 12%,var(--paper))}
.cheque-notes-card-chart figcaption{margin-top:3px;font-size:10px;color:var(--muted)}
.cheque-notes-card-chart>p{font-size:12px;color:var(--muted)}
@media(min-width:761px) and (max-width:1200px){.cheque-notes-card{grid-template-columns:minmax(0,1fr) 145px;padding:16px;gap:12px}}
@media(max-width:420px){.cheque-notes-card{grid-template-columns:minmax(0,1fr) 130px;gap:10px;padding:14px}.cheque-notes-card h2{font-size:17px}.cheque-notes-actions .button{padding:9px;font-size:11px}}
.cheque-notes-portfolio { margin-top:18px; padding:20px; border:1px solid var(--line); border-radius:16px; background:var(--paper); box-shadow:0 8px 24px color-mix(in srgb,var(--ink) 5%,transparent); }
.cheque-notes-portfolio-header { display:flex; justify-content:space-between; align-items:flex-end; gap:20px; padding-bottom:15px; border-bottom:1px solid var(--line); }
.cheque-notes-portfolio-header h2 { margin:3px 0 5px; color:var(--ink); font-size:19px; }
.cheque-notes-portfolio-header p:not(.eyebrow) { margin:0; color:var(--muted); font-size:12px; }
.cheque-notes-portfolio-header .eyebrow { margin:0; color:var(--brand-turquoise); font-size:10px; font-weight:850; letter-spacing:.12em; }
.cheque-notes-portfolio-filters { display:flex; align-items:flex-end; flex-wrap:wrap; gap:9px; }
.cheque-notes-portfolio-filters label { display:grid; gap:5px; color:var(--muted); font-size:10px; font-weight:750; }
.cheque-notes-portfolio-filters select { min-width:150px; min-height:38px; padding:7px 10px; border:1px solid var(--line); border-radius:9px; color:var(--ink); background:var(--paper); }
.cheque-notes-portfolio-status { min-height:16px; margin:10px 0; color:var(--muted); font-size:11px; }
.cheque-notes-chart-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.cheque-notes-chart-panel { min-width:0; padding:15px; border:1px solid var(--line); border-radius:13px; background:color-mix(in srgb,var(--canvas) 42%,var(--paper)); }
.cheque-notes-chart-panel h3 { margin:0 0 13px; color:var(--ink); font-size:13px; }
.cheque-notes-chart { display:grid; gap:11px; }
.cheque-notes-chart-row { display:grid; grid-template-columns:minmax(110px,145px) minmax(50px,1fr) minmax(105px,auto); align-items:center; gap:10px; }
.cheque-notes-chart-label { overflow:hidden; color:var(--ink); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.cheque-notes-chart-track { height:12px; overflow:hidden; border-radius:999px; background:color-mix(in srgb,var(--brand-turquoise) 12%,var(--canvas)); }
.cheque-notes-chart-bar { display:block; width:var(--bar-width,0%); height:100%; min-width:0; border-radius:inherit; background:linear-gradient(90deg,var(--brand-turquoise),color-mix(in srgb,var(--brand-navy) 38%,var(--brand-turquoise))); transition:width .25s ease; }
.cheque-notes-chart-value { color:var(--ink); font-size:11px; font-variant-numeric:tabular-nums; text-align:right; white-space:nowrap; }
@media (max-width:760px) { .cheque-notes-workspace { grid-template-columns:1fr; } .cheque-notes-card { min-height:0; } }
@media (max-width:760px) { .cheque-notes-portfolio { padding:14px; } .cheque-notes-portfolio-header { align-items:stretch; flex-direction:column; } .cheque-notes-portfolio-filters { align-items:stretch; } .cheque-notes-portfolio-filters label { flex:1 1 135px; } .cheque-notes-chart-grid { grid-template-columns:1fr; } .cheque-notes-chart-row { grid-template-columns:minmax(96px,120px) minmax(35px,1fr) minmax(88px,auto); gap:7px; } }
.stock-scaffold-card span { width: max-content; margin: 0 auto 12px; padding: 6px 9px; border-radius: 999px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 7.5px; font-weight: 900; letter-spacing: 1px; }
.stock-scaffold-card p { max-width: 520px; line-height: 1.6; }
.stock-settings-window { min-height: 390px; overflow: hidden; display: grid; grid-template-rows: auto auto minmax(0,1fr); border: 1px solid var(--line); border-radius: 20px; background: var(--paper); box-shadow: 0 18px 50px rgba(6,46,91,.08); }
.stock-settings-window-header { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 19px; border-bottom: 1px solid var(--line); background: linear-gradient(120deg,color-mix(in srgb,var(--brand-turquoise-pale) 72%,var(--paper)),var(--paper) 62%); }
.stock-settings-window-header > div > span,.stock-settings-panel > header > div > span { color: var(--brand-turquoise-dark); font-size: 7px; font-weight: 900; letter-spacing: 1.2px; }
.stock-settings-window-header h2 { margin: 3px 0 2px; color: var(--ink); font-size: 17px; letter-spacing: -.25px; }
.stock-settings-window-header p { margin: 0; color: var(--muted); font-size: 8.5px; }
.stock-settings-window-state { display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; border: 1px solid color-mix(in srgb,var(--brand-turquoise) 32%,var(--line)); border-radius: 999px; color: var(--brand-turquoise-dark); background: color-mix(in srgb,var(--brand-turquoise-pale) 66%,var(--paper)); font-size: 7.5px; font-weight: 850; white-space: nowrap; }
.stock-settings-window-state i { width: 7px; height: 7px; border-radius: 50%; background: var(--brand-turquoise); box-shadow: 0 0 0 4px color-mix(in srgb,var(--brand-turquoise) 14%,transparent); }
.stock-settings-tabs { display: flex; flex-wrap: wrap; align-items: stretch; gap: 7px; padding: 9px 12px; border-bottom: 1px solid var(--line); background: color-mix(in srgb,var(--canvas) 64%,var(--paper)); }
.stock-settings-tab { min-width: 205px; display: flex; align-items: center; gap: 10px; padding: 8px 11px; border: 1px solid var(--line); border-radius: 10px; color: var(--ink); background: var(--paper); text-align: left; box-shadow: 0 3px 10px rgba(6,46,91,.035); transition: transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease; }
.stock-settings-tab:hover { transform: translateY(-1px); border-color: color-mix(in srgb,var(--brand-turquoise) 62%,var(--line)); box-shadow: 0 6px 16px rgba(6,46,91,.08); }
.stock-settings-tab:focus-visible { outline: 3px solid color-mix(in srgb,var(--brand-turquoise) 28%,transparent); outline-offset: 2px; }
.stock-settings-tab.active,.stock-settings-tab[aria-selected="true"] { color: #fff; border-color: var(--brand-turquoise-dark); background: linear-gradient(135deg,var(--brand-turquoise-dark),#08777e); box-shadow: 0 7px 18px rgba(7,153,150,.2); }
.stock-settings-tab > span:last-child { min-width: 0; display: grid; gap: 2px; }
.stock-settings-tab strong { font-size: 9px; }.stock-settings-tab small { color: var(--muted); font-size: 7px; }
.stock-settings-tab.active small,.stock-settings-tab[aria-selected="true"] small { color: rgba(255,255,255,.76); }
.stock-settings-tab-icon { width: 30px; height: 30px; flex: 0 0 30px; display: grid; place-items: center; border-radius: 8px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); }
.stock-settings-tab.active .stock-settings-tab-icon,.stock-settings-tab[aria-selected="true"] .stock-settings-tab-icon { color: var(--brand-turquoise-dark); background: #fff; }
.stock-settings-tab-icon svg,.stock-settings-empty-icon svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.stock-settings-body { min-height: 305px; padding: 13px; background: color-mix(in srgb,var(--canvas) 70%,var(--paper)); }
.stock-settings-panel { min-height: 279px; overflow: hidden; display: grid; grid-template-rows: auto minmax(0,1fr); border: 1px solid var(--line); border-radius: 13px; background: var(--paper); outline: none; }
.stock-settings-panel:focus-visible { box-shadow: 0 0 0 3px color-mix(in srgb,var(--brand-turquoise) 24%,transparent); }
.stock-settings-panel > header { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 10px 14px; border-bottom: 1px solid var(--line); background: color-mix(in srgb,var(--brand-turquoise-pale) 32%,var(--paper)); }
.stock-settings-panel h3 { margin: 3px 0 0; color: var(--ink); font-size: 13px; }
.stock-settings-panel-state { padding: 5px 8px; border-radius: 999px; color: var(--muted); background: color-mix(in srgb,var(--canvas) 74%,var(--paper)); font-size: 7px; font-weight: 800; }
.stock-settings-panel-content { display: grid; align-content: start; gap: 8px; padding: 10px; background: color-mix(in srgb,var(--canvas) 58%,var(--paper)); }
.stock-settings-group-card { overflow: hidden; border: 1px solid var(--line); border-radius: 11px; background: var(--paper); box-shadow: 0 5px 16px rgba(6,46,91,.035); transition: border-color .18s ease,box-shadow .18s ease; }
.stock-settings-group-card.is-open { border-color: color-mix(in srgb,var(--brand-turquoise) 44%,var(--line)); box-shadow: 0 9px 24px rgba(6,46,91,.06); }
.stock-settings-group-heading { width: 100%; min-height: 54px; display: grid; grid-template-columns: auto minmax(0,1fr) auto auto; align-items: center; gap: 9px; padding: 8px 11px; border: 0; color: #fff; background: var(--brand-turquoise-dark); font: inherit; text-align: left; cursor: pointer; transition: filter .18s ease; }
.stock-settings-group-card.is-open .stock-settings-group-heading { border-bottom: 1px solid color-mix(in srgb,#fff 22%,transparent); background: var(--brand-turquoise-dark); }
.stock-settings-group-heading:hover { filter: brightness(1.08); }
.stock-settings-group-heading:focus-visible { position: relative; z-index: 1; outline: 3px solid color-mix(in srgb,var(--brand-turquoise) 30%,transparent); outline-offset: -3px; }
.stock-settings-group-icon { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 9px; color: #fff; background: rgba(255,255,255,.16); }
.stock-settings-group-icon svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; }
.stock-settings-group-heading > div > span { color: rgba(255,255,255,.74); font-size: 6.8px; font-weight: 900; letter-spacing: 1.05px; }
.stock-settings-group-heading h4 { margin: 2px 0 1px; color: #fff; font-size: 11px; }
.stock-settings-group-heading p { margin: 0; color: rgba(255,255,255,.74); font-size: 7px; }
.stock-settings-ui-badge { padding: 5px 8px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; color: #fff; background: rgba(255,255,255,.13); font-size: 6.8px; font-weight: 900; letter-spacing: .7px; white-space: nowrap; }
.stock-settings-accordion-chevron { width: 8px; height: 8px; margin: 0 4px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(45deg); transition: transform .18s ease; }
.stock-settings-group-card.is-open .stock-settings-accordion-chevron { transform: rotate(225deg); }
.stock-settings-accordion-panel[hidden] { display: none; }
.stock-number-settings-layout { display: grid; grid-template-columns: minmax(260px,1fr) minmax(280px,1fr); gap: 12px; align-items: stretch; padding: 13px; }
.stock-settings-accordion-panel form { margin: 0; }
.stock-number-barcode-toggle { grid-column: 1 / -1; }
.stock-number-preview { min-height: 78px; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 4px 14px; padding: 11px 13px; border: 1px solid color-mix(in srgb,var(--brand-turquoise) 26%,var(--line)); border-radius: 10px; background: linear-gradient(135deg,color-mix(in srgb,var(--brand-turquoise-pale) 42%,var(--paper)),var(--paper)); }
.stock-number-preview > span { color: var(--muted); font-size: 7px; font-weight: 800; }.stock-number-preview > strong { grid-row: span 2; color: var(--brand-turquoise-dark); font-size: 15px; font-variant-numeric: tabular-nums; letter-spacing: .3px; }
.stock-number-preview > small { color: var(--muted); font-size: 6.8px; line-height: 1.35; }
#stockStartNumberFeedback[data-state="valid"] { color: #19805b; }
#stockStartNumberFeedback[data-state="invalid"] { color: #b34f4f; }
.stock-barcode-settings-layout { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(260px,.85fr); gap: 12px; padding: 13px; }
.stock-barcode-settings-fields { min-width: 0; display: grid; align-content: start; gap: 10px; }
.stock-barcode-auto-toggle { min-height: 54px; display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: color-mix(in srgb,var(--brand-turquoise-pale) 32%,var(--paper)); cursor: pointer; }
.stock-barcode-auto-toggle > span:first-child { display: grid; gap: 3px; }.stock-barcode-auto-toggle strong { color: var(--ink); font-size: 9px; }.stock-barcode-auto-toggle small { color: var(--muted); font-size: 7px; font-weight: 750; }
.stock-barcode-auto-toggle input { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip-path: inset(50%); opacity: 0; pointer-events: none; }
.stock-barcode-toggle-track { position: relative; width: 42px; height: 23px; border-radius: 999px; background: #aab8bd; transition: background .18s ease; }
.stock-barcode-toggle-track i { position: absolute; top: 3px; left: 3px; width: 17px; height: 17px; border-radius: 50%; background: #fff; box-shadow: 0 2px 7px rgba(0,0,0,.2); transition: transform .18s ease; }
.stock-barcode-auto-toggle input:checked + .stock-barcode-toggle-track { background: var(--brand-turquoise-dark); }
.stock-barcode-auto-toggle input:checked + .stock-barcode-toggle-track i { transform: translateX(19px); }
.stock-barcode-auto-toggle input:focus-visible + .stock-barcode-toggle-track { outline: 3px solid color-mix(in srgb,var(--brand-turquoise) 30%,transparent); outline-offset: 3px; }
.stock-barcode-field-grid { display: grid; grid-template-columns: minmax(150px,.72fr) minmax(220px,1.28fr); gap: 10px; }
.stock-settings-field { min-width: 0; display: grid; align-content: start; gap: 5px; color: var(--ink); font-size: 7.5px; font-weight: 850; }
.stock-settings-field > span { min-height: 12px; }
.stock-settings-field input:not([type="checkbox"]),.stock-settings-field select { width: 100%; height: 36px; padding: 0 10px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink); background: var(--paper); font: inherit; font-size: 9px; font-weight: 700; outline: none; }
.stock-settings-field input:focus,.stock-settings-field select:focus { border-color: var(--brand-turquoise-dark); box-shadow: 0 0 0 3px color-mix(in srgb,var(--brand-turquoise) 16%,transparent); }
.stock-settings-field input:disabled,.stock-settings-field select:disabled { color: var(--muted); background: color-mix(in srgb,var(--canvas) 78%,var(--paper)); cursor: not-allowed; opacity: .76; }
.stock-settings-field input[aria-invalid="true"] { border-color: #c86060; box-shadow: 0 0 0 3px rgba(200,96,96,.1); }
.stock-settings-field small { min-height: 11px; color: var(--muted); font-size: 6.8px; font-weight: 600; line-height: 1.35; }
#barcodeStartNumberFeedback[data-state="valid"] { color: #19805b; }
#barcodeStartNumberFeedback[data-state="invalid"] { color: #b34f4f; }
.stock-settings-readonly-field input { color: var(--muted); background: color-mix(in srgb,var(--canvas) 72%,var(--paper)); cursor: default; }
.stock-barcode-preview { min-height: 194px; display: grid; grid-template-rows: auto minmax(72px,1fr) auto; padding: 12px; border: 1px solid color-mix(in srgb,var(--brand-turquoise) 26%,var(--line)); border-radius: 11px; background: linear-gradient(145deg,color-mix(in srgb,var(--brand-turquoise-pale) 44%,var(--paper)),var(--paper)); }
.stock-barcode-preview > header { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-bottom: 9px; border-bottom: 1px solid color-mix(in srgb,var(--brand-turquoise) 18%,var(--line)); }
.stock-barcode-preview > header span { color: var(--ink); font-size: 8px; font-weight: 900; }.stock-barcode-preview > header b { color: var(--brand-turquoise-dark); font-size: 6.8px; white-space: nowrap; }
.stock-barcode-preview > div { display: grid; place-items: center; color: var(--brand-navy); font-size: 25px; font-weight: 850; letter-spacing: 2px; font-variant-numeric: tabular-nums; }
.stock-barcode-preview > p { margin: 0; color: var(--muted); font-size: 7px; line-height: 1.45; text-align: center; }
.stock-barcode-help { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 9px; margin: 0; padding: 10px 13px; border-top: 1px solid var(--line); color: var(--muted); background: color-mix(in srgb,var(--brand-turquoise-pale) 24%,var(--paper)); font-size: 7.5px; line-height: 1.5; }
.stock-barcode-help svg { width: 17px; height: 17px; fill: none; stroke: var(--brand-turquoise-dark); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.stock-settings-save-row { display: flex; align-items: center; justify-content: flex-end; gap: 12px; padding: 10px 13px; border-top: 1px solid var(--line); background: color-mix(in srgb,var(--canvas) 34%,var(--paper)); }
.stock-settings-save-row > span { margin-right: auto; color: var(--muted); font-size: 7px; }
.stock-settings-save-row .button { min-width: 92px; min-height: 34px; }
.stock-settings-window .stock-settings-window-header,
.stock-settings-window .stock-settings-panel > header { display: none; }
.stock-settings-window .stock-settings-tabs { display: flex; gap: 8px; padding: 12px 16px 0; background: var(--canvas); border-bottom: 1px solid var(--line); }
.stock-settings-window .stock-settings-tab { position: relative; width: auto; min-width: 0; min-height: 46px; padding: 12px 18px; margin-bottom: -1px; border: 1px solid var(--line); border-top: 4px solid var(--line); border-radius: 10px 10px 0 0; background: color-mix(in srgb,var(--canvas) 80%,var(--paper)); color: var(--muted); font-size: 13px; font-weight: 700; box-shadow: none; transform: none; }
.stock-settings-window .stock-settings-tab[aria-selected="true"] { z-index: 1; color: var(--ink); border-color: var(--brand-turquoise-dark); border-top-color: var(--brand-turquoise-dark); border-bottom-color: var(--paper); background: var(--paper); box-shadow: inset 0 2px 0 color-mix(in srgb,var(--brand-turquoise) 25%,var(--paper)); }
.stock-settings-window .stock-settings-body,
.stock-settings-window .stock-settings-panel-content { padding: 0; background: var(--paper); }
.stock-settings-window .stock-settings-panel,
.stock-settings-window .stock-settings-group-card { border: 0; border-radius: 0; box-shadow: none; }
.stock-settings-window .stock-settings-group-card[hidden] { display: none; }
.stock-settings-window .stock-settings-section-title { padding: 16px 18px 0; margin: 0; font-size: 14px; }
.stock-settings-window .stock-settings-field { font-size: 12px; }
.stock-settings-window .stock-settings-field small,
.stock-settings-window .stock-settings-save-row > span,
.stock-settings-window .stock-barcode-help { font-size: 11px; }
.stock-settings-window .stock-settings-field input:not([type="checkbox"]),
.stock-settings-window .stock-settings-field select { font-size: 13px; height: 34px; }
.stock-settings-window .stock-barcode-preview { align-self: start; min-height: 180px; gap: 12px; }
.stock-label-sample { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 14px; padding: 16px; background: #fff; color: #111; border: 1px solid #b8c6ca; border-radius: 8px; font-family: Arial, sans-serif; }
.stock-label-name { font-size: 14px; font-weight: 800; line-height: 1.3; }
.stock-label-price { text-align: right; font-size: clamp(24px, 2.5vw, 42px); font-weight: 900; line-height: 1; white-space: nowrap; }
.stock-label-price small { font-size: 18px; }.stock-label-price span { display: block; margin-top: 5px; font-size: 10px; font-weight: 600; }
.stock-label-details { align-self: end; font-size: 10px; line-height: 1.65; }
.stock-label-code { min-width: 0; text-align: center; align-self: end; }
.stock-label-code svg { display: block; width: 100%; height: 62px; background: #fff; }
.stock-label-code #barcodePreviewValue { display: block; color: #000; font: 12px monospace; letter-spacing: 1px; overflow-wrap: anywhere; }
.stock-label-disclaimer { color: var(--muted); font-size: 10px; text-align: center; }
.stock-settings-window .stock-barcode-preview > header span,
.stock-settings-window .stock-barcode-auto-toggle strong { font-size: 12px; }
.stock-settings-window .stock-barcode-preview > header b,
.stock-settings-window .stock-barcode-preview > p,
.stock-settings-window .stock-barcode-auto-toggle small { font-size: 11px; }
.stock-settings-window .stock-settings-restart { display: grid; gap: 6px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 8px; font-size: 12px; color: var(--ink); cursor: pointer; }
.stock-settings-window .stock-settings-restart > span { display: flex; align-items: center; gap: 8px; font-weight: 700; }
.stock-settings-window #restartBarcodeSequence { appearance: auto; width: 16px; height: 16px; min-width: 16px; min-height: 16px; padding: 0; margin: 0; flex: 0 0 16px; accent-color: var(--brand-turquoise-dark); }
.stock-settings-window .stock-settings-restart small { font-size: 11px; color: var(--muted); }
.stock-settings-window .stock-settings-save-row { position: sticky; bottom: 0; z-index: 1; background: var(--paper); }
.stock-settings-empty-state { display: grid; place-items: center; align-content: center; padding: 28px; color: var(--muted); text-align: center; }
.stock-settings-empty-icon { width: 45px; height: 45px; display: grid; place-items: center; margin-bottom: 11px; border: 1px solid color-mix(in srgb,var(--brand-turquoise) 28%,var(--line)); border-radius: 13px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); }
.stock-settings-empty-state strong { color: var(--ink); font-size: 12px; }.stock-settings-empty-state p { max-width: 430px; margin: 6px 0 0; font-size: 8.5px; line-height: 1.55; }
:root[data-theme="dark"] .stock-settings-window-header { background: linear-gradient(120deg,#103844,var(--paper) 66%); }
:root[data-theme="dark"] .stock-settings-tabs,:root[data-theme="dark"] .stock-settings-body { background: #081b2a; }
:root[data-theme="dark"] .stock-settings-panel > header { background: #102f3d; }
:root[data-theme="dark"] .stock-settings-panel-content { background: #081b2a; }
:root[data-theme="dark"] .stock-settings-group-heading,:root[data-theme="dark"] .stock-settings-group-card.is-open .stock-settings-group-heading { background: var(--brand-turquoise-dark); }
:root[data-theme="dark"] .stock-number-preview { background: linear-gradient(135deg,#103642,var(--paper)); }
:root[data-theme="dark"] .stock-barcode-preview { background: linear-gradient(145deg,#103642,var(--paper)); }
:root[data-theme="dark"] .stock-barcode-preview > div { color: #effcfd; }
@media (max-width: 820px) {
  .settings-command-card { grid-template-columns: 1fr; padding: 20px; }
  .settings-toggle-card { width: 100%; }
  .stock-settings-window-header { align-items: flex-start; flex-direction: column; gap: 10px; }
  .stock-settings-tab { width: 100%; min-width: 0; }
  .stock-settings-panel > header { align-items: flex-start; flex-direction: column; }
  .stock-number-settings-layout { grid-template-columns: 1fr; }
  .stock-barcode-settings-layout { grid-template-columns: 1fr; }
  .stock-barcode-preview { min-height: 170px; }
}
@media (max-width: 560px) {
  .stock-settings-group-heading { grid-template-columns: auto minmax(0,1fr); }
  .stock-settings-ui-badge { display: none; }
  .stock-barcode-field-grid { grid-template-columns: 1fr; }
}
.dashboard-page { display: grid; gap: 0; }
.dashboard-launcher { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 20px; }
.dashboard-launcher a { min-width: 0; display: grid; grid-template-columns: auto 1fr auto; gap: 13px; align-items: center; padding: 19px; border: 1px solid var(--line); border-radius: 14px; color: var(--ink); background: white; box-shadow: var(--shadow); text-decoration: none; transition: transform .2s, border-color .2s, box-shadow .2s; }
.dashboard-launcher a:hover { transform: translateY(-3px); border-color: #a8dedd; box-shadow: 0 18px 42px rgba(6,46,91,.1); }
.dashboard-launcher small, .dashboard-launcher strong, .dashboard-launcher p { display: block; }
.dashboard-launcher small { color: var(--brand-turquoise-dark); font-size: 8px; font-weight: 900; letter-spacing: .8px; text-transform: uppercase; }
.dashboard-launcher strong { margin-top: 4px; font-size: 13px; }
.dashboard-launcher p { margin: 5px 0 0; color: var(--muted); font-size: 9px; line-height: 1.45; }
.dashboard-launcher b { color: #8da2ad; font-size: 18px; }
.launcher-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; color: white; background: var(--brand-turquoise-dark); font-size: 18px; }
.launcher-icon.navy { background: var(--brand-navy); }
.launcher-icon.pale { color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); }

/* Interactive dashboard: operational priorities first, decoration second. */
.dashboard-page { gap: 12px; }
.dashboard-welcome { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding: 0 3px 4px; }
.dashboard-welcome h1 { margin: 6px 0 7px; font-size: clamp(27px, 3vw, 43px); line-height: 1.05; letter-spacing: -1.6px; font-weight: 820; }
.dashboard-welcome p:last-child { margin: 0; color: var(--muted); font-size: 12px; }
.dashboard-access-notice { margin: 10px 0 0 !important; padding: 9px 12px; border: 1px solid #ead8a8; border-radius: 10px; background: #fff9e8; color: #755b21 !important; font-size: 12px !important; }
.dashboard-welcome-actions { display: flex; align-items: center; gap: 10px; }
.dashboard-layout-button { display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 9px 12px; color: var(--muted); border-color: transparent; background: transparent; box-shadow: none; font-size: 8px; }
.dashboard-layout-button:hover { color: var(--brand-turquoise-dark); border-color: var(--line); background: var(--paper); }
.dashboard-layout-button span { font-size: 13px; }
.dashboard-mail-button { display: flex; align-items: center; gap: 9px; color: var(--ink); border-color: var(--line); background: var(--paper); box-shadow: 0 8px 22px rgba(6,46,91,.06); }
.dashboard-mail-button span { color: var(--brand-turquoise-dark); font-size: 17px; }
.dashboard-welcome .hero-status { min-width: 220px; }
.dashboard-kpis { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 10px; }
.dashboard-kpi { min-width: 0; min-height: 124px; display: grid; grid-template-columns: 38px minmax(0,1fr); grid-template-rows: auto minmax(10px,1fr) auto; column-gap: 12px; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--paper); box-shadow: 0 10px 28px rgba(6,46,91,.05); }
.dashboard-kpi.accent { color: white; border-color: transparent; background: linear-gradient(135deg, #07345f, #086f78); }
.dashboard-kpi.accent small, .dashboard-kpi.accent p { color: #c6e6e9; }
.dashboard-kpi.purchase { color: #fff; border-color: transparent; background: linear-gradient(135deg, #123f73 0%, #1768a1 100%); box-shadow: 0 12px 30px rgba(18,63,115,.18); }
.dashboard-kpi.payment { color: #fff; border-color: transparent; background: linear-gradient(135deg, #b66a08 0%, #e79a24 100%); box-shadow: 0 12px 30px rgba(182,106,8,.18); }
.dashboard-kpi.shift { color: #fff; border-color: transparent; background: linear-gradient(135deg, #5c3a9c 0%, #865dcc 100%); box-shadow: 0 12px 30px rgba(92,58,156,.18); }
.dashboard-kpi.shift { position: relative; }
.dashboard-kpi.shift .dashboard-kpi-copy { padding-right: 28px; }
.dashboard-kpi.shift #dashboardShiftCount { position: absolute; grid-area: auto; top: 12px; right: 12px; display: grid; place-items: center; width: 32px; height: 32px; margin: 0; border-radius: 50%; border: 1px solid #ffffff66; background: #ffffff24; font-size: 16px; line-height: 1; letter-spacing: 0; }
.dashboard-pos-sales { grid-column: 1 / -1; grid-row: 3; align-self: end; min-width: 0; }
.dashboard-pos-sales b { display: block; font-size: 22px; line-height: 1; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; margin: 4px 0 0; }
.dashboard-pos-sales span { display: none; }
.dashboard-kpi.collection { color: #fff; border-color: transparent; background: linear-gradient(135deg, #08755f 0%, #12a17d 100%); box-shadow: 0 12px 30px rgba(8,117,95,.18); }
.dashboard-kpi.purchase small, .dashboard-kpi.purchase p { color: #dcecff; }
.dashboard-kpi.payment small, .dashboard-kpi.payment p { color: #fff1d5; }
.dashboard-kpi.shift small, .dashboard-kpi.shift p { color: #eee6ff; }
.dashboard-kpi.collection small, .dashboard-kpi.collection p { color: #dcfff3; }
.dashboard-kpi.purchase .kpi-icon, .dashboard-kpi.payment .kpi-icon, .dashboard-kpi.shift .kpi-icon, .dashboard-kpi.collection .kpi-icon { color: currentColor; background: rgba(255,255,255,.18); border: 1px solid rgba(255,255,255,.16); }
.dashboard-kpi .kpi-icon { width: 38px; height: 38px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 11px; color: #087f7d; background: #ddf8f6; font-size: 18px; font-weight: 900; }
.dashboard-kpi .kpi-icon.navy { color: #fff; background: #0a3b6d; }.dashboard-kpi .kpi-icon.amber { color: #9a5a05; background: #fff0cf; }.dashboard-kpi .kpi-icon.violet { color: #7650b6; background: #efe8ff; }
.dashboard-kpi-copy { min-width: 0; grid-column: 2; grid-row: 1; align-self: start; }
.dashboard-kpi small, .dashboard-kpi strong, .dashboard-kpi p { display: block; }
.dashboard-kpi small { color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: .45px; text-transform: uppercase; }
.dashboard-kpi strong { max-width: 100%; grid-column: 1 / -1; grid-row: 3; align-self: end; margin-top: 9px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: clamp(23px, 2.2vw, 32px); font-variant-numeric: tabular-nums; line-height: 1; font-weight: 850; letter-spacing: -.8px; }
.dashboard-kpi strong.is-compact-value { font-size: clamp(20px, 1.7vw, 27px); letter-spacing: -.55px; }
.dashboard-kpi strong.is-dense-value { font-size: clamp(15px, 1.25vw, 20px); letter-spacing: -.3px; }
.dashboard-kpi p { margin: 5px 0 0; color: var(--muted); font-size: 9px; }.dashboard-kpi p b { color: inherit; }
.dashboard-workspace { display: grid; grid-template-columns: minmax(0,1.18fr) minmax(300px,.82fr); gap: 14px; }
.dashboard-card { min-width: 0; padding: 21px; border: 1px solid var(--line); border-radius: 18px; background: var(--paper); box-shadow: 0 12px 32px rgba(6,46,91,.055); }
.dashboard-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 17px; }
.dashboard-card-heading h2 { margin: 4px 0 0; font-size: 18px; letter-spacing: -.3px; font-weight: 820; }
.live-badge, .dashboard-period { padding: 6px 8px; border-radius: 999px; color: #087f7d; background: #e1f8f6; font-size: 8px; font-weight: 900; letter-spacing: .5px; }.live-badge { animation: dashboard-pulse 2.2s infinite; }
@keyframes dashboard-pulse { 50% { box-shadow: 0 0 0 5px rgba(16,199,196,.09); } }
.agenda-list { display: grid; gap: 2px; }
.agenda-item { display: grid; grid-template-columns: 54px 1fr auto; gap: 13px; align-items: center; padding: 13px 5px; border-bottom: 1px solid var(--line); color: var(--ink); text-decoration: none; }
.agenda-item:last-child { border-bottom: 0; }.agenda-time { color: var(--brand-turquoise-dark); font-size: 9px; font-weight: 900; }.agenda-item strong { font-size: 11px; }.agenda-item p { margin: 4px 0 0; color: var(--muted); font-size: 9px; }.agenda-item > b { color: #9aabb2; }
.dashboard-text-link { display: inline-flex; gap: 8px; margin-top: 14px; color: var(--brand-turquoise-dark); font-size: 10px; font-weight: 850; text-decoration: none; }
.icon-button { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 10px; color: var(--ink); background: var(--paper); font-size: 15px; }
.dashboard-mail-heading { display: grid; grid-template-columns: minmax(105px,.64fr) minmax(140px,1.36fr) auto; align-items: center; gap: 8px; }
.dashboard-mail-heading > div:first-child { min-width: 0; }
.dashboard-mail-heading .mail-account-state { min-width: 0; width: 100%; box-sizing: border-box; display: flex; align-items: center; gap: 6px; justify-self: stretch; padding: 5px 8px; border-radius: 9px; background: #f3f8f8; }
.mail-account-state > span { flex: 0 0 auto; color: var(--brand-turquoise-dark); font-size: 13px; }
.mail-account-state > div { min-width: 0; transform: translateY(-1px); }
.mail-account-state strong { display: block; overflow: hidden; font-size: 6.5px; line-height: 1.1; text-overflow: ellipsis; white-space: nowrap; }
.mail-account-state p { overflow: hidden; margin: 1px 0 0; color: var(--muted); font-size: 5px; line-height: 1.1; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-mail-controls { display: flex; align-items: center; gap: 4px; }.dashboard-mail-controls .icon-button { width: 25px; height: 25px; border-radius: 8px; font-size: 10px; }.dashboard-mail-controls .mail-settings-button { border-color: var(--ink); font-size: 11px; }
.mail-preview-list { min-width: 0; height: 154px; display: block; overflow-x: hidden; overflow-y: auto; scroll-behavior: smooth; scrollbar-width: none; }.mail-preview-list::-webkit-scrollbar { display: none; }.mail-preview-list .mail-empty { min-height: 146px; display: grid; place-items: center; text-align: center; }.mail-empty strong, .mail-empty span { display: block; }.mail-empty strong { font-size: 11px; }.mail-empty span { max-width: 310px; margin-top: 5px; color: var(--muted); font-size: 9px; line-height: 1.5; }
.dashboard-cashflow { min-height: 248px; }.cashflow-chart { position: relative; height: 128px; display: grid; place-items: center; overflow: hidden; border-radius: 13px; background: linear-gradient(180deg, rgba(16,199,196,.04), transparent); }.chart-grid-lines { position: absolute; inset: 0; opacity: .55; background: linear-gradient(to bottom, transparent 24%, var(--line) 25%, transparent 26%, transparent 49%, var(--line) 50%, transparent 51%, transparent 74%, var(--line) 75%, transparent 76%); }.chart-placeholder-line { position: absolute; left: 7%; right: 7%; top: 54%; height: 2px; transform: skewY(-6deg); background: linear-gradient(90deg, transparent, var(--brand-turquoise) 15%, #3d86df 70%, transparent); box-shadow: 50px -17px 0 -1px #3d86df; }.cashflow-chart > span { position: relative; z-index: 2; max-width: 300px; padding: 9px 12px; border-radius: 10px; color: var(--muted); background: color-mix(in srgb, var(--paper) 91%, transparent); font-size: 8px; line-height: 1.45; text-align: center; }.cashflow-legend { display: flex; gap: 15px; align-items: center; margin-top: 10px; color: var(--muted); font-size: 8px; }.cashflow-legend i { width: 7px; height: 7px; display: inline-block; margin-right: 5px; border-radius: 50%; }.cashflow-legend i.income { background: var(--brand-turquoise); }.cashflow-legend i.expense { background: #3d86df; }.cashflow-legend b { margin-left: auto; color: var(--ink); }
.dashboard-shortcuts { align-self: start; transition: min-height .18s ease; }
.dashboard-shortcut-edit-button { min-height: 32px; margin-left: auto; padding: 6px 9px; color: var(--muted); background: transparent; box-shadow: none; font-size: 8px; }
.dashboard-shortcut-edit-button:hover { color: var(--brand-turquoise-dark); border-color: var(--brand-turquoise); background: var(--brand-turquoise-pale); }
.dashboard-shortcut-edit-button span { font-size: 12px; }
.shortcut-grid { display: grid; grid-template-columns: repeat(var(--dashboard-shortcut-columns,2),minmax(0,1fr)); gap: 9px; }.shortcut-grid a { min-width: 0; display: grid; grid-template-columns: auto minmax(0,1fr); gap: 9px 11px; align-items: center; padding: 13px; border: 1px solid var(--line); border-radius: 13px; color: var(--ink); text-decoration: none; transition: .18s; }.shortcut-grid a:hover { transform: translateY(-2px); border-color: #8ed9d7; }.shortcut-grid span { grid-row: 1 / 3; width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-weight: 900; }.shortcut-grid strong,.shortcut-grid small { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.shortcut-grid strong { font-size: 10px; }.shortcut-grid small { color: var(--muted); font-size: 8px; }
.dashboard-shortcuts[data-shortcut-density="compact"] .shortcut-grid { gap: 7px; }
.dashboard-shortcuts[data-shortcut-density="compact"] .shortcut-grid a { gap: 6px 8px; padding: 10px; border-radius: 11px; }
.dashboard-shortcuts[data-shortcut-density="compact"] .shortcut-grid span { width: 28px; height: 28px; border-radius: 8px; }
.dashboard-shortcuts[data-shortcut-density="compact"] .shortcut-grid strong { font-size: 9px; }
.dashboard-shortcuts[data-shortcut-density="compact"] .shortcut-grid small { font-size: 7px; }
.dashboard-shortcuts[data-shortcut-density="dense"] .shortcut-grid { gap: 6px; }
.dashboard-shortcuts[data-shortcut-density="dense"] .shortcut-grid a { gap: 5px 7px; padding: 8px; border-radius: 10px; }
.dashboard-shortcuts[data-shortcut-density="dense"] .shortcut-grid span { width: 25px; height: 25px; border-radius: 7px; font-size: 9px; }
.dashboard-shortcuts[data-shortcut-density="dense"] .shortcut-grid strong { font-size: 8px; }
.dashboard-shortcuts[data-shortcut-density="dense"] .shortcut-grid small { font-size: 6.5px; }
.dashboard-shortcut-empty { grid-column: 1 / -1; min-height: 76px; display: grid; place-items: center; margin: 0; padding: 14px; border: 1px dashed var(--line); border-radius: 12px; color: var(--muted); background: color-mix(in srgb,var(--paper) 88%,var(--brand-turquoise-pale)); font-size: 9px; text-align: center; }

.dashboard-bar-chart { height: 130px; display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 5px; padding: 9px 8px 0; border-radius: 13px; background: linear-gradient(180deg, rgba(16,199,196,.055), transparent), repeating-linear-gradient(to bottom, transparent 0, transparent 31px, var(--line) 32px); }
.dashboard-bar-day { min-width: 0; display: grid; grid-template-rows: 95px auto; gap: 6px; }
.dashboard-bar-pair { height: 95px; display: flex; align-items: flex-end; justify-content: center; gap: 3px; }
.dashboard-bar { width: min(12px,38%); min-height: 2px; border-radius: 5px 5px 2px 2px; background: var(--brand-turquoise); box-shadow: 0 4px 9px rgba(16,199,196,.15); transition: height .28s ease; }
.dashboard-bar.payment { background: #3d86df; box-shadow: 0 4px 9px rgba(61,134,223,.14); }
.dashboard-bar.sales { background: #0ca88d; }
.dashboard-bar.purchase { background: #e89a24; box-shadow: 0 4px 9px rgba(232,154,36,.14); }
.dashboard-bar.is-zero { opacity: .18; box-shadow: none; }
.dashboard-bar-day small { display: flex; justify-content: center; gap: 3px; color: var(--muted); font-size: 6.5px; white-space: nowrap; }
.dashboard-bar-day small b { color: var(--ink); font-size: inherit; }
.cashflow-legend { flex-wrap: wrap; justify-content: flex-start; }
.cashflow-legend span { display: inline-flex; align-items: center; gap: 3px; }
.cashflow-legend span b { margin-left: 3px; color: var(--ink); }
.cashflow-legend i.sales { background: #0ca88d; }
.cashflow-legend i.purchase { background: #e89a24; }
.dashboard-period-link { text-decoration: none; }
.dashboard-currency-list { display: grid; }
.dashboard-currency-row { min-height: 34px; display: grid; grid-template-columns: 1.1fr .9fr .9fr .7fr; gap: 8px; align-items: center; padding: 6px 3px; border-bottom: 1px solid var(--line); font-size: 8px; }
.dashboard-currency-row:last-child { border-bottom: 0; }
.dashboard-currency-row > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-currency-row > span:first-child { display: flex; align-items: center; gap: 6px; }
.dashboard-currency-row b { font-size: 10px; }
.dashboard-currency-row small { padding: 3px 5px; border-radius: 6px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 6px; font-weight: 850; }
.dashboard-currency-header { min-height: 24px; color: var(--muted); font-size: 6.5px; font-weight: 850; letter-spacing: .35px; text-transform: uppercase; }
.dashboard-widget-empty { min-height: 120px; display: grid; place-items: center; margin: 0; color: var(--muted); font-size: 9px; text-align: center; }

.dashboard-layout-dialog { width: min(520px,calc(100vw - 28px)); padding: 0; border: 1px solid var(--line); border-radius: 20px; color: var(--ink); background: var(--paper); box-shadow: 0 30px 90px rgba(3,28,52,.28); }
.dashboard-layout-dialog::backdrop { background: rgba(3,27,51,.3); backdrop-filter: blur(3px); }
.dashboard-layout-dialog form { display: grid; }
.dashboard-layout-dialog header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 22px 15px; border-bottom: 1px solid var(--line); }
.dashboard-layout-dialog h2 { margin: 4px 0 0; font-size: 18px; }
.dashboard-layout-description { margin: 0; padding: 15px 22px 8px; color: var(--muted); font-size: 9px; line-height: 1.55; }
.dashboard-widget-list { display: grid; gap: 7px; padding: 8px 18px 16px; }
.dashboard-widget-option { display: grid; grid-template-columns: 20px 34px minmax(0,1fr) auto; gap: 10px; align-items: center; padding: 10px 11px; border: 1px solid var(--line); border-radius: 12px; background: color-mix(in srgb,var(--paper) 94%,var(--brand-turquoise-pale)); transition: border-color .16s, opacity .16s, transform .16s; cursor: grab; }
.dashboard-widget-option.dragging { opacity: .45; }
.dashboard-widget-option.drag-target { border-color: var(--brand-turquoise); transform: translateY(2px); }
.dashboard-widget-handle { color: #9aadba; font-size: 13px; letter-spacing: -4px; }
.dashboard-widget-option strong, .dashboard-widget-option small { display: block; }
.dashboard-widget-option strong { font-size: 10px; }
.dashboard-widget-option small { margin-top: 3px; color: var(--muted); font-size: 7px; line-height: 1.35; }
.dashboard-widget-toggle { position: relative; width: 31px; height: 18px; }
.dashboard-widget-toggle input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.dashboard-widget-toggle span { position: absolute; inset: 0; border-radius: 999px; background: #cbd6dc; transition: .18s; }
.dashboard-widget-toggle span::after { content: ""; position: absolute; top: 3px; left: 3px; width: 12px; height: 12px; border-radius: 50%; background: white; box-shadow: 0 1px 4px rgba(0,0,0,.2); transition: .18s; }
.dashboard-widget-toggle input:checked + span { background: var(--brand-turquoise-dark); }
.dashboard-widget-toggle input:checked + span::after { transform: translateX(13px); }
.dashboard-widget-toggle input:focus-visible + span { outline: 2px solid var(--brand-turquoise); outline-offset: 2px; }
.dashboard-widget-order-actions { display: flex; gap: 4px; }
.dashboard-widget-order-actions .icon-button { width: 28px; height: 28px; border-radius: 8px; font-size: 10px; cursor: pointer; }
.dashboard-widget-order-actions .icon-button:disabled { opacity: .3; cursor: default; }
.dashboard-layout-dialog .form-error { margin: -5px 20px 10px; }
.dashboard-layout-dialog footer { display: flex; justify-content: flex-end; gap: 8px; padding: 14px 20px 18px; border-top: 1px solid var(--line); }
.dashboard-layout-dialog footer .dashboard-layout-reset { margin-right: auto; }
.dashboard-shortcut-dialog { width: min(720px,calc(100vw - 28px)); }
.dashboard-shortcut-dialog form { max-height: min(780px,calc(100vh - 28px)); grid-template-rows: auto auto auto minmax(160px,1fr) auto auto; }
.dashboard-shortcut-editor-toolbar { display: flex; align-items: center; gap: 12px; padding: 8px 18px 10px; }
.dashboard-shortcut-editor-toolbar label { min-width: 0; flex: 1; display: flex; align-items: center; gap: 8px; min-height: 39px; padding: 0 11px; border: 1px solid var(--line); border-radius: 10px; color: var(--brand-turquoise-dark); background: var(--paper); }
.dashboard-shortcut-editor-toolbar input { width: 100%; min-height: 37px; padding: 0; border: 0; outline: 0; background: transparent; font: inherit; font-size: 10px; }
.dashboard-shortcut-editor-toolbar output { flex: 0 0 auto; padding: 6px 8px; border-radius: 999px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 8px; font-weight: 850; }
.dashboard-shortcut-option-list { min-height: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-content: start; gap: 7px; overflow-y: auto; padding: 4px 18px 16px; }
.dashboard-shortcut-option { min-width: 0; display: grid; grid-template-columns: 16px 18px 30px minmax(0,1fr); gap: 8px; align-items: center; min-height: 54px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 11px; background: color-mix(in srgb,var(--paper) 95%,var(--brand-turquoise-pale)); cursor: pointer; transition: border-color .16s, opacity .16s, transform .16s; }
.dashboard-shortcut-option:hover { border-color: #8ed9d7; }
.dashboard-shortcut-option.is-selected { border-color: color-mix(in srgb,var(--brand-turquoise) 48%,var(--line)); background: color-mix(in srgb,var(--paper) 88%,var(--brand-turquoise-pale)); }
.dashboard-shortcut-option.dragging { opacity: .45; }
.dashboard-shortcut-option.drag-target { border-color: var(--brand-turquoise); transform: translateY(2px); }
.dashboard-shortcut-drag-handle { overflow: hidden; color: #9aadba; font-size: 12px; letter-spacing: -4px; cursor: default; opacity: .28; user-select: none; touch-action: none; }
.dashboard-shortcut-option.is-selected .dashboard-shortcut-drag-handle { cursor: grab; opacity: 1; }
.dashboard-shortcut-option.is-selected .dashboard-shortcut-drag-handle:active { cursor: grabbing; }
.dashboard-shortcut-option input { width: 16px; height: 16px; accent-color: var(--brand-turquoise-dark); }
.dashboard-shortcut-option-icon { width: 29px; height: 29px; display: grid; place-items: center; border-radius: 8px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 10px; font-weight: 900; }
.dashboard-shortcut-option > span:last-child { min-width: 0; }
.dashboard-shortcut-option strong,.dashboard-shortcut-option small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-shortcut-option strong { font-size: 9px; }
.dashboard-shortcut-option small { margin-top: 3px; color: var(--muted); font-size: 7px; }
.dashboard-shortcut-editor-empty { grid-column: 1 / -1; margin: 0; padding: 28px; color: var(--muted); font-size: 9px; text-align: center; }
.dashboard-shortcut-dialog .form-error { margin: 0 18px 10px; }

.master-data-page { gap: 18px; }.master-data-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; padding: 8px 3px 3px; }.master-data-hero h1 { margin: 5px 0 7px; font-size: clamp(28px,3vw,42px); line-height: 1; letter-spacing: -1.4px; font-weight: 850; }.master-data-hero p:last-child { margin: 0; color: var(--muted); font-size: 11px; }.master-data-actions { display: flex; align-items: center; gap: 9px; }.master-search { min-width: min(360px,35vw); display: flex; align-items: center; gap: 9px; padding: 0 12px; border: 1px solid var(--line); border-radius: 12px; color: var(--brand-turquoise-dark); background: var(--paper); box-shadow: 0 8px 22px rgba(6,46,91,.04); }.master-search input { min-height: 43px; padding: 0; border: 0; background: transparent; }.master-search input:focus { outline: 0; }.master-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 11px; }.master-summary article { padding: 15px 17px; border: 1px solid var(--line); border-radius: 15px; background: var(--paper); box-shadow: 0 8px 24px rgba(6,46,91,.045); }.master-summary small,.master-summary strong { display: block; }.master-summary small { color: var(--muted); font-size: 8px; font-weight: 850; letter-spacing: .5px; text-transform: uppercase; }.master-summary strong { margin-top: 7px; font-size: 22px; letter-spacing: -.7px; }.master-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }.master-card { min-width: 0; padding: 18px; border: 1px solid var(--line); border-radius: 17px; background: var(--paper); box-shadow: 0 10px 28px rgba(6,46,91,.05); transition: .18s ease; }.master-card:hover { transform: translateY(-2px); border-color: #8ed9d7; box-shadow: 0 16px 35px rgba(6,46,91,.09); }.master-card-header { display: flex; align-items: flex-start; gap: 12px; }.master-avatar { width: 43px; height: 43px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 13px; color: white; background: linear-gradient(145deg,#0badab,#073962); font-size: 12px; font-weight: 900; }.master-card-header > div { min-width: 0; flex: 1; }.master-card-header strong,.master-card-header small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.master-card-header strong { font-size: 12px; }.master-card-header small { margin-top: 4px; color: var(--muted); font-size: 8px; }.master-status { padding: 5px 7px; border-radius: 999px; color: #087f7d; background: #def7f5; font-size: 7px; font-weight: 900; }.master-status.passive { color: #a13d38; background: #ffe9e7; }.master-card-body { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--line); }.master-card-body span { min-width: 0; }.master-card-body small,.master-card-body b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.master-card-body small { color: var(--muted); font-size: 7px; text-transform: uppercase; }.master-card-body b { margin-top: 4px; font-size: 9px; }.master-tags { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 13px; }.master-tags span { padding: 5px 7px; border-radius: 7px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 7px; font-weight: 850; }.master-empty { grid-column: 1 / -1; min-height: 260px; display: grid; place-content: center; text-align: center; border: 1px dashed var(--line); border-radius: 17px; color: var(--muted); background: color-mix(in srgb,var(--paper) 80%,transparent); }.master-empty strong,.master-empty span { display: block; }.master-empty strong { color: var(--ink); font-size: 15px; }.master-empty span { margin-top: 7px; font-size: 9px; }

.mail-workspace { width: min(1180px, calc(100vw - 34px)); height: min(760px, calc(100vh - 34px)); max-width: none; max-height: none; padding: 0; border: 0; border-radius: 22px; color: var(--ink); background: var(--paper); box-shadow: 0 30px 100px rgba(2,25,49,.35); }.mail-workspace::backdrop { background: rgba(3,27,51,.64); backdrop-filter: blur(7px); }.mail-workspace-shell { height: 100%; display: grid; grid-template-rows: auto 1fr; }.mail-workspace-shell > header { display: flex; align-items: center; justify-content: space-between; padding: 16px 22px; border-bottom: 1px solid var(--line); }.mail-workspace-shell h2 { margin: 4px 0 0; font-size: 19px; }.mail-header-actions { display: flex; align-items: center; gap: 7px; }.mail-scroll-button { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 10px; color: var(--brand-navy); background: var(--paper); font-size: 14px; font-weight: 900; cursor: pointer; }.mail-scroll-button:hover { color: white; border-color: var(--brand-turquoise-dark); background: var(--brand-turquoise-dark); }.mail-settings-button { width: 34px; height: 34px; border-radius: 10px; font-size: 13px; }.mail-workspace-body { min-height: 0; display: grid; grid-template-columns: 185px 1fr; }.mail-workspace-body > aside { padding: 14px; color: white; background: var(--brand-navy); }.mail-workspace-body aside .button { width: 100%; font-size: 9px; }.mail-workspace-body nav { display: grid; gap: 3px; margin-top: 14px; }.mail-workspace-body nav button { display: flex; justify-content: space-between; padding: 8px 9px; border: 0; border-radius: 8px; color: #b8cad4; background: transparent; font-size: 9px; text-align: left; }.mail-workspace-body > aside nav button span { font-size: 8px; }.mail-workspace-body nav button.active { color: white; background: var(--brand-navy-soft); }.mail-workspace-body > main { grid-column: 2; min-width: 0; display: grid; grid-template-rows: auto 1fr; }.mail-toolbar { display: flex; align-items: center; gap: 12px; padding: 11px 18px; border-bottom: 1px solid var(--line); }.mail-toolbar input { max-width: 420px; font-size: 9px; }.mail-toolbar span { margin-left: auto; color: var(--muted); font-size: 7px; }.mail-connect-empty { display: grid; place-items: center; align-content: center; padding: 30px; text-align: center; }.mail-large-icon { width: 72px; height: 72px; display: grid; place-items: center; border-radius: 22px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 31px; }.mail-connect-empty h3 { margin: 18px 0 7px; font-size: 22px; }.mail-connect-empty p { max-width: 520px; margin: 0 0 18px; color: var(--muted); font-size: 11px; line-height: 1.6; }.mail-connect-empty div { display: flex; justify-content: center; gap: 9px; }.mail-connect-empty small { margin-top: 13px; color: var(--muted); font-size: 8px; }

.mail-workspace[open] { position: fixed; inset: 17px; z-index: 60; margin: auto; border: 1px solid var(--line); }
.mail-workspace::backdrop { background: transparent; backdrop-filter: none; }
.mail-setup-guide { align-content: start; overflow: auto; padding: clamp(28px, 5vw, 64px); background: linear-gradient(145deg, var(--paper), var(--brand-turquoise-pale)); }
.mail-setup-guide > div:first-child > span { color: var(--brand-turquoise-dark); font-size: 9px; font-weight: 900; letter-spacing: 1.4px; }
.mail-setup-guide h3 { margin: 8px 0; font-size: clamp(24px, 3vw, 36px); }
.mail-setup-guide p { max-width: 760px; color: var(--muted); line-height: 1.65; }
.mail-setup-guide ol { display: grid; gap: 12px; max-width: 820px; margin: 28px 0; padding-left: 25px; }
.mail-setup-guide li { padding-left: 7px; line-height: 1.55; }
.mail-security-note { max-width: 820px; padding: 14px 16px; border: 1px solid #f0c68a; border-radius: 12px; color: #805514; background: #fff7e8; font-weight: 700; }
.mail-setup-actions { display: flex; gap: 10px; margin-top: 22px; }

.ai-assistant-launcher { position: fixed; right: 20px; bottom: 16px; z-index: 38; width: 104px; height: 118px; padding: 0; overflow: visible; border: 0; color: white; background: transparent; filter: drop-shadow(0 16px 18px rgba(4,42,75,.24)); cursor: pointer; isolation: isolate; animation: ai-float 4.2s ease-in-out infinite; }
.ai-assistant-launcher img { position: relative; z-index: 2; width: 100%; height: 100%; object-fit: contain; object-position: center bottom; transition: transform .22s ease, filter .22s ease; }
.ai-assistant-launcher:hover img { transform: scale(1.07) rotate(1deg); filter: brightness(1.05); }
.ai-assistant-launcher:focus-visible { outline: 3px solid var(--brand-turquoise); outline-offset: 5px; border-radius: 34px; }
.ai-launcher-glow { position: absolute; z-index: 0; left: 20%; right: 10%; bottom: 3px; height: 22px; border-radius: 50%; background: rgba(16,199,196,.34); filter: blur(13px); animation: ai-glow 2.2s ease-in-out infinite; }
.ai-orbit { position: absolute; z-index: 1; width: 15px; height: 15px; right: 10px; top: 13px; border: 2px solid rgba(255,255,255,.88); border-radius: 50%; background: var(--brand-turquoise); box-shadow: 0 0 0 5px rgba(16,199,196,.16); animation: ai-orbit 3.1s ease-in-out infinite; }
.ai-online-dot { position: absolute; z-index: 3; right: 7px; bottom: 15px; width: 14px; height: 14px; border: 3px solid white; border-radius: 50%; background: #29c971; box-shadow: 0 0 0 0 rgba(41,201,113,.44); animation: ai-online 2s infinite; }
@keyframes ai-float { 0%,100% { transform: translateY(0) rotate(-.6deg); } 50% { transform: translateY(-10px) rotate(.8deg); } }
@keyframes ai-orbit { 0%,100% { transform: translate(0,0) scale(.9); opacity: .76; } 50% { transform: translate(7px,-7px) scale(1.08); opacity: 1; } }
@keyframes ai-glow { 50% { transform: scaleX(1.16); opacity: .55; } }
@keyframes ai-online { 70% { box-shadow: 0 0 0 9px rgba(41,201,113,0); } 100% { box-shadow: 0 0 0 0 rgba(41,201,113,0); } }
.ai-assistant-panel { position: fixed; right: 24px; bottom: 103px; z-index: 37; width: min(410px, calc(100vw - 28px)); max-height: min(620px, calc(100vh - 130px)); display: grid; grid-template-rows: auto minmax(150px,1fr) auto auto auto; overflow: hidden; border: 1px solid var(--line); border-radius: 22px 22px 22px 7px; background: var(--paper); box-shadow: 0 28px 80px rgba(3,28,52,.3); opacity: 0; pointer-events: none; transform: translateY(14px) scale(.97); transform-origin: bottom right; transition: .22s ease; }.ai-assistant-panel.open { opacity: 1; pointer-events: auto; transform: none; }.ai-assistant-panel > header { display: flex; align-items: center; gap: 11px; padding: 17px; color: white; background: linear-gradient(135deg, #062e5b, #087b80); }.ai-assistant-panel header > div:nth-child(2) { flex: 1; }.ai-assistant-panel header p { margin: 0; color: #83efeb; font-size: 7px; font-weight: 900; letter-spacing: 1.1px; }.ai-assistant-panel header h2 { margin: 4px 0 0; font-size: 13px; }.ai-assistant-panel header .icon-button { color: white; border-color: rgba(255,255,255,.2); background: rgba(255,255,255,.08); }.ai-avatar { width: 42px; height: 42px; display: grid; place-content: center; border-radius: 14px 14px 14px 4px; background: rgba(255,255,255,.12); }.ai-avatar strong { font-size: 13px; }.ai-avatar small { color: #87fffa; font-size: 6px; }.ai-conversation { overflow: auto; padding: 17px; background: #f5f9fa; }.ai-message { max-width: 88%; margin-bottom: 9px; padding: 10px 12px; border-radius: 13px; font-size: 10px; line-height: 1.5; }.ai-message.assistant { border-radius: 13px 13px 13px 3px; background: white; box-shadow: 0 5px 16px rgba(6,46,91,.06); }.ai-message.user { margin-left: auto; border-radius: 13px 13px 3px 13px; color: white; background: var(--brand-navy-soft); }.ai-suggestions { display: flex; gap: 6px; overflow-x: auto; padding: 10px 14px 0; }.ai-suggestions button { white-space: nowrap; padding: 7px 9px; border: 1px solid var(--line); border-radius: 999px; color: var(--brand-turquoise-dark); background: var(--paper); font-size: 8px; font-weight: 800; }.ai-command-form { display: grid; grid-template-columns: 38px 1fr 38px; gap: 6px; padding: 10px 14px; }.ai-command-form button { border: 0; border-radius: 10px; color: white; background: var(--brand-navy); }.ai-command-form #aiVoiceButton { color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); }.ai-command-form #aiVoiceButton.listening { color: white; background: #d8534b; animation: dashboard-pulse 1s infinite; }.ai-command-form input { min-height: 38px; }.ai-voice-status { margin: -4px 14px 12px; color: var(--muted); font-size: 8px; }
:root[data-theme="dark"] .mail-account-state, :root[data-theme="dark"] .ai-conversation { background: #102b40; }
:root[data-theme="dark"] .dashboard-kpi:not(.accent), :root[data-theme="dark"] .dashboard-card, :root[data-theme="dark"] .dashboard-layout-dialog, :root[data-theme="dark"] .mail-workspace { background: var(--paper); }
:root[data-theme="dark"] .dashboard-widget-option { background: #102b40; }
.product-inactive-summary { position: relative; padding-right: 56px!important; }
.product-inactive-visibility-toggle { position: absolute; right: 11px; bottom: 12px; width: 34px; height: 19px; cursor: pointer; }
.product-inactive-visibility-toggle input { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip-path: inset(50%); opacity: 0; }
.product-inactive-visibility-toggle > span { position: absolute; inset: 0; border-radius: 999px; background: #b6c2c7; transition: background .18s ease; }
.product-inactive-visibility-toggle i { position: absolute; top: 3px; left: 3px; width: 13px; height: 13px; border-radius: 50%; background: #fff; box-shadow: 0 2px 5px rgba(0,0,0,.2); transition: transform .18s ease; }
.product-inactive-visibility-toggle input:checked + span { background: var(--brand-turquoise-dark); }
.product-inactive-visibility-toggle input:checked + span i { transform: translateX(15px); }
.product-inactive-visibility-toggle input:focus-visible + span { outline: 3px solid color-mix(in srgb,var(--brand-turquoise) 30%,transparent); outline-offset: 2px; }
:root[data-theme="dark"] .master-card, :root[data-theme="dark"] .master-summary article, :root[data-theme="dark"] .master-search { background: var(--paper); }

.ai-assistant-panel { bottom: 126px; max-height: min(620px, calc(100vh - 150px)); }
.ai-avatar { width: 50px; height: 50px; flex: 0 0 auto; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(255,255,255,.22); border-radius: 16px 16px 16px 5px; background: linear-gradient(145deg,rgba(255,255,255,.15),rgba(6,34,66,.3)); }
.ai-avatar img { width: 58px; height: 58px; object-fit: contain; object-position: center 35%; filter: drop-shadow(0 5px 7px rgba(0,0,0,.22)); }

@media (prefers-reduced-motion: reduce) {
  .ai-assistant-launcher, .ai-orbit, .ai-launcher-glow, .ai-online-dot { animation: none; }
}

.panel { margin-top: 20px; padding: 28px; border: 1px solid var(--line); border-radius: 16px; background: var(--paper); box-shadow: var(--shadow); scroll-margin-top: 100px; }
.content > .panel.app-page:not([hidden]) { margin-top: 0; }
.content > .panel.app-page:not([hidden]) ~ .panel.app-page:not([hidden]) { margin-top: 20px; }
.panel-heading { display: flex; align-items: center; gap: 15px; padding-bottom: 23px; }
.panel-heading > div:nth-child(2) { flex: 1; }
.panel-heading h2 { margin: 5px 0 0; font-size: 20px; letter-spacing: -.4px; }
.section-number { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 10px; color: var(--green-dark); background: var(--green-pale); font-weight: 900; font-size: 12px; }
.selection-badge, .atomic-badge { padding: 7px 10px; border-radius: 999px; font-size: 10px; font-weight: 800; }
.selection-badge { color: var(--muted); background: #f1f4f4; }
.selection-badge.selected { color: var(--green-dark); background: var(--green-pale); }
.atomic-badge { color: #6b4b17; background: #fff4df; }
.panel-grid { display: grid; grid-template-columns: minmax(280px, .85fr) minmax(440px, 1.15fr); gap: 24px; align-items: start; }
.form-card { height: 100%; padding: 21px; border: 1px solid var(--line); border-radius: 12px; background: #fafbf9; }

label { display: grid; gap: 7px; color: #4f5b62; font-size: 11px; font-weight: 800; }
input, select { width: 100%; min-height: 42px; padding: 9px 11px; border: 1px solid #cbd5d8; border-radius: 8px; color: var(--ink); background: white; outline: none; transition: border .2s, box-shadow .2s; }
input:focus, select:focus, textarea:focus { border-color: var(--brand-turquoise); box-shadow: inset 0 0 0 2px rgba(16,199,196,.32); }
input:disabled, select:disabled { color: #899399; background: #f0f2f1; cursor: not-allowed; }
.field-help { margin: 12px 0 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.quick-create { border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
.quick-create summary { display: flex; justify-content: space-between; align-items: center; padding: 17px 20px; font-size: 12px; font-weight: 800; cursor: pointer; list-style: none; }
.quick-create summary::-webkit-details-marker { display: none; }
.quick-create[open] summary { border-bottom: 1px solid var(--line); }
.quick-create summary span { color: var(--green-dark); font-size: 18px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; padding: 20px; }
.form-grid.compact { grid-template-columns: 1fr 1fr; }
.full { grid-column: 1 / -1; }
.empty-prerequisite { padding: 13px; border: 1px dashed #d2b377; border-radius: 9px; background: #fffaf0; }
.empty-prerequisite strong, .empty-prerequisite span { display: block; }
.empty-prerequisite span { margin-top: 3px; color: var(--muted); font-size: 11px; }
.inline-fields { display: grid; grid-template-columns: 1fr 1.4fr auto; gap: 8px; margin-top: 11px; }
.button { min-height: 42px; padding: 9px 15px; border: 1px solid transparent; border-radius: 8px; font-size: 12px; font-weight: 800; }
.button:disabled { opacity: .55; cursor: default; }
.button-dark { color: white; background: var(--navy); }
.button-primary { color: white; background: var(--green-dark); }
.button-secondary { border-color: #c8d1d3; color: var(--navy); background: white; }
.policy-summary { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 15px; }
.policy-summary > span { padding: 7px 9px; border-radius: 6px; color: var(--muted); background: white; border: 1px solid var(--line); font-size: 10px; }

.accent-panel { border-top: 4px solid var(--navy); }
.series-toolbar { display: grid; grid-template-columns: 180px 1fr 1fr; gap: 15px; padding: 16px; border-radius: 10px; background: #f4f7f6; }
.context-chip { display: flex; flex-direction: column; justify-content: center; padding: 0 14px; border-left: 1px solid var(--line); }
.context-chip small { color: var(--muted); font-size: 9px; text-transform: uppercase; }
.context-chip strong { margin-top: 4px; font-size: 12px; }
.series-grid { display: grid; grid-template-columns: 1fr 70px 1fr; gap: 8px; align-items: center; margin-top: 20px; }
fieldset { min-width: 0; padding: 21px; border: 1px solid var(--line); border-radius: 12px; }
legend { padding: 0 8px; font-size: 12px; font-weight: 900; }
legend span { display: inline-grid; place-items: center; width: 24px; height: 24px; margin-right: 6px; border-radius: 50%; color: white; background: var(--navy); }
.split-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 13px; }
.number-preview { margin-top: 15px; padding: 13px; border-radius: 8px; background: var(--navy); color: white; }
.number-preview small, .number-preview strong { display: block; }
.number-preview small { color: #9db3bc; font-size: 9px; text-transform: uppercase; }
.number-preview strong { margin-top: 4px; font-family: Consolas, monospace; letter-spacing: 1px; }
.pair-link { text-align: center; color: var(--muted); }
.pair-link span, .pair-link small { display: block; }
.pair-link span { font-size: 22px; color: var(--green-dark); }
.pair-link small { font-size: 9px; }
.save-row { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--line); }
.save-row p { margin: 0; color: var(--muted); font-size: 11px; }
.save-row p strong { color: var(--ink); }
.button-save { min-width: 190px; color: white; background: var(--navy); }

.list-panel .panel-heading { padding-bottom: 12px; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; font-size: 12px; }
th { padding: 12px; color: var(--muted); font-size: 9px; text-align: left; text-transform: uppercase; letter-spacing: .7px; background: #f7f9f8; }
td { padding: 14px 12px; border-bottom: 1px solid #e9eeee; }
td code { padding: 4px 7px; border-radius: 5px; color: var(--navy); background: #edf2f2; font-size: 11px; }
.empty-row { padding: 35px; color: var(--muted); text-align: center; }
.status-pill { padding: 5px 8px; border-radius: 999px; color: var(--green-dark); background: var(--green-pale); font-size: 9px; font-weight: 900; }
.toast { position: fixed; right: 24px; bottom: 24px; z-index: 50; max-width: 390px; padding: 15px 18px; border-radius: 18px; color: white; background: var(--navy); border: 1px solid transparent; box-shadow: 0 15px 40px rgba(18,37,56,.16); font-size: 12px; }
.toast.error { color: #655126; background: #fff8e5; border-color: #e8d8aa; box-shadow: 0 15px 40px rgba(88,72,30,.13); }
.invoice-panel { position: relative; overflow: hidden; padding: 0; border-top: 0; background: #f7fafb; }
.documents-panel { padding: 0 0 24px; overflow: hidden; }
.documents-panel .invoice-records-heading { margin-top: 0; padding-top: 28px; border-top: 0; }
.sales-hub-heading, .document-list-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 29px 30px 23px; border-bottom: 1px solid var(--line); background: white; }
.sales-hub-heading h2, .document-list-heading h2 { margin: 5px 0 4px; font-size: 23px; letter-spacing: -.55px; }
.sales-hub-heading p:last-child, .document-list-heading p:last-child { margin: 0; color: var(--muted); font-size: 10px; }
.sales-flow { display: flex; align-items: center; justify-content: center; gap: 14px; margin: 22px 28px 0; padding: 12px; border: 1px solid #dcebea; border-radius: 11px; color: var(--brand-navy); background: #f4fbfb; }
.sales-flow span { font-size: 10px; font-weight: 900; }
.sales-flow b { color: var(--brand-turquoise-dark); font-size: 14px; }
.sales-document-cards { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; padding: 22px 28px 29px; }
.sales-document-cards a { position: relative; min-width: 0; display: grid; gap: 12px; align-content: start; padding: 16px; border: 1px solid var(--line); border-radius: 13px; color: var(--ink); background: white; text-decoration: none; transition: .2s ease; }
.sales-document-cards a:hover { transform: translateY(-3px); border-color: #a5dedd; box-shadow: 0 12px 27px rgba(6,46,91,.09); }
.sales-document-cards a > b { position: absolute; right: 13px; top: 13px; min-width: 25px; height: 25px; display: grid; place-items: center; padding: 0 6px; border-radius: 999px; color: var(--brand-navy); background: #edf3f5; font-size: 10px; }
.sales-document-cards small, .sales-document-cards strong, .sales-document-cards p { display: block; }
.sales-document-cards small { color: var(--muted); font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .55px; }
.sales-document-cards strong { margin-top: 4px; font-size: 13px; }
.sales-document-cards p { margin: 5px 0 0; color: var(--muted); font-size: 9px; line-height: 1.45; }
.document-card-icon { width: 37px; height: 37px; display: grid; place-items: center; border-radius: 10px 10px 10px 3px; color: white; background: #788b99; font-size: 10px; font-weight: 950; }
.document-card-icon.navy { background: var(--brand-navy); }
.document-card-icon.amber { background: #c68128; }
.document-card-icon.green { background: var(--brand-turquoise-dark); }
.document-card-icon.red { background: #b54f4a; }
.launcher-icon.purchase { color: #fff; background: linear-gradient(145deg, #06315f, #08aaa7); }
.purchase-hub { background: linear-gradient(155deg, #fff 0%, #f7fbfb 62%, #eef8f7 100%); }
.purchase-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; padding: 32px 32px 25px; border-bottom: 1px solid var(--line); }
.purchase-hero h2 { max-width: 690px; margin: 5px 0 9px; font-size: clamp(25px, 3vw, 38px); letter-spacing: -1.3px; }
.purchase-hero > div > p:last-child { max-width: 650px; margin: 0; color: var(--muted); line-height: 1.55; }
.purchase-flow { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr; align-items: center; gap: 11px; margin: 25px 28px 0; padding: 18px; border: 1px solid #cfe5e4; border-radius: 15px; background: rgba(255,255,255,.82); }
.purchase-flow > div { min-width: 0; display: grid; grid-template-columns: 31px 1fr; column-gap: 10px; align-items: center; }
.purchase-flow > div > span { grid-row: span 2; width: 31px; height: 31px; display: grid; place-items: center; border-radius: 10px 10px 10px 3px; color: white; background: var(--brand-navy); font-size: 9px; font-weight: 900; }
.purchase-flow strong, .purchase-flow small { display: block; }
.purchase-flow strong { font-size: 11px; }.purchase-flow small { margin-top: 2px; color: var(--muted); font-size: 8px; }.purchase-flow > b { color: var(--brand-turquoise-dark); }
.purchase-metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; padding: 21px 28px; }
.purchase-metrics a { position: relative; display: flex; gap: 12px; min-width: 0; padding: 17px; border: 1px solid var(--line); border-radius: 14px; color: var(--ink); background: #fff; text-decoration: none; transition: .2s ease; }
.purchase-metrics a:hover { transform: translateY(-3px); border-color: #9bdad7; box-shadow: 0 12px 25px rgba(6,46,91,.08); }
.purchase-metrics a > div { min-width: 0; }.purchase-metrics small, .purchase-metrics strong, .purchase-metrics p { display: block; }.purchase-metrics small { color: var(--muted); font-size: 8px; font-weight: 800; text-transform: uppercase; }.purchase-metrics strong { margin-top: 4px; font-size: 12px; }.purchase-metrics p { margin: 5px 0 0; color: var(--muted); font-size: 9px; line-height: 1.4; }.purchase-metrics a > b { position: absolute; top: 13px; right: 13px; width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; color: var(--brand-navy); background: #edf4f5; font-size: 10px; }
.purchase-rule-note { display: flex; gap: 12px; align-items: center; margin: 0 28px 28px; padding: 14px 16px; border-left: 3px solid var(--brand-turquoise); border-radius: 5px 12px 12px 5px; background: #eaf8f7; }.purchase-rule-note > span { width: 27px; height: 27px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; color: white; background: var(--brand-turquoise-dark); font-weight: 900; }.purchase-rule-note strong, .purchase-rule-note p { display: block; }.purchase-rule-note strong { font-size: 11px; }.purchase-rule-note p { margin: 3px 0 0; color: var(--muted); font-size: 9px; line-height: 1.5; }
.purchase-empty { min-height: 310px; display: grid; place-items: center; align-content: center; padding: 40px; text-align: center; }.purchase-empty > span { width: 52px; height: 52px; display: grid; place-items: center; margin-bottom: 13px; border: 1px solid #b8e1df; border-radius: 16px 16px 16px 5px; color: var(--brand-navy); background: var(--brand-turquoise-pale); font-size: 13px; font-weight: 950; }.purchase-empty strong { font-size: 14px; }.purchase-empty p { max-width: 440px; margin: 7px 0 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.purchase-editor { padding: 0; overflow: hidden; }.purchase-editor-heading { display: flex; justify-content: space-between; gap: 25px; align-items: flex-start; padding: 29px 31px 22px; border-bottom: 1px solid var(--line); background: linear-gradient(110deg, #fff, #f1fbfa); }.purchase-editor-heading h2 { margin: 4px 0 7px; font-size: 27px; }.purchase-editor-heading p:last-child { margin: 0; color: var(--muted); }.api-pending-badge { padding: 7px 10px; border-radius: 999px; color: #805915; background: #fff3d7; font-size: 9px; font-weight: 850; white-space: nowrap; }.purchase-editor-layout { display: grid; grid-template-columns: minmax(0, 1fr) 275px; gap: 18px; padding: 22px; background: #f6f9f9; }.purchase-form-card, .purchase-policy-card { border: 1px solid var(--line); border-radius: 14px; background: #fff; }.purchase-form-card { padding: 18px; }.purchase-type-switch { display: grid; grid-template-columns: repeat(4, 1fr); gap: 5px; padding: 4px; border-radius: 10px; background: #edf2f3; }.purchase-type-switch button { padding: 9px; border: 0; border-radius: 7px; color: var(--muted); background: transparent; font: inherit; font-size: 10px; font-weight: 850; }.purchase-type-switch button.active { color: #fff; background: var(--brand-navy); box-shadow: 0 5px 12px rgba(6,46,91,.18); }.purchase-fields { display: grid; grid-template-columns: repeat(2, 1fr); gap: 13px; margin-top: 18px; }.purchase-fields .full { grid-column: 1 / -1; }.purchase-lines-placeholder { min-height: 180px; display: grid; place-items: center; align-content: center; margin-top: 18px; border: 1px dashed #b7d2d4; border-radius: 12px; text-align: center; background: #fbfdfd; }.purchase-lines-placeholder > span { color: var(--brand-turquoise-dark); font-size: 28px; }.purchase-lines-placeholder strong { margin-top: 5px; font-size: 12px; }.purchase-lines-placeholder p { max-width: 430px; margin: 5px 0 0; color: var(--muted); font-size: 9px; line-height: 1.5; }.purchase-policy-card { align-self: start; padding: 20px; }.purchase-policy-card h3 { margin: 4px 0 18px; font-size: 22px; }.purchase-policy-card > div { display: grid; gap: 13px; }.purchase-policy-card > div > span { padding-bottom: 11px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 9px; }.purchase-policy-card > div strong { display: block; margin-top: 5px; color: var(--ink); font-size: 11px; }.purchase-policy-card .button { width: 100%; margin-top: 19px; }
.document-list-table { margin-top: 20px; }
.invoice-panel::before { content: ""; position: absolute; inset: 0 0 auto; height: 5px; background: linear-gradient(90deg, var(--brand-turquoise), #24ded2 42%, var(--brand-navy) 42%); }
.invoice-workspace-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 30px 32px 24px; border-bottom: 1px solid var(--line); background: white; }
.invoice-title-group { display: flex; align-items: center; gap: 16px; }
.invoice-title-group h2 { margin: 5px 0 2px; font-size: 25px; letter-spacing: -.65px; }
.invoice-subtitle { margin: 0; color: var(--muted); font-size: 11px; }
.invoice-document-icon { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 15px 15px 15px 5px; color: white; background: linear-gradient(145deg, var(--brand-turquoise), var(--brand-turquoise-dark)); box-shadow: 0 10px 25px rgba(7,153,150,.22); font-size: 13px; font-weight: 950; letter-spacing: .8px; }
.invoice-state { min-width: 145px; display: flex; align-items: center; gap: 11px; padding: 10px 13px; border: 1px solid var(--line); border-radius: 11px; background: #fbfdfd; }
.invoice-state small, .invoice-state strong { display: block; }
.invoice-state small { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .55px; }
.invoice-state strong { margin-top: 2px; font-size: 12px; }
.state-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--brand-turquoise); box-shadow: 0 0 0 5px var(--brand-turquoise-pale); }
.invoice-command-bar { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 11px 32px; color: white; background: var(--brand-navy); }
.invoice-command-bar > div { display: flex; align-items: center; gap: 12px; }
.invoice-command-bar strong { color: #d9e6ec; font-size: 11px; font-weight: 600; }
.command-kicker { padding: 5px 8px; border-radius: 6px; color: var(--brand-navy); background: var(--brand-turquoise); font-size: 9px; font-weight: 900; text-transform: uppercase; letter-spacing: .65px; }
.invoice-command-bar .atomic-badge { color: #c5d7de; border: 1px solid rgba(255,255,255,.13); background: rgba(255,255,255,.07); }
.invoice-layout { display: grid; grid-template-columns: minmax(0, 1fr) 270px; gap: 20px; align-items: start; padding: 24px; }
.invoice-main-column { min-width: 0; display: grid; gap: 20px; }
.invoice-info-grid { display: grid; grid-template-columns: 1.12fr .88fr; gap: 18px; }
.invoice-info-card, .invoice-lines-card, .invoice-summary-card { border: 1px solid var(--line); border-radius: 14px; background: white; box-shadow: 0 8px 24px rgba(6,46,91,.045); }
.invoice-info-card { overflow: hidden; }
.info-card-title { display: flex; align-items: center; gap: 11px; padding: 15px 17px; border-bottom: 1px solid #e7edee; }
.info-card-title > span { width: 29px; height: 29px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 8px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 9px; font-weight: 950; }
.info-card-title strong, .info-card-title small { display: block; }
.info-card-title strong { font-size: 12px; }
.info-card-title small { margin-top: 2px; color: var(--muted); font-size: 9px; font-weight: 500; }
.invoice-head { padding: 17px; background: white; }
.invoice-head.form-grid { gap: 12px; }
.invoice-lines-card { overflow: hidden; }
.invoice-lines-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 19px 0; }
.invoice-lines-heading h3 { margin: 4px 0 0; font-size: 16px; }
.invoice-lines-heading > span { padding: 6px 9px; border-radius: 999px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 9px; font-weight: 850; }
.line-entry { display: grid; grid-template-columns: minmax(260px, 2fr) minmax(90px, .55fr) auto; gap: 10px; align-items: end; margin: 15px 18px; padding: 13px; border: 1px solid #dbe8e9; border-radius: 11px; background: #f8fcfc; }
.line-entry .button { min-height: 42px; padding-inline: 18px; }
.purchase-line-entry { grid-template-columns: minmax(210px, 1.8fr) minmax(90px, .55fr) minmax(110px, .7fr) auto; margin: 18px 0 12px; }
.purchase-line-table { margin-top: 0; }
.purchase-line-table table { min-width: 680px; }
.line-entry .button span { font-size: 16px; vertical-align: -1px; }
.input-with-icon { position: relative; }
.input-with-icon > span { position: absolute; left: 12px; top: 50%; z-index: 1; color: var(--brand-turquoise-dark); transform: translateY(-50%); font-size: 19px; font-weight: 900; }
.input-with-icon input { padding-left: 35px; }
.invoice-lines-table { border-top: 1px solid var(--line); }
.invoice-lines-table th { padding-block: 10px; background: #f2f7f7; }
.invoice-lines-table td { background: white; }
.invoice-lines-table .empty-row { height: 168px; }
.empty-invoice-icon { width: 36px; height: 36px; display: grid; place-items: center; margin: 0 auto 8px; border: 1px dashed #93d7d4; border-radius: 50%; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 20px; }
.empty-row strong, .empty-row small { display: block; }
.empty-row strong { color: var(--ink); font-size: 12px; }
.empty-row small { margin-top: 4px; color: var(--muted); font-size: 10px; }
.invoice-summary-card { position: sticky; top: 96px; overflow: hidden; }
.summary-heading { padding: 19px 19px 15px; border-bottom: 1px solid var(--line); }
.summary-heading h3 { margin: 5px 0 0; font-size: 17px; }
.invoice-totals { display: grid; padding: 10px 18px; }
.invoice-totals span { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; padding: 12px 0; border-bottom: 1px solid #eaf0f1; color: var(--muted); background: transparent; font-size: 10px; }
.invoice-totals strong { margin: 0; color: var(--ink); font-size: 13px; }
.invoice-totals .grand-total { display: block; margin: 8px -8px 0; padding: 15px 12px; border: 0; border-radius: 10px; color: #b7d0d9; background: var(--brand-navy); }
.invoice-totals .grand-total strong { display: block; margin-top: 5px; color: white; font-size: 23px; letter-spacing: -.7px; }
.summary-note { display: flex; gap: 9px; margin: 0 18px 17px; padding: 11px; border-radius: 9px; color: #3d6268; background: var(--brand-turquoise-pale); }
.summary-note span { width: 21px; height: 21px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; color: white; background: var(--brand-turquoise-dark); font-size: 10px; }
.summary-note p { margin: 0; font-size: 9px; line-height: 1.5; }
.document-save-actions { display: grid; gap: 8px; padding: 0 18px 19px; }
.document-save-actions .button { width: 100%; }
.document-save-actions .button-save { min-width: 0; margin-top: 3px; background: linear-gradient(135deg, var(--brand-turquoise-dark), #087d8f); box-shadow: 0 9px 20px rgba(7,153,150,.2); }
.invoice-records-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin: 8px 24px 0; padding: 25px 3px 8px; border-top: 1px solid var(--line); }
.invoice-records-heading h3 { margin: 5px 0 0; font-size: 18px; }
.invoice-records-heading > span { color: var(--muted); font-size: 10px; }
.records-heading-actions { display: flex; align-items: center; gap: 13px; }
.records-heading-actions > span { color: var(--muted); font-size: 10px; }
.records-heading-actions .button { min-height: 36px; padding: 8px 12px; text-decoration: none; }
.invoice-history { margin-top: 30px; padding-top: 22px; border-top: 1px solid var(--line); }
.invoice-history { margin: 14px 24px 0; padding: 0; border: 1px solid var(--line); border-radius: 12px; background: white; }
.invoice-history:last-child { margin-bottom: 24px; }
.invoice-history h3 { margin: 0; padding: 14px 16px; border-bottom: 1px solid var(--line); font-size: 12px; }
.remove-line { border: 0; color: #a23c36; background: transparent; font-size: 11px; font-weight: 800; }
.invoice-actions { display: flex; gap: .4rem; min-width: 9.5rem; }
.invoice-action { border: 1px solid var(--line); border-radius: .55rem; padding: .4rem .65rem; background: #fff; color: var(--navy); cursor: pointer; font: inherit; font-size: .82rem; font-weight: 700; }
.invoice-action:hover { border-color: var(--green); color: var(--green-dark); }
.invoice-action-cancel { color: #a52727; }
.conversion-dialog { width: min(920px, calc(100% - 28px)); max-height: calc(100vh - 40px); padding: 0; border: 0; border-radius: 16px; color: var(--ink); box-shadow: 0 28px 80px rgba(3,31,59,.28); }
.conversion-dialog::backdrop { background: rgba(2,25,49,.66); backdrop-filter: blur(3px); }
.conversion-dialog form { padding: 25px; }
.dialog-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.dialog-heading h2 { margin: 5px 0 0; font-size: 22px; }
.dialog-close { width: 36px; height: 36px; border: 1px solid var(--line); border-radius: 50%; color: var(--navy); background: white; font-size: 24px; line-height: 1; }
.dialog-summary { margin: 16px 0; color: var(--muted); font-size: 12px; }
.dialog-error { margin: 0 0 16px; }
.record-card-save-error { flex: 0 0 auto; max-height: 180px; overflow: auto; margin: 0 16px 8px; padding: 12px 16px; border: 1px solid #dcb866; border-radius: 8px; color: #634a19; background: #fff8e5; font-size: 13px; }
.record-card-save-error p { margin: 0; white-space: pre-line; overflow-wrap: anywhere; }
.record-card-save-error button { margin-top: 8px; }
.record-card-save-error:focus { outline: 2px solid #bb8b32; outline-offset: 2px; }
:root[data-theme="dark"] .record-card-save-error { color: #ffe2a4; background: #382d18; border-color: #a88644; }
.conversion-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.conversion-lines { margin-top: 18px; border: 1px solid var(--line); border-radius: 10px; }
.conversion-lines input { width: 110px; min-height: 36px; padding: 6px 8px; }
.dialog-help { margin: 12px 0 0; color: var(--muted); font-size: 11px; }
.dialog-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line); }
.product-master-import-dialog { width: min(920px,calc(100vw - 32px)); max-width: none; max-height: min(92vh,860px); padding: 0; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-lg); color: var(--ink); background: var(--erp-surface); box-shadow: 0 30px 96px rgba(5,31,51,.3); overflow: auto; }
.product-master-import-dialog::backdrop { background: rgba(5,31,51,.48); backdrop-filter: blur(5px); }
.product-master-import-shell { display: grid; gap: var(--erp-space-3); padding: var(--erp-space-4) var(--erp-space-5); }
.product-master-import-header { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--erp-space-4); padding-bottom: var(--erp-space-3); border-bottom: 1px solid var(--erp-border); }
.product-master-import-heading { display: grid; grid-template-columns: 138px minmax(0,1fr); align-items: center; gap: var(--erp-space-4); min-width: 0; }
.product-master-import-logo { display: block; width: 138px; height: auto; margin: 0; border-radius: 6px; }
.product-master-import-header .eyebrow { margin: 0 0 var(--erp-space-2); color: var(--erp-accent); font-size: 10px; letter-spacing: .16em; }
.product-master-import-header h2 { margin: 0; color: var(--brand-navy); font-size: 24px; line-height: 1.2; }
.product-master-import-header p:last-child { margin: var(--erp-space-2) 0 0; color: var(--muted); font-size: 14px; line-height: 1.55; }
.product-master-import-preview { display: grid; grid-template-columns: 250px minmax(0,1fr); gap: var(--erp-space-4); align-items: start; }
.product-master-import-figure { margin: 0; min-width: 0; padding: var(--erp-space-3); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-md); background: var(--erp-surface-muted); }
.product-master-import-figure img { display: block; width: 100%; aspect-ratio: 1; object-fit: contain; border-radius: var(--erp-radius-sm); background: #fff; }
.product-master-import-figure img[hidden] { display: none; }
.product-master-import-image-placeholder { min-height: 188px; display: grid; place-items: center; align-content: center; gap: var(--erp-space-2); color: var(--muted); text-align: center; font-size: var(--erp-font-caption); font-weight: 700; }
.product-master-import-image-placeholder svg { width: 54px; height: 54px; fill: none; stroke: var(--erp-accent); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.product-master-import-figure figcaption { margin-top: var(--erp-space-2); color: var(--muted); font-size: 10px; line-height: 1.45; }
.product-master-import-media-column { display: grid; gap: var(--erp-space-3); min-width: 0; }
.product-master-import-market-prices { min-width: 0; padding: 12px; border: 1px solid color-mix(in srgb,var(--erp-accent) 34%,var(--erp-border)); border-radius: var(--erp-radius-md); background: color-mix(in srgb,var(--erp-accent) 5%,var(--erp-surface)); }
.product-master-import-market-prices > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; margin-bottom: 10px; }
.product-master-import-market-prices h3 { margin: 2px 0 0; color: var(--brand-navy); font-size: 14px; line-height: 1.25; }
.product-master-import-market-kicker { display: block; color: var(--erp-accent); font-size: 8px; font-weight: 850; letter-spacing: .08em; }
.product-master-import-market-source { flex: none; padding: 3px 6px; border-radius: 999px; color: var(--muted); background: var(--erp-surface); font-size: 9px; font-weight: 750; }
.catalog-market-price-grid { display: grid; gap: 7px; }
.catalog-market-price-card { display: grid; grid-template-columns: 54px minmax(0,1fr) auto; align-items: center; gap: 8px; min-width: 0; padding: 8px; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); background: var(--erp-surface); }
.catalog-market-logo { display: grid; place-items: center; min-height: 34px; padding: 5px 4px; border-radius: 7px; color: #fff; background: #27445d; font-size: 9px; font-weight: 900; letter-spacing: -.02em; line-height: 1; text-align: center; }
.catalog-market-logo--migros { color: #f58220; background: #fff4e9; box-shadow: inset 0 0 0 1px #ffd3ac; }
.catalog-market-logo--a101 { background: #0088c9; }
.catalog-market-logo--bim { background: #d51e29; }
.catalog-market-logo--sok { color: #e21f2f; background: #ffdf00; }
.catalog-market-logo--carrefour { color: #1354a5; background: #eef5ff; box-shadow: inset 0 0 0 1px #c9dbf4; }
.catalog-market-logo--tarim-kredi { background: #24723e; }
.catalog-market-logo--hakmar { background: #cc242c; }
.catalog-market-price-copy { min-width: 0; }
.catalog-market-price-copy strong, .catalog-market-price-copy span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.catalog-market-price-copy strong { color: var(--ink); font-size: 11px; }
.catalog-market-price-copy span { margin-top: 2px; color: var(--muted); font-size: 9px; }
.catalog-market-price-value { color: var(--brand-navy); font-size: 14px; font-weight: 900; white-space: nowrap; }
.catalog-market-price-note { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.45; }
.catalog-market-price-freshness { margin: 8px 0 0; color: var(--muted); font-size: 9px; line-height: 1.35; }
.product-master-import-details { min-width: 0; }
.product-master-import-details > h3 { margin: 0 0 var(--erp-space-3); color: var(--brand-navy); font-size: 21px; line-height: 1.3; }
.product-master-import-description { padding: var(--erp-space-3); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); background: var(--erp-surface-muted); }
.product-master-import-description > span { display: block; margin-bottom: 4px; color: var(--muted); font-size: var(--erp-font-caption); font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.product-master-import-description p { margin: 0; color: var(--ink); font-size: 13px; line-height: 1.5; }
.product-master-import-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; margin: var(--erp-space-3) 0 0; overflow: hidden; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); background: var(--erp-border); }
.product-master-import-grid > div { min-width: 0; padding: 10px 12px; background: var(--erp-surface); }
.product-master-import-grid dt { margin: 0 0 3px; color: var(--muted); font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.product-master-import-grid dd { margin: 0; overflow-wrap: anywhere; color: var(--ink); font-size: 13px; font-weight: 750; line-height: 1.35; }
.product-master-import-warnings { max-height: 132px; overflow: auto; padding: var(--erp-space-3) var(--erp-space-4); border: 1px solid color-mix(in srgb,var(--erp-warning) 35%,var(--erp-border)); border-radius: var(--erp-radius-sm); background: color-mix(in srgb,var(--erp-warning) 9%,var(--erp-surface)); }
.product-master-import-warnings h3 { margin: 0 0 var(--erp-space-2); color: #7a5712; font-size: 12px; }
.product-master-import-warnings ul { margin: 0; padding-left: 18px; color: #6a531f; font-size: 11px; line-height: 1.55; }
.product-master-import-actions { position: sticky; bottom: 0; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: var(--erp-space-3); padding-top: var(--erp-space-4); border-top: 1px solid var(--erp-border); background: var(--erp-surface); }
.product-master-import-actions .button { min-width: 168px; border-radius: var(--erp-radius-sm); font-weight: 800; }
.product-master-import-report { border-color: var(--erp-danger); color: white; background: var(--erp-danger); }
.app-confirm-dialog { width: min(540px,calc(100vw - 32px)); max-width: none; padding: 0; border: 1px solid #ead9a7; border-radius: 24px; color: var(--ink); background: #fffdf7; box-shadow: 0 28px 90px rgba(23,43,59,.28); overflow: hidden; }
.app-confirm-dialog::backdrop { background: rgba(5,31,51,.43); backdrop-filter: blur(4px); }
.app-confirm-shell { display: grid; grid-template-columns: 58px 1fr; gap: 18px; padding: 28px; }
.app-confirm-symbol { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 18px; color: #8b671c; background: #fff1c9; box-shadow: inset 0 0 0 1px rgba(181,137,38,.12); }
.app-confirm-symbol svg { width: 29px; height: 29px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.app-confirm-content { min-width: 0; }
.app-confirm-content .eyebrow { margin: 1px 0 7px; color: #8b671c; font-size: 10px; letter-spacing: .18em; }
.app-confirm-content h2 { margin: 0; color: var(--brand-navy); font-size: 23px; line-height: 1.15; }
.app-confirm-message { margin: 13px 0 0; color: #45555d; font-size: 13px; font-weight: 700; line-height: 1.65; white-space: pre-line; }
.app-confirm-actions { grid-column: 1 / -1; display: flex; justify-content: flex-end; gap: 10px; margin-top: 5px; padding-top: 18px; border-top: 1px solid #eee4c8; }
.app-confirm-actions .button { min-width: 118px; border-radius: 13px; font-weight: 800; }
.app-confirm-save { min-width: 154px !important; background: #0f9f9a; color: #fff; border-color: #0f9f9a; box-shadow: 0 8px 18px rgba(15,159,154,.2); }
.app-confirm-save:hover { background: #087f7b; border-color: #087f7b; }
.app-confirm-save[hidden] { display: none !important; }
.app-confirm-with-save .app-confirm-accept { background: #fff4ef; color: #9b3f35; border-color: #e9c4ba; box-shadow: none; }
.app-confirm-cancel { color: var(--brand-navy); border: 1px solid #d8e0e3; background: #fff; }
.app-confirm-accept { color: #fff; border: 1px solid #087e83; background: linear-gradient(135deg,#08707a,#0ca6a4); box-shadow: 0 8px 20px rgba(8,126,131,.18); }
.app-confirm-cancel:hover { background: #f4f8f8; }
.app-confirm-accept:hover { background: linear-gradient(135deg,#075f69,#098f90); }
.app-confirm-dialog.app-confirm-danger { border-color: #ecc9c2; background: #fffafa; }
.app-confirm-dialog.app-confirm-danger .app-confirm-symbol { color: #9e3e33; background: #fde9e5; }
.app-confirm-dialog.app-confirm-danger .app-confirm-content .eyebrow { color: #9e3e33; }
@media (max-width: 600px) { .app-confirm-shell { grid-template-columns: 46px 1fr; gap: 13px; padding: 21px; }.app-confirm-symbol { width: 46px; height: 46px; border-radius: 14px; }.app-confirm-content h2 { font-size: 20px; }.app-confirm-actions { flex-direction: column-reverse; }.app-confirm-actions .button { width: 100%; } }
@media (max-width: 700px) { .product-master-import-shell { padding: var(--erp-space-4); }.product-master-import-heading { grid-template-columns: 92px minmax(0,1fr); gap: var(--erp-space-3); }.product-master-import-logo { width: 92px; }.product-master-import-header h2 { font-size: 19px; }.product-master-import-preview { grid-template-columns: 1fr; }.product-master-import-media-column { max-width: 320px; margin-inline: auto; }.product-master-import-figure { width: 100%; }.product-master-import-actions { flex-direction: column-reverse; }.product-master-import-actions .button { width: 100%; }.product-master-import-grid { grid-template-columns: 1fr; } }
.trace-dialog { width: min(1020px, calc(100% - 28px)); }
.purchase-trace-timeline { display: flex; align-items: stretch; gap: 10px; overflow-x: auto; padding: 18px 2px 8px; }
.purchase-trace-node { min-width: 185px; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: linear-gradient(145deg, #fff, #f5fbfb); box-shadow: 0 7px 20px rgba(3,31,59,.06); }
.purchase-trace-node.requested { border-color: var(--turquoise); box-shadow: 0 0 0 3px rgba(0,184,184,.13); }
.purchase-trace-node span { display: block; color: var(--turquoise-dark); font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.purchase-trace-node strong { display: block; margin: 7px 0; color: var(--navy); font-size: 15px; }
.purchase-trace-node small { display: block; margin-top: 4px; color: var(--muted); }
.purchase-trace-arrow { display: grid; place-items: center; min-width: 58px; color: var(--turquoise-dark); text-align: center; font-size: 22px; }
.purchase-trace-arrow small { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; white-space: nowrap; }
.purchase-trace-connections { display: grid; gap: 7px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); }
.purchase-trace-connection { display: flex; align-items: center; gap: 9px; padding: 9px 12px; border-radius: 10px; color: var(--navy); background: #f4f9fa; font-size: 11px; }
.purchase-trace-connection b { color: var(--turquoise-dark); }

.cash-movement-page { padding: 0; overflow: hidden; }
.cash-page-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 30px 32px 25px; border-bottom: 1px solid var(--line); background: linear-gradient(110deg, var(--paper), var(--brand-turquoise-pale)); }
.cash-page-heading h2 { margin: 5px 0 7px; font-size: 27px; letter-spacing: -.65px; }
.cash-page-heading p:last-child { max-width: 720px; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.cash-heading-badge { min-width: 112px; padding: 10px 13px; border: 1px solid rgba(16,199,196,.35); border-radius: 12px; color: var(--brand-turquoise-dark); background: var(--paper); font-size: 9px; font-weight: 850; text-align: center; }
.cash-heading-badge b { display: block; margin-bottom: 2px; color: var(--ink); font-size: 23px; }
.cash-movement-layout { display: grid; grid-template-columns: minmax(0, 1fr) 290px; gap: 18px; padding: 22px; background: var(--canvas); }
.cash-movement-card, .cash-shift-card, .cash-session-history { border: 1px solid var(--line); border-radius: 14px; background: var(--paper); box-shadow: 0 8px 24px rgba(6,46,91,.045); }
.cash-movement-card { padding: 20px; }
.cash-card-title { display: flex; align-items: center; gap: 11px; padding-bottom: 17px; border-bottom: 1px solid var(--line); }
.cash-card-title > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px 11px 11px 4px; color: white; background: linear-gradient(145deg, var(--brand-turquoise), var(--brand-turquoise-dark)); font-size: 18px; font-weight: 900; }
.cash-card-title strong, .cash-card-title small { display: block; }
.cash-card-title strong { font-size: 13px; }.cash-card-title small { margin-top: 3px; color: var(--muted); font-size: 9px; }
.cash-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 18px; }
.cash-form-actions { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); }
.cash-form-actions p { max-width: 450px; margin: 0; color: var(--muted); font-size: 9px; line-height: 1.5; }
.cash-shift-card { align-self: start; padding: 21px; }
.cash-shift-card h3 { margin: 5px 0 19px; font-size: 20px; }
.cash-shift-facts { display: grid; gap: 12px; }
.cash-shift-facts span { padding-bottom: 11px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 9px; }
.cash-shift-facts strong { display: block; margin-top: 4px; color: var(--ink); font-size: 11px; }
.cash-session-history { margin: 0 22px 22px; overflow: hidden; }
.cash-session-history > div:first-child { padding: 19px 20px 13px; }
.cash-session-history h3 { margin: 4px 0 0; font-size: 16px; }
.cash-type { display: inline-block; padding: 5px 8px; border-radius: 999px; font-size: 9px; font-weight: 900; }
.cash-type.cash-in { color: #087a63; background: #daf6ee; }.cash-type.cash-out { color: #a1403a; background: #fde7e4; }
.cash-amount-in { color: #087a63; font-weight: 900; }.cash-amount-out { color: #a1403a; font-weight: 900; }

:root[data-theme="dark"] { color-scheme: dark; --ink: #eef7f8; --muted: #9db0b9; --line: #29465a; --paper: #0c2337; --canvas: #061624; --green-pale: #113f48; --brand-turquoise-pale: #103b45; --shadow: 0 14px 40px rgba(0,0,0,.24); }
:root[data-theme="dark"] body { background: var(--canvas); }
:root[data-theme="dark"] .topbar { background: rgba(8,28,44,.94); }
:root[data-theme="dark"] .brand { background: #fff; }
:root[data-theme="dark"] input,
:root[data-theme="dark"] select,
:root[data-theme="dark"] .dashboard-launcher a,
:root[data-theme="dark"] .sales-hub-heading,
:root[data-theme="dark"] .document-list-heading,
:root[data-theme="dark"] .purchase-metrics a,
:root[data-theme="dark"] .purchase-form-card,
:root[data-theme="dark"] .purchase-policy-card,
:root[data-theme="dark"] .invoice-workspace-heading,
:root[data-theme="dark"] .invoice-info-card,
:root[data-theme="dark"] .invoice-lines-card,
:root[data-theme="dark"] .invoice-summary-card,
:root[data-theme="dark"] .invoice-head,
:root[data-theme="dark"] .invoice-history,
:root[data-theme="dark"] .invoice-lines-table td,
:root[data-theme="dark"] .quick-create,
:root[data-theme="dark"] .policy-summary > span { color: var(--ink); background: var(--paper); }
:root[data-theme="dark"] .form-card,
:root[data-theme="dark"] .line-entry,
:root[data-theme="dark"] .purchase-lines-placeholder,
:root[data-theme="dark"] .invoice-state,
:root[data-theme="dark"] .purchase-trace-node { background: #102b40; }
:root[data-theme="dark"] th,
:root[data-theme="dark"] .series-toolbar,
:root[data-theme="dark"] .purchase-type-switch,
:root[data-theme="dark"] .invoice-lines-table th { background: #112d42; }
:root[data-theme="dark"] td { border-bottom-color: #203d51; }
:root[data-theme="dark"] input:disabled,
:root[data-theme="dark"] select:disabled { color: #708995; background: #10293b; }
:root[data-theme="dark"] .selection-badge { background: #173247; }
:root[data-theme="dark"] .purchase-hub,
:root[data-theme="dark"] .purchase-editor-heading,
:root[data-theme="dark"] .cash-page-heading { background: linear-gradient(135deg, #0c2337, #103844); }
:root[data-theme="dark"] .invoice-panel,
:root[data-theme="dark"] .purchase-editor-layout { background: #081b2a; }
:root[data-theme="dark"] .sales-flow,
:root[data-theme="dark"] .purchase-flow,
:root[data-theme="dark"] .purchase-rule-note,
:root[data-theme="dark"] .summary-note { background: #103642; }
:root[data-theme="dark"] .button-secondary,
:root[data-theme="dark"] .invoice-action,
:root[data-theme="dark"] .dialog-close { color: var(--ink); background: #123047; }
:root[data-theme="dark"] .conversion-dialog { background: #0c2337; }
:root[data-theme="dark"] .product-master-import-dialog { color: #dbe8ec; border-color: #385263; background: #142a38; }
:root[data-theme="dark"] .product-master-import-header h2,
:root[data-theme="dark"] .product-master-import-details > h3 { color: #f2f7f8; }
:root[data-theme="dark"] .product-master-import-figure,
:root[data-theme="dark"] .product-master-import-description,
:root[data-theme="dark"] .product-master-import-market-prices,
:root[data-theme="dark"] .product-master-import-grid > div,
:root[data-theme="dark"] .product-master-import-actions { background: #142a38; }
:root[data-theme="dark"] .product-master-import-description { background: #183447; }
:root[data-theme="dark"] .product-master-import-grid { background: #385263; border-color: #385263; }
:root[data-theme="dark"] .product-master-import-grid dt,
:root[data-theme="dark"] .product-master-import-header p:last-child,
:root[data-theme="dark"] .product-master-import-image-placeholder { color: #a9bec7; }
:root[data-theme="dark"] .product-master-import-grid dd,
:root[data-theme="dark"] .product-master-import-description p,
:root[data-theme="dark"] .product-master-import-market-prices h3,
:root[data-theme="dark"] .catalog-market-price-value { color: #e8f1f3; }
:root[data-theme="dark"] .catalog-market-price-card,
:root[data-theme="dark"] .product-master-import-market-source { background: #183447; }
:root[data-theme="dark"] .catalog-market-price-copy strong { color: #e8f1f3; }
:root[data-theme="dark"] .product-master-import-warnings h3,
:root[data-theme="dark"] .product-master-import-warnings ul { color: #f2d995; }
:root[data-theme="dark"] .app-confirm-dialog { color: #dbe8ec; border-color: #705f32; background: #142a38; }
:root[data-theme="dark"] .app-confirm-content h2 { color: #f2f7f8; }
:root[data-theme="dark"] .app-confirm-message { color: #bed0d7; }
:root[data-theme="dark"] .app-confirm-actions { border-color: #40505a; }
:root[data-theme="dark"] .app-confirm-cancel { color: #e8f1f3; border-color: #405766; background: #183447; }
:root[data-theme="dark"] .theme-switch-track { border-color: #31577a; background: linear-gradient(120deg, #071829, #12395b 68%, #1b4f70); }
:root[data-theme="dark"] .theme-sun { opacity: 0; transform: translateX(-18px); }
:root[data-theme="dark"] .theme-moon { opacity: 1; transform: translateX(0); }
:root[data-theme="dark"] .theme-cloud { opacity: 0; transform: translateX(24px); }
:root[data-theme="dark"] .theme-stars { opacity: 1; transform: translateX(0); }
:root[data-theme="dark"] .content::before { opacity: .4; background-image: radial-gradient(circle, rgba(16,199,196,.36) 1.5px, transparent 1.9px); }

.currency-page { overflow: hidden; padding: 0; }
.currency-page-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 30px 34px; color: #fff; background: linear-gradient(135deg, #082f59, #0a6d76); }
.currency-page-heading h2 { margin: 4px 0 7px; font-size: 30px; }
.currency-page-heading p:last-child { max-width: 720px; margin: 0; color: #cce9ec; }
.currency-page-heading .eyebrow { color: #40e2da; }
.currency-heading-badge { display: flex; align-items: baseline; gap: 7px; min-width: 150px; padding: 13px 18px; border: 1px solid rgba(255,255,255,.2); border-radius: 18px; background: rgba(255,255,255,.1); }
.currency-heading-badge b { font-size: 26px; color: #42e2da; }
.currency-layout { display: grid; grid-template-columns: minmax(330px, .8fr) minmax(520px, 1.4fr); gap: 20px; padding: 24px; background: var(--soft); }
.currency-form-card, .currency-list-card, .exchange-rate-card { border: 1px solid var(--line); border-radius: 22px; background: var(--paper); box-shadow: 0 16px 35px rgba(7,43,71,.06); }
.currency-form-card { padding: 24px; }
.currency-card-title { display: flex; align-items: center; gap: 13px; margin-bottom: 20px; }
.currency-card-title > span { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 15px; color: #05365d; background: #dff8f7; font-size: 25px; font-weight: 800; }
.currency-card-title strong, .currency-card-title small { display: block; }
.currency-card-title small { margin-top: 4px; color: var(--muted); }
.currency-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 15px; margin-bottom: 18px; }
.currency-form-grid label { font-size: 13px; font-weight: 700; }
.currency-form-grid input:not([type="checkbox"]) { width: 100%; margin-top: 7px; }
.currency-form-grid .full { grid-column: 1 / -1; }
.currency-check { display: flex; align-items: center; gap: 9px; padding: 11px 13px; border-radius: 12px; background: var(--soft); }
.currency-check input { width: 18px; height: 18px; }
.currency-form-card > .button { width: 100%; }
.currency-list-card { min-width: 0; padding: 24px; }
.currency-list-card h3, .exchange-rate-card h3 { margin: 4px 0 18px; font-size: 23px; }
.currency-status { display: inline-flex; padding: 5px 9px; border-radius: 999px; font-size: 11px; font-weight: 800; }
.currency-status.local { color: #065b65; background: #d8f7f4; }
.currency-status.active { color: #24622c; background: #e2f7e5; }
.currency-status.inactive { color: #8b2929; background: #fde6e6; }
.exchange-rate-card { margin: 0 24px 24px; padding: 24px; }
.exchange-rate-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.rate-date-control { display: flex; align-items: center; gap: 8px; }
.rate-date-control > button:not(.button) { width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 12px; color: var(--navy); background: var(--soft); font-size: 26px; }
.rate-date-control input { width: 160px; }
.rate-note { margin: -5px 0 17px; color: var(--muted); font-size: 13px; }
.exchange-rate-table td:first-child strong, .exchange-rate-table td:first-child small { display: block; }
.exchange-rate-table td:first-child small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.exchange-rate-table input { min-width: 115px; width: 100%; padding: 9px 10px; }
.exchange-rate-table input[readonly] { color: #0c7070; background: #e4f8f7; }
.rate-save-button { padding: 9px 13px; border: 0; border-radius: 10px; color: #fff; background: var(--teal); font-weight: 800; cursor: pointer; }
.rate-save-button:disabled { opacity: .55; cursor: default; }
:root[data-theme="dark"] .currency-form-card, :root[data-theme="dark"] .currency-list-card, :root[data-theme="dark"] .exchange-rate-card { background: #0c2337; }
:root[data-theme="dark"] .currency-layout { background: #081b2a; }
:root[data-theme="dark"] .currency-check { background: #102b40; }

.banking-page { overflow: hidden; padding: 0; }
.banking-page-heading { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding: 30px 32px; color: #fff; background: linear-gradient(125deg, #052f55 0%, #063b66 64%, #087778 100%); }
.banking-page-heading h2 { margin: 5px 0 8px; font-size: clamp(27px, 3vw, 39px); line-height: 1.06; }
.banking-page-heading p { margin: 0; color: #c9e4ec; }
.banking-page-heading .eyebrow { color: #42e2da; }
.banking-summary { display: grid; grid-template-columns: repeat(3, minmax(82px, 1fr)); gap: 9px; min-width: 300px; }
.banking-summary span { display: grid; place-items: center; min-height: 82px; padding: 11px; border: 1px solid rgba(255,255,255,.14); border-radius: 17px; color: #c9e4ec; background: rgba(255,255,255,.08); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.banking-summary b { display: block; color: #fff; font-size: 27px; letter-spacing: 0; }
.banking-forms { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; padding: 24px; background: var(--soft); }
.banking-form-card { display: grid; align-content: start; gap: 14px; min-width: 0; padding: 22px; border: 1px solid var(--line); border-radius: 21px; background: var(--paper); box-shadow: 0 16px 35px rgba(7,43,71,.06); }
.banking-form-card:last-child { grid-column: 1 / -1; }
.banking-form-card label { min-width: 0; color: var(--navy); font-size: 13px; font-weight: 750; }
.banking-form-card input, .banking-form-card select { width: 100%; margin-top: 7px; }
.banking-form-card > .button { width: 100%; margin-top: 3px; }
.banking-card-title { display: flex; align-items: center; gap: 13px; margin-bottom: 3px; }
.banking-card-title > span { display: grid; flex: 0 0 auto; place-items: center; width: 45px; height: 45px; border-radius: 14px; color: #05365d; background: #dff8f7; font-size: 20px; font-weight: 850; }
.banking-card-title strong, .banking-card-title small { display: block; }
.banking-card-title small { margin-top: 4px; color: var(--muted); font-size: 12px; font-weight: 500; }
.banking-account-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.banking-tree-card { margin: 0 24px 24px; padding: 24px; border: 1px solid var(--line); border-radius: 22px; background: var(--paper); box-shadow: 0 16px 35px rgba(7,43,71,.06); }
.banking-tree-card h3 { margin: 4px 0 18px; font-size: 23px; }
.banking-tree { display: grid; gap: 15px; }
.bank-node { overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: var(--paper); }
.bank-node > header { padding: 15px 17px; color: #fff; background: linear-gradient(100deg, #07355e, #0a596d); }
.bank-node > header > div { display: flex; align-items: center; gap: 12px; }
.bank-node strong, .bank-node small { display: block; }
.bank-node small { margin-top: 3px; color: inherit; opacity: .72; font-size: 11px; }
.bank-code { display: grid; place-items: center; min-width: 62px; min-height: 42px; padding: 8px; border-radius: 12px; color: #052f55; background: #4ee0d8; font-weight: 850; }
.bank-branch-node { margin: 13px; padding: 14px; border: 1px solid var(--line); border-radius: 15px; background: var(--soft); }
.bank-branch-node h4 { margin: 0 0 11px; color: var(--navy); font-size: 14px; }
.bank-account-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 11px 13px; border-top: 1px solid var(--line); background: var(--paper); }
.bank-account-row:first-of-type { border-top: 0; border-radius: 11px 11px 0 0; }
.bank-account-badges { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.bank-account-badges span { padding: 6px 9px; border-radius: 999px; color: #075a64; background: #dff8f7; font-size: 10px; font-weight: 800; white-space: nowrap; }
.bank-empty { margin: 0; padding: 12px 14px; color: var(--muted); font-size: 12px; }
:root[data-theme="dark"] .banking-forms { background: #081b2a; }
:root[data-theme="dark"] .banking-form-card, :root[data-theme="dark"] .banking-tree-card, :root[data-theme="dark"] .bank-node, :root[data-theme="dark"] .bank-account-row { background: #0c2337; }
:root[data-theme="dark"] .bank-branch-node { background: #102b40; }
:root[data-theme="dark"] .banking-form-card label, :root[data-theme="dark"] .bank-branch-node h4 { color: #e7f2f7; }

@media (max-width: 1050px) {
  .master-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .app-shell { grid-template-columns: 1fr; }
  main { grid-column: 1; }
  .sidebar { transform: translateX(-100%); transition: transform .25s; box-shadow: 20px 0 50px rgba(0,0,0,.2); }
  body.menu-open .sidebar { transform: translateX(0); }
  .menu-button { display: grid; }
  .panel-grid { grid-template-columns: 1fr; }
  .invoice-layout { grid-template-columns: 1fr; }
  .invoice-summary-card { position: static; }
  .document-save-actions { grid-template-columns: repeat(2, 1fr); }
  .dashboard-launcher { grid-template-columns: 1fr; }
  .dashboard-kpis { grid-template-columns: 1fr 1fr; }
  .dashboard-workspace { grid-template-columns: 1fr; }
  .sales-document-cards { grid-template-columns: repeat(2, 1fr); }
  .purchase-metrics { grid-template-columns: repeat(2, 1fr); }
  .purchase-flow { grid-template-columns: 1fr; }.purchase-flow > b { transform: rotate(90deg); text-align: center; }
  .purchase-editor-layout { grid-template-columns: 1fr; }.purchase-policy-card { width: 100%; }
  .cash-movement-layout { grid-template-columns: 1fr; }
  .currency-layout { grid-template-columns: 1fr; }
  .banking-page-heading { align-items: flex-start; flex-direction: column; }
  .banking-summary { width: 100%; min-width: 0; }
  .banking-account-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .workspace-tabs { padding-left: 0; padding-right: 0; }
  .workspace-tab { min-width: 125px; }
  .master-data-hero, .master-data-actions { align-items: stretch; flex-direction: column; }.master-search { min-width: 0; }.master-summary { grid-template-columns: 1fr 1fr; }.master-card-grid { grid-template-columns: 1fr; }
  .topbar { align-items: flex-start; flex-wrap: wrap; padding: 14px 18px; }
  .workspace-identity { width: 100%; order: 2; }
  .workspace-company { flex: 1; }
  .workspace-company strong { max-width: 44vw; }
  .tenant-box { width: calc(100% - 50px); display: block; }
  .tenant-box > label { display: block; margin-bottom: 6px; }
  .tenant-control input { width: 100%; min-width: 0; }
  .content { width: calc(100% - 28px); padding-top: 11px; }
  .theme-toggle { width: 84px; height: 38px; }
  .theme-sun, .theme-moon { width: 27px; height: 27px; }
  .cash-page-heading, .cash-form-actions { align-items: flex-start; flex-direction: column; }
  .cash-form-grid { grid-template-columns: 1fr; }
  .cash-form-grid .full { grid-column: auto; }
  .cash-heading-badge { min-width: 0; }
  .currency-page-heading, .exchange-rate-toolbar { align-items: flex-start; flex-direction: column; }
  .currency-layout { padding: 12px; }
  .currency-form-grid { grid-template-columns: 1fr; }
  .currency-form-grid .full { grid-column: auto; }
  .exchange-rate-card { margin: 0 12px 12px; padding: 17px; }
  .banking-page-heading { padding: 24px 19px; }
  .banking-summary { grid-template-columns: repeat(3, 1fr); }
  .banking-summary span { min-height: 68px; }
  .banking-forms { grid-template-columns: 1fr; padding: 12px; }
  .banking-form-card:last-child { grid-column: auto; }
  .banking-account-grid { grid-template-columns: 1fr; }
  .banking-tree-card { margin: 0 12px 12px; padding: 17px; }
  .bank-account-row { align-items: flex-start; flex-direction: column; }
  .bank-account-badges { justify-content: flex-start; }
  .rate-date-control { flex-wrap: wrap; }
  .hero { align-items: stretch; flex-direction: column; }
  .dashboard-welcome, .dashboard-welcome-actions { align-items: stretch; flex-direction: column; }
  .dashboard-layout-button { justify-content: center; border-color: var(--line); background: var(--paper); }
  .dashboard-kpis { grid-template-columns: 1fr; }
  .dashboard-layout-dialog footer { flex-wrap: wrap; }
  .dashboard-layout-dialog footer .dashboard-layout-reset { width: 100%; margin-right: 0; }
  .mail-workspace-body { grid-template-columns: 1fr; }.mail-workspace-body > aside { display: none; }.mail-workspace-body > main { grid-column: 1; }
  .shortcut-grid,.dashboard-shortcut-option-list { grid-template-columns: 1fr; }
  .dashboard-shortcut-editor-toolbar { align-items: stretch; flex-direction: column; }
  .dashboard-shortcut-editor-toolbar output { align-self: flex-start; }
  .ai-assistant-launcher { right: 10px; bottom: 8px; width: 86px; height: 98px; }.ai-assistant-panel { right: 14px; bottom: 112px; max-height: calc(100vh - 130px); }
  .hero h1 { font-size: 36px; }
  .hero-status { min-width: 0; }
  .steps { padding: 13px; }
  .step small, .step-line { display: none; }
  .conversion-fields { grid-template-columns: 1fr; }
  .step { flex: 1; }
  .step strong { font-size: 10px; }
  .panel { padding: 19px; }
  .panel-heading { align-items: flex-start; flex-wrap: wrap; }
  .selection-badge, .atomic-badge { margin-left: 55px; }
  .form-grid, .form-grid.compact, .inline-fields, .series-toolbar, .series-grid, .line-entry { grid-template-columns: 1fr; }
  .full { grid-column: auto; }
  .pair-link { padding: 3px; }
  .context-chip { padding: 10px 0 0; border-left: 0; border-top: 1px solid var(--line); }
  .save-row { align-items: stretch; flex-direction: column; }
  .invoice-footer { align-items: stretch; flex-direction: column; }
  .invoice-workspace-heading { align-items: flex-start; padding: 25px 20px 20px; }
  .invoice-state { display: none; }
  .invoice-command-bar { align-items: flex-start; padding: 13px 20px; }
  .invoice-command-bar > div { align-items: flex-start; flex-direction: column; gap: 5px; }
  .invoice-command-bar .atomic-badge { display: none; }
  .invoice-layout { padding: 15px; }
  .invoice-info-grid { grid-template-columns: 1fr; }
  .invoice-lines-heading { align-items: flex-start; }
  .invoice-lines-heading > span { display: none; }
  .document-save-actions { grid-template-columns: 1fr; }
  .invoice-records-heading { align-items: flex-start; flex-direction: column; margin-inline: 15px; }
  .records-heading-actions { width: 100%; align-items: stretch; flex-direction: column; }
  .invoice-history { margin-inline: 15px; }
  .sales-hub-heading, .document-list-heading { align-items: flex-start; flex-direction: column; padding: 23px 20px; }
  .sales-flow { justify-content: flex-start; overflow-x: auto; margin-inline: 15px; }
  .sales-flow span { white-space: nowrap; }
  .sales-document-cards { grid-template-columns: 1fr; padding-inline: 15px; }
  .purchase-hero { align-items: stretch; flex-direction: column; padding: 24px 18px; }.purchase-metrics { grid-template-columns: 1fr; padding-inline: 15px; }.purchase-flow { margin-inline: 15px; }.purchase-rule-note { margin-inline: 15px; }.purchase-editor-heading { flex-direction: column; gap: 13px; padding: 24px 19px 20px; }.purchase-editor-heading h2 { font-size: 25px; line-height: 1.15; }.api-pending-badge { align-self: flex-start; }.purchase-editor-layout { padding: 12px; }.purchase-fields { grid-template-columns: 1fr; }.purchase-fields .full { grid-column: auto; }.purchase-type-switch { grid-template-columns: repeat(2, 1fr); }
}

/* IVMEGO standard card/document workspace: familiar dense ERP grid with modern ergonomics. */
.master-data-page { gap: 10px; }
.master-data-hero { align-items: center; padding: 3px 2px 8px; }
.master-data-hero h1 { margin: 3px 0 4px; font-size: clamp(25px,2.4vw,35px); letter-spacing: -.9px; }
.master-summary { gap: 7px; }
.master-summary article { min-height: 62px; padding: 10px 13px; border-radius: 10px; box-shadow: 0 4px 14px rgba(6,46,91,.035); }
.master-summary strong { margin-top: 3px; font-size: 18px; }
.standard-workspace-shell { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); box-shadow: 0 10px 28px rgba(6,46,91,.055); }
.standard-group-bar { min-height: 34px; display: flex; align-items: center; gap: 8px; padding: 7px 12px; border-bottom: 1px solid var(--line); color: var(--muted); background: linear-gradient(90deg,color-mix(in srgb,var(--brand-turquoise-pale) 62%,var(--paper)),var(--paper)); font-size: 8px; font-weight: 700; }
.standard-group-bar > span { color: var(--brand-turquoise-dark); font-size: 12px; letter-spacing: -3px; }
.standard-group-bar small { margin-left: auto; color: var(--brand-turquoise-dark); font-size: 7px; font-weight: 850; text-transform: uppercase; letter-spacing: .45px; }
.standard-data-grid { max-height: calc(100vh - 360px); min-height: 330px; overflow: auto; scrollbar-color: #83c9c7 transparent; scrollbar-width: thin; }
.standard-table { min-width: 940px; border-collapse: separate; border-spacing: 0; font-size: 9px; font-variant-numeric: tabular-nums; }
.standard-table thead { position: sticky; top: 0; z-index: 2; }
.standard-table th { height: 34px; padding: 7px 9px; border-right: 1px solid var(--line); border-bottom: 1px solid #cbd9dc; color: var(--brand-navy); background: color-mix(in srgb,var(--canvas) 78%,var(--paper)); font-size: 7px; font-weight: 900; letter-spacing: .42px; white-space: nowrap; }
.standard-table td { height: 37px; max-width: 270px; padding: 6px 9px; border-right: 1px solid color-mix(in srgb,var(--line) 75%,transparent); border-bottom: 1px solid var(--line); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.standard-table tbody tr:nth-child(even) td { background: color-mix(in srgb,var(--brand-turquoise-pale) 23%,var(--paper)); }
.standard-table tbody tr { cursor: default; transition: background .12s ease, box-shadow .12s ease; }
.standard-table tbody tr:hover td,.standard-table tbody tr:focus td { background: color-mix(in srgb,var(--brand-turquoise-pale) 72%,var(--paper)); }
.standard-table tbody tr:focus { outline: none; box-shadow: inset 3px 0 var(--brand-turquoise); }
.standard-table tbody tr.is-selected td { color: var(--brand-navy); background: color-mix(in srgb,var(--brand-turquoise-pale) 88%,var(--paper)); }
.standard-table tbody tr.is-selected { box-shadow: inset 4px 0 var(--brand-turquoise); }
.standard-table .reference-cell { color: var(--muted); text-align: right; font-family: Consolas,"Courier New",monospace; }
.standard-status { display: inline-flex; align-items: center; gap: 5px; padding: 4px 7px; border-radius: 999px; color: #087e72; background: #dcf8f3; font-size: 7px; font-weight: 900; text-transform: uppercase; }
.standard-status::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: #11b89e; }
.standard-status.passive { color: #a34843; background: #ffebe9; }
.standard-status.passive::before { background: #d85a52; }

/* Shared master-list form: stock and partner cards use one visual contract.
   Module-specific columns, filtering, paging and business operations stay separate. */
.master-data-page.erp-master-list { gap:4px; font-family:var(--ui-font); }
.master-data-page.erp-master-list .master-data-hero { gap:10px; padding:0 2px 4px; }
.master-data-page.erp-master-list .master-data-hero h1 { margin:1px 0 2px; font-size:clamp(22px,2vw,28px); letter-spacing:-.6px; }
.master-data-page.erp-master-list .master-data-hero > div:first-child > p:last-child { font-size:8px; }
.master-data-page.erp-master-list .master-summary article { min-height:44px; padding:5px 8px; border-radius:4px; box-shadow:none; }
.master-data-page.erp-master-list .master-summary strong { margin-top:1px; font-size:14px; }
.master-data-page.erp-master-list .master-summary small { font-size:6.5px; }
.standard-workspace-shell.erp-master-list-shell { --erp-list-row-height:28px; --erp-list-group-height:21px; --erp-list-label-height:26px; --product-row-height:var(--erp-list-row-height); --product-group-height:var(--erp-list-group-height); --product-label-height:var(--erp-list-label-height); border-color:#b9c9cd; border-radius:4px; box-shadow:none; }
.erp-master-list .master-list-toolbar { display:grid; grid-template-columns:minmax(260px,1fr) auto; gap:6px; align-items:center; padding:5px 7px; background:var(--paper); }
.product-workspace-query-tools { min-width:0; display:grid; grid-template-columns:minmax(0,1fr); gap:5px; align-items:center; }
.erp-master-list .master-list-toolbar .master-search { border-radius:4px; }
.erp-master-list .master-list-toolbar .master-search input { min-height:31px; font-size:9px; }
.erp-master-list .master-list-toolbar .standard-command-set { gap:4px; }
.erp-master-list .master-list-toolbar .standard-icon-command { min-height:32px; gap:5px; padding:3px 7px 3px 4px; border-radius:4px; box-shadow:none; }
.erp-master-list .master-list-toolbar .standard-icon-command:hover:not(:disabled) { transform:none; box-shadow:none; }
.erp-master-list .master-list-toolbar .standard-icon-command b { font-size:7px; }
.erp-master-list .master-list-toolbar .command-icon { width:24px; height:24px; border-radius:4px; }
.product-view-editor-command { color:#40566a; background:#f8fafb; }
.product-excel-export-command { color:#087e78; background:#eefaf8; }
.product-load-all-command { color:#075f86; background:#eef7fb; }
.product-load-all-command.is-loading { color:#8a5a00; background:#fff7df; }
.product-workspace-top-scroll { position:relative; z-index:12; width:100%; max-width:100%; min-width:0; height:15px; min-height:15px; overflow-x:scroll; overflow-y:hidden; pointer-events:auto; touch-action:pan-x; overscroll-behavior-x:contain; border-block:1px solid #b9c9cd; background:#edf4f4; scrollbar-color:#55aaa7 #edf4f4; scrollbar-width:auto; }
.product-workspace-top-scroll > div { height:1px; pointer-events:none; }
.product-workspace-top-scroll::-webkit-scrollbar { height:13px; }
.product-workspace-top-scroll::-webkit-scrollbar-track { background:#edf4f4; }
.product-workspace-top-scroll::-webkit-scrollbar-thumb { border:2px solid #edf4f4; border-radius:999px; background:#55aaa7; }
.product-workspace-top-scroll::-webkit-scrollbar-thumb:hover { background:#248f8b; }
.erp-master-list-shell .erp-master-list-grid { overflow-x:auto; overflow-y:scroll; position:relative; scrollbar-gutter:stable; overscroll-behavior:contain; scrollbar-color:#55aaa7 #edf4f4; scrollbar-width:auto; }
.erp-master-list-grid::-webkit-scrollbar { width:12px; height:10px; }
.erp-master-list-grid::-webkit-scrollbar-track { background:#edf4f4; }
.erp-master-list-grid::-webkit-scrollbar-thumb { border:2px solid #edf4f4; border-radius:999px; background:#55aaa7; }
.erp-master-list-grid::-webkit-scrollbar-thumb:hover { background:#248f8b; }
.erp-master-list .erp-master-table { font-family:var(--ui-font); }
.erp-master-list .erp-master-table .reference-cell { font-family:inherit; }
.erp-master-list .erp-master-table th,.erp-master-list .erp-master-table td { box-sizing:border-box; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.erp-master-list .erp-master-table thead { z-index:12; }
.erp-master-list .erp-master-table thead tr:first-child th { position:sticky; top:0; z-index:7; height:var(--erp-list-group-height); padding:2px 6px; border-bottom:1px solid #bdc9cc; background:color-mix(in srgb,var(--canvas) 76%,var(--paper)); color:var(--muted); font-size:var(--erp-grid-header-font-size); font-weight:var(--erp-grid-header-font-weight); letter-spacing:.06em; text-align:center; text-transform:uppercase; }
.erp-master-list .erp-master-table thead tr:nth-child(2) th { position:sticky; top:var(--erp-list-group-height); z-index:6; height:var(--erp-list-label-height); min-height:var(--erp-list-label-height); padding:3px 6px; color:var(--ink); background:color-mix(in srgb,var(--canvas) 30%,var(--paper)); font-size:var(--erp-grid-header-font-size); font-weight:var(--erp-grid-header-font-weight); box-shadow:0 1px 0 #bdc9cc; }
.erp-master-list .erp-master-table tbody td { height:var(--erp-list-row-height); padding:2px 6px; font-size:var(--erp-grid-font-size); font-weight:var(--erp-grid-font-weight); line-height:1.15; }
#productWorkspaceTable { width:max-content; min-width:100%; border-collapse:separate; border-spacing:0; }
#productWorkspaceTable thead tr:nth-child(2) th.is-frozen { z-index:9; }
.product-workspace-header-content { min-width:0; display:flex; align-items:center; justify-content:space-between; gap:4px; }
.product-workspace-header-content > span:first-child { min-width:0; overflow:hidden; text-overflow:ellipsis; }
.product-workspace-header-actions { flex:0 0 auto; display:inline-flex; align-items:center; gap:1px; }
.product-workspace-header-filter,.product-workspace-header-sort { flex:0 0 auto; width:17px; height:17px; display:inline-grid; place-items:center; padding:2px; border:1px solid transparent; border-radius:3px; color:#6e7d83; background:transparent; cursor:pointer; font:700 12px/1 Arial,sans-serif; }
.product-workspace-header-filter svg { width:11px; height:11px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.product-workspace-header-filter:hover,.product-workspace-header-filter:focus-visible,.product-workspace-header-sort:hover,.product-workspace-header-sort:focus-visible { color:#087e78; border-color:#98d8d4; background:#e5f8f5; outline:none; }
.product-workspace-header-filter.is-active,.product-workspace-header-sort.is-active { color:#fff; border-color:#087e78; background:#087e78; box-shadow:0 0 0 1px #fff; }
#productWorkspaceTable thead th.product-workspace-column-group.is-price { background:#f3f0fb; color:#6d55a7; }
#productWorkspaceTable thead th.product-workspace-column-group.is-warehouse { background:#eaf8f5; color:#087e72; }
#productWorkspaceTable thead th.product-workspace-column-group.is-frozen { z-index:9; box-shadow:1px 0 0 #aebfc3; }
#productWorkspaceTable .product-workspace-expander-cell { position:sticky; left:0; z-index:5; width:52px; min-width:52px; max-width:52px; padding-inline:2px; text-align:center; background:var(--paper); }
#productWorkspaceTable thead .product-workspace-expander-cell { z-index:10; background:color-mix(in srgb,var(--canvas) 55%,var(--paper)); }
#productWorkspaceTable thead tr:first-child .product-workspace-expander-cell { z-index:10; padding-inline:2px; }
#productWorkspaceTable thead tr:nth-child(2) .product-workspace-expander-cell { z-index:10; padding-inline:2px; }
#productWorkspaceTable .product-workspace-action-controls .product-workspace-header-content { justify-content:center; }
#productWorkspaceTable .product-workspace-action-controls .product-workspace-header-content > span:first-child { display:none; }
#productWorkspaceTable th.is-frozen { left:var(--product-sticky-left); z-index:9; }
#productWorkspaceTable td.is-frozen { position:sticky; left:var(--product-sticky-left); z-index:4; color:var(--ink); background:var(--paper); }
#productWorkspaceTable tr.is-selected td,#productWorkspaceTable tr.is-selected td.is-frozen { color:var(--ink); background:color-mix(in srgb,var(--brand-turquoise-pale) 88%,var(--paper)); }
#productWorkspaceTable tr.is-inactive td,#productWorkspaceTable tr.is-inactive td.is-frozen { color:var(--muted); background:color-mix(in srgb,var(--canvas) 30%,var(--paper)); }
#productWorkspaceTable .product-workspace-variant-row td { background:color-mix(in srgb,var(--brand-turquoise-pale) 24%,var(--paper)); color:var(--ink); font-size:9.5px; }
#productWorkspaceTable .product-workspace-variant-row td.is-frozen { background:color-mix(in srgb,var(--brand-turquoise-pale) 24%,var(--paper)); }
#productWorkspaceTable .product-workspace-variant-row td[data-column-id="sku"],#productWorkspaceTable .product-workspace-variant-row td[data-column-id="name"] { color:#087e78; font-weight:750; }
#productWorkspaceTable .product-workspace-variant-message-row td { padding:5px 36px; color:var(--muted); background:color-mix(in srgb,var(--brand-turquoise-pale) 14%,var(--paper)); font-size:9px; }
#productWorkspaceTable .is-numeric { text-align:right; font-variant-numeric:tabular-nums; }
.product-workspace-expander { width:21px; height:21px; border:1px solid #b9d8d6; border-radius:4px; background:var(--paper); color:#08a7a1; font:800 13px/1 inherit; cursor:pointer; }
.product-workspace-movements-button,.erp-master-list-row-command { width:23px; height:23px; padding:0; border:1px solid #9fd9d5; border-radius:4px; background:#e9f9f6; color:#087e78; font:850 13px/1 inherit; cursor:pointer; vertical-align:middle; }
.product-workspace-movements-button:hover,.product-workspace-movements-button:focus-visible,.erp-master-list-row-command:hover,.erp-master-list-row-command:focus-visible { border-color:#079c96; background:#d9f5f1; outline:2px solid color-mix(in srgb,#079c96 24%,transparent); outline-offset:1px; }
.erp-master-list .erp-master-table .erp-master-list-action-cell { position:sticky; left:0; z-index:5; width:52px; min-width:52px; max-width:52px; padding-inline:2px; text-align:center; background:var(--paper); }
.erp-master-list .erp-master-table thead .erp-master-list-action-cell { z-index:10; background:color-mix(in srgb,var(--canvas) 55%,var(--paper)); }
.product-workspace-expander-cell .product-workspace-expander,.product-workspace-variant-marker { margin-left:2px; vertical-align:middle; }
.product-workspace-variant-marker { display:inline-block; color:#089c96; font-weight:850; }
.product-workspace-image-button { width:24px; height:24px; padding:0; border:1px solid #d3e1e3; border-radius:3px; overflow:hidden; background:#f2f7f8; color:#7a919b; display:inline-grid; place-items:center; cursor:zoom-in; }
.product-workspace-image-button img { width:100%; height:100%; display:block; object-fit:cover; transform:scale(1.8); transform-origin:center; }
.product-workspace-image-button.has-image-error { color:#a34843; background:#fff1ef; }
.product-workspace-footer { min-height:30px; display:grid; grid-template-columns:minmax(130px,1fr) auto minmax(170px,1fr); align-items:center; gap:8px; padding:3px 7px; }
.product-workspace-footer > span:last-child { text-align:right; }
.standard-grid-footer.product-workspace-footer { flex-wrap:wrap; }
/* Keep stock-page navigation outside the fixed assistant launcher's hit area. */
.product-workspace-pager { display:flex; align-items:center; justify-content:flex-end; gap:6px; padding-inline-end:128px; white-space:nowrap; }
.product-workspace-pager .button { min-height:26px; padding:3px 8px; font-size:8px; }
.product-workspace-pager .button:disabled { cursor:default; }
.product-workspace-limit-note { color:var(--brand-turquoise-dark); font-size:7px; font-weight:850; text-align:center; }
.product-workspace-column-filter-dialog { width:min(480px,calc(100vw - 28px)); }
.product-workspace-column-filter-dialog form { display:grid; gap:12px; padding:18px; }
.product-workspace-column-filter-dialog .dialog-heading p:last-child { margin:4px 0 0; color:var(--muted); font-size:9px; }
.product-workspace-column-filter-fields { display:grid; grid-template-columns:120px minmax(0,1fr); gap:9px; padding:12px; border:1px solid var(--line); border-radius:8px; background:color-mix(in srgb,var(--canvas) 62%,var(--paper)); }
.product-workspace-column-filter-fields label { min-width:0; display:grid; gap:5px; color:var(--ink); font-size:8px; font-weight:850; }
.product-workspace-column-filter-fields input,.product-workspace-column-filter-fields select { width:100%; min-height:34px; padding:0 9px; border:1px solid var(--line); border-radius:5px; color:var(--ink); background:var(--paper); font:inherit; font-size:9px; }
.product-workspace-column-filter-fields input:focus,.product-workspace-column-filter-fields select:focus { outline:2px solid color-mix(in srgb,var(--brand-turquoise) 28%,transparent); border-color:var(--brand-turquoise-dark); }
#productWorkspaceColumnFilterControl { display:block; }
.product-workspace-column-filter-actions { display:grid; grid-template-columns:auto auto 1fr auto auto; gap:7px; }
.product-workspace-view-dialog { width:min(680px,calc(100vw - 28px)); max-height:min(820px,calc(100vh - 28px)); overflow:hidden; }
.product-workspace-view-dialog form { display:flex; flex-direction:column; max-height:calc(100vh - 48px); overflow:hidden; }
.standard-document-view-dialog { width:min(790px,calc(100vw - 28px)); max-height:min(880px,calc(100vh - 28px)); padding:0; overflow:hidden; border:0; border-radius:16px; background:var(--paper); box-shadow:0 28px 80px rgba(4,29,55,.28); }
.standard-document-view-dialog::backdrop { background:rgba(4,29,55,.52); backdrop-filter:blur(4px); }
.standard-document-view-dialog form { display:flex; flex-direction:column; max-height:calc(100vh - 34px); overflow:hidden; }
.standard-document-view-dialog .dialog-heading { flex:0 0 auto; padding:16px 18px 13px; }
.standard-document-view-dialog .dialog-heading h2 { margin:3px 0 2px; font-size:20px; }
.standard-document-view-dialog .dialog-heading p:last-child { margin:3px 0 0; color:var(--muted); font-size:8px; }
.standard-document-view-toolbar { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:9px 16px; border-block:1px solid var(--line); background:color-mix(in srgb,var(--canvas) 60%,var(--paper)); }
.standard-document-view-toolbar > label { display:flex; align-items:center; gap:9px; cursor:pointer; }
.standard-document-view-toolbar input { width:18px; height:18px; accent-color:var(--brand-turquoise-dark); }
.standard-document-view-toolbar b,.standard-document-view-toolbar small { display:block; }
.standard-document-view-toolbar b { font-size:9px; }
.standard-document-view-toolbar small,.standard-document-view-toolbar > span { color:var(--muted); font-size:7px; }
.standard-document-view-toolbar > span { max-width:320px; text-align:right; }
.standard-document-view-columns,.standard-document-view-option { display:grid; grid-template-columns:32px 46px minmax(230px,1fr) minmax(150px,190px); align-items:center; }
.standard-document-view-columns { min-height:27px; padding:0 12px; border-bottom:1px solid #c8d6da; color:var(--muted); background:color-mix(in srgb,var(--canvas) 78%,var(--paper)); font-size:7px; font-weight:900; letter-spacing:.42px; text-transform:uppercase; }
.standard-document-view-columns span:nth-child(-n+2) { text-align:center; }
.standard-document-view-editor { flex:1 1 auto; min-height:260px; max-height:min(590px,64vh); overflow:auto; scrollbar-color:#76bbb8 transparent; scrollbar-width:thin; }
.standard-document-view-option { min-height:42px; padding:5px 12px; border-bottom:1px solid var(--line); background:var(--paper); cursor:pointer; }
.standard-document-view-option[draggable="true"] { cursor:grab; }
.standard-document-view-option.is-dragging { opacity:.48; cursor:grabbing; }
.standard-document-view-option:nth-child(even) { background:color-mix(in srgb,var(--brand-turquoise-pale) 22%,var(--paper)); }
.standard-document-view-option:hover { background:color-mix(in srgb,var(--brand-turquoise-pale) 65%,var(--paper)); }
.standard-document-view-drag-handle { width:25px; height:28px; display:grid; place-items:center; padding:0; border:1px solid transparent; border-radius:5px; color:var(--brand-turquoise-dark); background:transparent; font:inherit; font-size:12px; letter-spacing:-3px; cursor:grab; }
.standard-document-view-drag-handle:hover,.standard-document-view-drag-handle:focus-visible { border-color:var(--line); background:var(--brand-turquoise-pale); outline:none; }
.standard-document-view-drag-handle:disabled { color:var(--muted); cursor:default; opacity:.35; }
.standard-document-view-option > input { justify-self:center; width:18px; height:18px; accent-color:var(--brand-turquoise-dark); }
.standard-document-view-option-copy { min-width:0; display:grid; gap:2px; }
.standard-document-view-option-copy b { color:var(--ink); font-size:9px; }
.standard-document-view-option-copy small { color:var(--muted); font-size:7px; }
.standard-document-view-status { justify-self:stretch; padding:5px 7px; border-radius:5px; color:#a34843; background:#ffebe9; font-size:7px; font-weight:850; text-align:center; white-space:nowrap; }
.standard-document-view-status.is-linked { color:#087e72; background:#dcf8f3; font-family:Consolas,"Courier New",monospace; }
.standard-document-view-option.is-unavailable { cursor:default; }
.standard-document-view-option.is-unavailable .standard-document-view-option-copy b { color:#7f8e96; }
.standard-document-view-option.is-unavailable input { opacity:.48; }
.standard-document-view-option.is-screen-specific .standard-document-view-option-copy b::after { content:" Ekran"; margin-left:6px; padding:2px 5px; border-radius:999px; color:#516775; background:#e9eff2; font-size:6px; text-transform:uppercase; }
.standard-document-view-actions { flex:0 0 auto; padding:10px 14px; border-top:1px solid var(--line); }
.standard-document-view-actions > span { flex:1; }
.product-workspace-column-editor { flex:1 1 auto; min-height:220px; max-height:min(520px,55vh); overflow:auto; border:1px solid var(--line); border-radius:12px; background:var(--canvas); padding:7px; }
.product-workspace-column-option { display:grid; grid-template-columns:20px minmax(0,1fr) auto; align-items:center; gap:10px; min-height:48px; padding:7px 9px; border:1px solid transparent; border-bottom-color:var(--line); background:var(--paper); cursor:grab; transition:border-color .16s,opacity .16s,transform .16s,background .16s; }
.product-workspace-column-option.dragging { opacity:.45; }
.product-workspace-column-option.drag-target { border-color:var(--brand-turquoise); background:color-mix(in srgb,var(--brand-turquoise-pale) 45%,var(--paper)); transform:translateY(2px); }
.product-workspace-column-handle { color:#9aadba; font-size:13px; letter-spacing:-4px; user-select:none; }
.product-workspace-column-option:first-child { border-radius:8px 8px 0 0; }
.product-workspace-column-option:last-child { border-bottom:0; border-radius:0 0 8px 8px; }
.product-workspace-column-option label { display:flex; align-items:center; gap:10px; flex:1; cursor:pointer; }
#productWorkspaceColumnEditor .product-workspace-column-option > label { display:grid!important; grid-template-columns:22px minmax(0,1fr)!important; align-items:center; gap:10px; min-width:0; margin:0; }
#productWorkspaceColumnEditor .product-workspace-column-option input[type="checkbox"] { width:18px!important; height:18px!important; min-height:0!important; margin:0; padding:0; }
.product-workspace-column-option label span { display:grid; gap:2px; }
.product-workspace-column-option label b { color:var(--ink); font-size:11px; }
.product-workspace-column-option label small { color:var(--muted); font-size:9px; }
.product-workspace-column-option > div { display:flex; gap:5px; }
.product-workspace-column-option button { width:31px; height:31px; border:1px solid var(--line); border-radius:8px; background:var(--paper); color:#0ba49e; cursor:pointer; }
.product-workspace-column-option button:disabled { opacity:.35; cursor:default; }
.product-workspace-view-actions { flex:0 0 auto; display:grid; grid-template-columns:auto 1fr auto auto; }
:root[data-theme="dark"] #productWorkspaceTable thead th.product-workspace-column-group.is-price { background:#2b2846; color:#c9b9ff; }
:root[data-theme="dark"] #productWorkspaceTable thead th.product-workspace-column-group.is-warehouse { background:#103b40; color:#86e4dd; }
:root[data-theme="dark"] .product-workspace-movements-button,:root[data-theme="dark"] .erp-master-list-row-command { border-color:#276a68; background:#10383d; color:#9af0e9; }
:root[data-theme="dark"] .product-workspace-top-scroll { border-color:#294b53; background:#102a38; scrollbar-color:#3f918f #102a38; }
:root[data-theme="dark"] .product-workspace-top-scroll::-webkit-scrollbar-track { background:#102a38; }
:root[data-theme="dark"] .product-workspace-top-scroll::-webkit-scrollbar-thumb { border-color:#102a38; background:#3f918f; }
:root[data-theme="dark"] .erp-master-list-grid::-webkit-scrollbar-track { background:#102a38; }
:root[data-theme="dark"] .erp-master-list-grid::-webkit-scrollbar-thumb { border-color:#102a38; background:#3f918f; }
:root[data-theme="dark"] .standard-document-view-status { color:#ffaaa3; background:#49252a; }
:root[data-theme="dark"] .standard-document-view-status.is-linked { color:#8ce9df; background:#103a3d; }
:root[data-theme="dark"] .standard-document-view-option.is-screen-specific .standard-document-view-option-copy b::after { color:#b9cad2; background:#253c49; }

@media (max-width:1100px) {
  .erp-master-list .master-list-toolbar { grid-template-columns:1fr; }
  .product-workspace-footer { grid-template-columns:1fr; text-align:center; }
  .product-workspace-footer > span:last-child { text-align:center; }
  .product-workspace-pager { justify-content:center; }
  .product-workspace-column-filter-actions { grid-template-columns:1fr 1fr; }
  .product-workspace-column-filter-actions > span { display:none; }
}
@media (max-width:720px) {
  .standard-document-view-toolbar { align-items:flex-start; flex-direction:column; }
  .standard-document-view-toolbar > span { max-width:none; text-align:left; }
  .standard-document-view-columns,.standard-document-view-option { grid-template-columns:30px 38px minmax(150px,1fr); }
  .standard-document-view-columns span:last-child,.standard-document-view-status { display:none; }
}
.standard-grid-footer { min-height: 35px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 7px 12px; border-top: 1px solid var(--line); color: var(--muted); background: color-mix(in srgb,var(--canvas) 70%,var(--paper)); font-size: 8px; }
.standard-grid-footer strong { color: var(--ink); font-size: 8px; }
.content:has(> .standard-list-page:not([hidden])),.content:has(> .stock-document-page:not([hidden])) { padding-bottom:11px; }
.standard-list-page { flex:1 1 0; min-height:0; display:grid; grid-template-rows:auto auto minmax(0,1fr) auto; padding-bottom:0; overflow:hidden; border-radius:13px; }
/* Every screen shares the actual space below the application header and tabs.
   Long forms scroll in content; list grids reserve space for their bottom bar. */
@media screen {
  .app-shell {
    height:100dvh;
    min-height:0;
    overflow:hidden;
  }
  .app-shell > main {
    height:100%;
    min-height:0;
    display:grid;
    grid-template-rows:auto auto minmax(0,1fr);
    overflow:hidden;
  }
  .app-shell > main > .content {
    min-width:0;
    min-height:0;
    overflow:auto;
  }
  .content:has(> :is(.standard-list-page,.viewport-list-page):not([hidden])) {
    display:flex;
    flex-direction:column;
    overflow:hidden;
    padding-bottom:8px;
  }
  .content:has(> :is(.standard-list-page,.viewport-list-page):not([hidden])) > .message {
    flex:0 0 auto;
    order:-1;
  }
  .viewport-list-page {
    flex:1 1 0;
    min-width:0;
    min-height:0;
    display:grid;
    grid-template-rows:auto minmax(0,1fr);
  }
  .viewport-list-page > .standard-workspace-shell {
    min-height:0;
    display:flex;
    flex-direction:column;
  }
  .viewport-list-page > .standard-workspace-shell > * { flex:0 0 auto; }
  .viewport-list-page > .standard-workspace-shell > .standard-data-grid {
    flex:1 1 0;
    height:auto;
    min-height:0;
    max-height:none;
  }
  .viewport-list-page .master-list-toolbar { overflow-x:auto; }
}
.standard-list-page .document-list-heading { align-items:center; padding: 14px 16px 11px; }
.standard-list-page .document-list-heading h2 { font-size: 19px; }
@media screen and (max-height:600px) {
  .standard-list-page .document-list-heading { gap:6px; padding-block:6px; }
  .standard-list-page .document-list-heading > div > p { display:none; }
  .viewport-list-page .master-data-hero > div:first-child > p { display:none; }
}
.document-list-summary { width:auto; display:flex; grid-template-columns:none; gap:6px; flex:0 0 auto; }
.document-list-summary article { min-width:126px; min-height:56px; position:relative; padding:7px 10px; border-radius:9px; }
.document-list-summary strong { margin-top:2px; color:var(--brand-navy); font-size:19px; font-variant-numeric:tabular-nums; }
.document-draft-summary { min-width:150px!important; display:grid; grid-template-columns:minmax(34px,1fr) auto; grid-template-rows:auto 1fr; column-gap:6px; border:2px solid #e4665f!important; background:linear-gradient(135deg,#ffe9e7,#fff8f7)!important; box-shadow:0 5px 16px rgba(197,47,41,.16)!important; }
.document-draft-summary small,.document-draft-summary strong { grid-column:1; }
.document-draft-summary small { color:#9f2924; font-weight:950; letter-spacing:.7px; }
.document-draft-summary strong { color:#c52f29; font-size:22px; font-weight:950; line-height:1; }
.document-draft-visibility-toggle { grid-column:2; grid-row:1 / 3; align-self:center; min-height:25px; padding:0 6px; border:1px solid #b92f2a; border-radius:6px; color:#fff; background:#c52f29; box-shadow:0 2px 6px rgba(197,47,41,.18); font:inherit; font-size:6.75px; font-weight:900; white-space:nowrap; cursor:pointer; }
.document-draft-visibility-toggle:hover,.document-draft-visibility-toggle.is-active { color:#fff; border-color:#98241f; background:#a92823; }
.document-draft-visibility-toggle:focus-visible { outline:3px solid rgba(197,47,41,.22); outline-offset:2px; }
.document-draft-visibility-toggle:disabled { cursor:default; opacity:.65; }
.master-list-toolbar[data-toolbar-kind="document"] { display:grid; grid-template-columns:minmax(260px,1fr) auto auto; gap:6px; align-items:center; padding:5px 7px; overflow-x:auto; background:var(--paper); scrollbar-width:thin; }
.master-list-toolbar[data-toolbar-kind="document"] .master-search { border-radius:4px; }
.master-list-toolbar[data-toolbar-kind="document"] .master-search input { min-height:31px; font-size:9px; }
.master-list-toolbar[data-toolbar-kind="document"] .standard-command-set { min-width:max-content; justify-content:flex-start; gap:4px; }
.stock-document-toolbar[data-toolbar-kind="document"] { border-bottom:0; }
.master-list-toolbar[data-toolbar-kind="document"] .standard-icon-command { min-height:30px; gap:4px; padding:2px 6px 2px 3px; border-radius:4px; box-shadow:none; }
.master-list-toolbar[data-toolbar-kind="document"] .standard-icon-command:hover:not(:disabled) { transform:none; box-shadow:none; }
.master-list-toolbar[data-toolbar-kind="document"] .standard-icon-command b { font-size:6.75px; }
.master-list-toolbar[data-toolbar-kind="document"] .command-icon { width:22px; height:22px; border-radius:4px; }
.master-list-toolbar[data-toolbar-kind="document"] .command-icon svg { width:14px; height:14px; }
.master-list-toolbar[data-toolbar-kind="document"] .standard-icon-command.is-active { color:#fff; border-color:var(--brand-turquoise-dark); background:var(--brand-turquoise-dark); }
.standard-date-filter-button { min-width:max-content; }
.standard-document-date-dialog { width:min(510px,calc(100vw - 24px)); max-width:none; padding:0; border:1px solid var(--line); border-radius:12px; color:var(--ink); background:var(--paper); box-shadow:0 28px 88px rgba(5,31,51,.28); }
.standard-document-date-dialog::backdrop { background:rgba(5,31,51,.42); backdrop-filter:blur(3px); }
.standard-document-date-dialog > form { position:relative; padding:18px; }
.standard-document-date-quick { position:relative; margin-top:14px; }
.standard-document-date-quick-toggle { width:100%; min-height:48px; display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:9px; padding:6px 10px 6px 7px; border:1px solid color-mix(in srgb,var(--brand-turquoise) 36%,var(--line)); border-radius:8px; color:var(--brand-navy); background:color-mix(in srgb,var(--brand-turquoise-pale) 42%,var(--paper)); font:inherit; text-align:left; cursor:pointer; }
.standard-document-date-quick-toggle:hover,.standard-document-date-quick-toggle.is-active { border-color:var(--brand-turquoise-dark); background:color-mix(in srgb,var(--brand-turquoise-pale) 82%,var(--paper)); }
.standard-document-date-quick-icon { width:34px; height:34px; display:grid; place-items:center; border-radius:7px; color:#fff; background:var(--brand-turquoise-dark); }
.standard-document-date-quick-icon svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.standard-document-date-quick-toggle b,.standard-document-date-quick-toggle small { display:block; }
.standard-document-date-quick-toggle b { font-size:9px; }
.standard-document-date-quick-toggle small { margin-top:2px; color:var(--muted); font-size:7px; font-weight:650; }
.standard-document-date-quick-chevron { color:var(--brand-turquoise-dark); font-size:18px; transition:transform .15s ease; }
.standard-document-date-quick-toggle.is-active .standard-document-date-quick-chevron { transform:rotate(180deg); }
.standard-document-date-quick-menu { width:min(300px,100%); max-height:300px; position:absolute; top:calc(100% + 5px); left:0; z-index:8; display:grid; align-content:start; overflow:auto; padding:5px; border:1px solid color-mix(in srgb,var(--brand-turquoise) 38%,var(--line)); border-radius:8px; background:var(--paper); box-shadow:0 18px 38px rgba(5,31,51,.2); scrollbar-color:#70bbb8 transparent; scrollbar-width:thin; }
.standard-document-date-quick-menu[hidden] { display:none; }
.standard-document-date-quick-menu button { min-height:30px; padding:5px 9px; border:0; border-radius:5px; color:var(--ink); background:transparent; font:inherit; font-size:8px; font-weight:750; text-align:left; cursor:pointer; }
.standard-document-date-quick-menu button:hover,.standard-document-date-quick-menu button:focus-visible { outline:0; color:#fff; background:var(--brand-turquoise-dark); }
.standard-document-date-fields { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:16px; }
.standard-document-date-fields label { display:grid; gap:5px; color:var(--muted); font-size:8px; font-weight:850; }
.standard-document-date-fields input { width:100%; min-height:38px; padding:0 10px; border:1px solid var(--line); border-radius:7px; caret-color:transparent; color:var(--ink); background:var(--paper); font:inherit; cursor:pointer; }
.standard-document-date-fields input::-webkit-calendar-picker-indicator { width:18px; height:18px; padding:3px; border-radius:5px; cursor:pointer; background-color:color-mix(in srgb,var(--brand-turquoise-pale) 82%,transparent); }
.standard-document-date-fields input:focus { outline:3px solid color-mix(in srgb,var(--brand-turquoise) 18%,transparent); border-color:var(--brand-turquoise-dark); }
.standard-document-date-fields label > small { color:var(--muted); font-size:6.5px; font-weight:650; }
.standard-document-date-format-hint { margin:9px 0 0; color:var(--muted); font-size:7px; line-height:1.45; }
.standard-document-date-actions { display:grid; grid-template-columns:auto 1fr auto auto; align-items:center; }
.standard-document-column-filter-dialog { width:min(540px,calc(100vw - 24px)); max-height:min(720px,calc(100vh - 24px)); padding:0; overflow:hidden; border:1px solid var(--line); border-radius:12px; color:var(--ink); background:var(--paper); box-shadow:0 28px 88px rgba(5,31,51,.28); }
.standard-document-column-filter-dialog::backdrop { background:rgba(5,31,51,.42); backdrop-filter:blur(3px); }
.standard-document-column-filter-dialog > form { max-height:calc(100vh - 28px); display:flex; flex-direction:column; padding:16px; overflow:hidden; }
.standard-document-column-filter-search { min-height:36px; display:flex; align-items:center; gap:7px; margin-top:12px; padding:0 9px; border:1px solid var(--line); border-radius:7px; color:var(--muted); background:var(--paper); }
.standard-document-column-filter-search:focus-within { outline:3px solid color-mix(in srgb,var(--brand-turquoise) 18%,transparent); border-color:var(--brand-turquoise-dark); }
.standard-document-column-filter-search input { min-width:0; flex:1; border:0; outline:0; color:var(--ink); background:transparent; font:inherit; font-size:9px; }
.standard-document-column-filter-selection { display:flex; align-items:center; gap:6px; padding:8px 0 6px; }
.standard-document-column-filter-selection button { min-height:26px; padding:0 8px; border:1px solid var(--line); border-radius:5px; color:var(--brand-navy); background:var(--paper); font:inherit; font-size:7px; font-weight:850; cursor:pointer; }
.standard-document-column-filter-selection button:hover { color:#fff; border-color:var(--brand-turquoise-dark); background:var(--brand-turquoise-dark); }
.standard-document-column-filter-selection small { margin-left:auto; color:var(--muted); font-size:7px; }
.standard-document-column-filter-options { min-height:120px; max-height:390px; display:grid; align-content:start; overflow:auto; border:1px solid var(--line); border-radius:7px; scrollbar-color:#76bbb8 transparent; scrollbar-width:thin; }
.standard-document-column-filter-option { min-height:32px; display:grid; grid-template-columns:20px minmax(0,1fr) auto; align-items:center; gap:8px; padding:4px 9px; border-bottom:1px solid var(--line); background:var(--paper); cursor:pointer; }
.standard-document-column-filter-option:last-child { border-bottom:0; }
.standard-document-column-filter-option:hover { background:color-mix(in srgb,var(--brand-turquoise-pale) 62%,var(--paper)); }
.standard-document-column-filter-option input { width:15px; height:15px; accent-color:var(--brand-turquoise-dark); }
.standard-document-column-filter-option span { min-width:0; overflow:hidden; color:var(--ink); font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.standard-document-column-filter-option small { min-width:28px; color:var(--muted); font-size:7px; font-variant-numeric:tabular-nums; text-align:right; }
.standard-document-column-filter-empty { margin:12px 0; color:var(--muted); font-size:8px; text-align:center; }
.standard-document-column-filter-actions { flex:0 0 auto; display:grid; grid-template-columns:auto 1fr auto auto; align-items:center; margin-top:10px; }
.standard-list-toolbar { min-height: 51px; display: grid; grid-template-columns: minmax(180px,1fr) minmax(240px,410px) auto auto; gap: 9px; align-items: center; padding: 8px 12px; border-bottom: 1px solid var(--line); background: var(--paper); }
.standard-list-toolbar.has-draft-toggle { grid-template-columns: minmax(180px,1fr) minmax(240px,410px) auto auto auto; }
.standard-view-name { display: flex; align-items: center; gap: 9px; min-width: 0; }
.standard-view-name > span { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 15px; }
.standard-view-name strong,.standard-view-name small { display: block; }
.standard-view-name strong { font-size: 9px; }.standard-view-name small { margin-top: 2px; color: var(--muted); font-size: 7px; }
.standard-list-toolbar input { min-height: 34px; padding: 0 11px; border-radius: 8px; font-size: 8px; }
.standard-row-count { min-width: 56px; color: var(--muted); font-size: 8px; font-weight: 800; text-align: right; white-space: nowrap; }
.standard-tool-button { min-height: 32px; padding: 0 10px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink); background: var(--paper); font: inherit; font-size: 7.5px; font-weight: 850; cursor: pointer; }
.standard-tool-button:hover { color: white; border-color: var(--brand-turquoise-dark); background: var(--brand-turquoise-dark); }
.standard-draft-toggle.is-active { color: white; border-color: var(--brand-turquoise-dark); background: var(--brand-turquoise-dark); }
.standard-draft-toggle:disabled { cursor: default; opacity: .65; }
.document-standard-grid .document-workspace-draft-row td { background: color-mix(in srgb,var(--brand-turquoise-pale) 52%,var(--paper)); border-top: 1px solid color-mix(in srgb,var(--brand-turquoise) 30%,var(--line)); }
.document-standard-grid .document-workspace-draft-row:hover td { background: color-mix(in srgb,var(--brand-turquoise-pale) 78%,var(--paper)); }
.document-standard-grid .document-workspace-draft-section-row td { padding: 8px 12px; color: var(--brand-turquoise-dark); background: color-mix(in srgb,var(--brand-turquoise-pale) 82%,var(--paper)); font-size: 8px; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
.document-standard-grid .document-workspace-draft-empty-row td { padding: 15px 12px; color: var(--muted); text-align: center; }
.document-standard-grid .document-workspace-draft-more-row td { padding: 9px 12px; text-align: center; }
.document-standard-grid .document-workspace-draft-more-row .standard-tool-button { min-width: 160px; }
.document-workspace-draft-badge { display: inline-flex; align-items: center; min-height: 21px; padding: 2px 8px; border: 1px solid color-mix(in srgb,var(--brand-turquoise) 45%,var(--line)); border-radius: 999px; color: var(--brand-turquoise-dark); background: var(--paper); font-size: 7.5px; font-weight: 850; }

/* A quiet, persistent distinction from posted sales invoices. */
[data-page="sales-invoices"] {
  --sales-draft-surface: #f5f2fa;
  --sales-draft-emphasis: #ece5f5;
  --sales-draft-border: #d8cde6;
  --sales-draft-ink: #69557e;
}
:root[data-theme="dark"] [data-page="sales-invoices"] {
  --sales-draft-surface: #302b3d;
  --sales-draft-emphasis: #41364f;
  --sales-draft-border: #736184;
  --sales-draft-ink: #e1d3ef;
}
:root body [data-page="sales-invoices"] .document-standard-grid .document-workspace-draft-row td {
  background: var(--sales-draft-surface);
  border-top-color: var(--sales-draft-border);
}
:root body [data-page="sales-invoices"] .document-standard-grid .document-workspace-draft-row:is(:hover, .is-selected) td,
:root body [data-page="sales-invoices"] .document-standard-grid .document-workspace-draft-section-row td {
  background: var(--sales-draft-emphasis);
}
:root body [data-page="sales-invoices"] .document-standard-grid tr[data-document-draft-id] td:first-child {
  box-shadow: inset 3px 0 var(--sales-draft-border);
}
:root body [data-page="sales-invoices"] .document-standard-grid tr[data-document-draft-id].is-selected td:first-child {
  box-shadow: inset 4px 0 var(--sales-draft-ink);
}
[data-page="sales-invoices"] .document-workspace-draft-badge {
  color: var(--sales-draft-ink);
  border-color: var(--sales-draft-border);
  background: var(--sales-draft-surface);
}
.stock-document-summary { flex-wrap:nowrap; }
.standard-list-page .document-list-table { margin: 0; border-radius: 0; }
.standard-list-page .document-standard-grid,.stock-document-page .stock-document-grid { height:auto; min-height:0; max-height:none; }
.standard-grid-drag-scroll { cursor:grab; touch-action:pan-y; overscroll-behavior-x:contain; scrollbar-color:#70bbb8 transparent; scrollbar-width:thin; }
.standard-grid-drag-scroll.is-dragging { cursor:grabbing; user-select:none; }
.standard-grid-drag-scroll button,.standard-grid-drag-scroll a,.standard-grid-drag-scroll input,.standard-grid-drag-scroll select { cursor:pointer; }
.standard-document-open-row td { cursor:pointer; }
.standard-document-open-row:focus-visible { outline:2px solid var(--brand-turquoise-dark); outline-offset:-2px; }
.document-standard-grid .standard-table th,.stock-document-grid .standard-table th { height:28px; padding:4px 8px; }
.standard-column-resize-grid .standard-table { width:max-content; min-width:100%; }
.document-standard-grid .standard-table th.standard-column-filter-heading,.stock-document-grid .standard-table th.standard-column-filter-heading { position:relative; padding-right:34px; }
.standard-column-heading-label { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.standard-column-filter-button { width:20px; height:20px; position:absolute; top:50%; right:9px; display:grid; place-items:center; padding:3px; transform:translateY(-50%); border:1px solid transparent; border-radius:5px; color:#62808a; background:transparent; cursor:pointer!important; }
.standard-column-resize-handle { width:9px; position:absolute; z-index:4; top:0; right:-5px; bottom:0; cursor:col-resize!important; touch-action:none; }
.standard-column-resize-handle::after { content:""; width:2px; position:absolute; top:4px; right:3px; bottom:4px; border-radius:2px; background:transparent; }
.standard-column-resize-handle:hover::after,.standard-column-resize-handle.is-resizing::after { background:var(--brand-turquoise-dark); }
body.standard-column-resizing,body.standard-column-resizing * { cursor:col-resize!important; user-select:none!important; }
.standard-column-filter-button svg { width:12px; height:12px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linejoin:round; }
.standard-column-filter-button:hover { color:var(--brand-turquoise-dark); border-color:color-mix(in srgb,var(--brand-turquoise) 42%,var(--line)); background:var(--brand-turquoise-pale); }
.standard-column-filter-button.is-active { color:#fff; border-color:var(--brand-turquoise-dark); background:var(--brand-turquoise-dark); }
.document-standard-grid .standard-table td,.stock-document-grid .standard-table td { height:28px; padding:3px 8px; }
.document-standard-grid.ultra-dense .standard-table td { height:24px; padding-block:2px; font-size:8px; }
.document-standard-grid .invoice-actions,.stock-document-grid .invoice-actions { min-width:0; align-items:center; gap:4px; }
.document-standard-grid .invoice-action,.stock-document-grid .invoice-action { min-height:22px; padding:2px 7px; border-radius:6px; font-size:8px; line-height:1; }
.document-grid-totals-band { min-width:0; min-height:43px; display:flex; align-items:center; gap:10px; padding:5px 9px; overflow-x:auto; border-top:1px solid color-mix(in srgb,var(--brand-turquoise) 30%,var(--line)); color:var(--muted); background:linear-gradient(180deg,color-mix(in srgb,var(--brand-turquoise-pale) 50%,var(--paper)),var(--paper)); scrollbar-width:thin; }
.document-grid-totals-band > b { flex:0 0 auto; color:var(--brand-navy); font-size:8px; white-space:nowrap; }
.document-grid-totals-band > div { min-width:max-content; display:flex; align-items:center; gap:5px; }
.document-grid-totals-band > small { flex:0 0 auto; margin-left:auto; color:var(--muted); font-size:7px; font-weight:750; white-space:nowrap; }
.document-grid-total-chip { min-height:31px; display:grid; grid-template-columns:auto auto; align-items:center; gap:7px; padding:4px 8px; border:1px solid color-mix(in srgb,var(--brand-turquoise) 24%,var(--line)); border-radius:6px; background:var(--paper); white-space:nowrap; }
.document-grid-total-chip small { color:var(--muted); font-size:6.5px; font-weight:850; text-transform:uppercase; }
.document-grid-total-chip strong { color:var(--brand-navy); font-size:9px; font-variant-numeric:tabular-nums; }
.document-grid-totals-empty { color:var(--muted); font-size:7.5px; }
.master-list-toolbar { display: flex; align-items: center; gap: 10px; padding: 9px 11px; border-bottom: 1px solid var(--line); background: linear-gradient(180deg,var(--paper),color-mix(in srgb,var(--canvas) 55%,var(--paper))); }
.master-list-toolbar .master-search { min-width: 0; flex: 1 1 360px; box-shadow: none; }
.standard-command-set { display: flex; align-items: center; gap: 7px; }
.standard-icon-command { min-height: 42px; display: inline-flex; align-items: center; gap: 7px; padding: 5px 10px 5px 6px; border: 1px solid var(--line); border-radius: 11px; color: var(--brand-navy); background: var(--paper); font: inherit; cursor: pointer; box-shadow: 0 4px 12px rgba(6,46,91,.045); transition: transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease; }
.standard-icon-command b { font-size: 8px; font-weight: 850; white-space: nowrap; }
.standard-icon-command:hover:not(:disabled) { transform: translateY(-1px); border-color: color-mix(in srgb,var(--brand-turquoise) 60%,var(--line)); box-shadow: 0 8px 18px rgba(6,46,91,.1); }
.standard-icon-command:active:not(:disabled) { transform: translateY(0); }
.standard-icon-command:focus-visible { outline: 3px solid color-mix(in srgb,var(--brand-turquoise) 24%,transparent); outline-offset: 2px; }
.standard-icon-command:disabled { cursor: not-allowed; opacity: .42; box-shadow: none; }
.command-icon { width: 30px; height: 30px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 9px; color: #087f7d; background: var(--brand-turquoise-pale); }
.command-icon svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.standard-icon-command.primary { color: white; border-color: transparent; background: linear-gradient(135deg,#0aa7a5,#087d86); }
.standard-icon-command.primary .command-icon { color: #07686b; background: white; }
.standard-icon-command.danger:not(:disabled) { color: #a43d38; }
.standard-icon-command.danger .command-icon { color: #bf4a43; background: #ffebe9; }

.record-detail-dialog { width: min(1240px,calc(100vw - 28px)); height: min(790px,calc(100vh - 24px)); max-height: calc(100vh - 24px); padding: 0; overflow: hidden; border: 0; border-radius: 20px; background: var(--paper); box-shadow: 0 30px 90px rgba(4,29,55,.28); }
.record-detail-dialog::backdrop { background: rgba(4,29,55,.54); backdrop-filter: blur(5px); }
.record-detail-shell { height: 100%; max-height: calc(100vh - 24px); display: flex; flex-direction: column; padding: 0; }
.record-card-header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 20px 13px; border-bottom: 1px solid var(--line); background: linear-gradient(118deg,color-mix(in srgb,var(--brand-turquoise-pale) 58%,var(--paper)),var(--paper) 58%); }
.record-card-heading { min-width: 0; display: flex; align-items: center; gap: 15px; }
.record-card-icon { width: 44px; height: 44px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 13px; color: white; background: linear-gradient(145deg,var(--brand-turquoise),var(--brand-navy)); box-shadow: 0 10px 23px rgba(4,79,101,.2); }
.record-card-icon svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.record-card-heading .eyebrow { margin: 0 0 5px; font-size: 8px; letter-spacing: 1.3px; }
.record-card-heading h2 { margin: 0; color: var(--brand-navy); font-size: clamp(19px,1.8vw,26px); line-height: 1.08; letter-spacing: -.55px; }
.record-card-heading h2 + p { margin: 6px 0 0; color: var(--muted); font-size: 9px; }
.record-card-header-actions { display: flex; align-items: center; gap: 10px; }
.record-card-header-actions .dialog-close,.record-card-header-actions .dialog-minimize { position: static; width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 12px; font: inherit; font-size: 22px; cursor: pointer; transition: transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease,color .15s ease; }
.record-card-header-actions .dialog-minimize { padding: 0; color: #087f8f; border-color: #9adce0; background: #e9fafa; font-size: 0; font-weight: 850; line-height: 1; box-shadow: inset 0 0 0 1px rgba(20,184,184,.08); }
.record-card-header-actions .dialog-minimize::before { content: ""; width: 18px; height: 3px; display: block; border-radius: 999px; background: currentColor; }
.record-card-header-actions .dialog-close { color: #c64747; border-color: #f0c5c5; background: #fff1f1; font-weight: 750; }
.record-card-header-actions .dialog-minimize:hover { transform: translateY(-1px); color: #fff; border-color: #079b9f; background: #079b9f; box-shadow: 0 8px 18px rgba(7,155,159,.22); }
.record-card-header-actions .dialog-close:hover { transform: translateY(-1px); color: #fff; border-color: #cf4c4c; background: #cf4c4c; box-shadow: 0 8px 18px rgba(207,76,76,.2); }
.record-card-header-actions .dialog-minimize:focus-visible { outline: 3px solid color-mix(in srgb,#079b9f 25%,transparent); outline-offset: 2px; }
.record-card-header-actions .dialog-close:focus-visible { outline: 3px solid color-mix(in srgb,#cf4c4c 24%,transparent); outline-offset: 2px; }
.workspace-tab-minimized { border-style: dashed; }
.workspace-minimized-marker { width: 18px; height: 18px; display: inline-grid; place-items: center; flex: 0 0 auto; border-radius: 6px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 13px; font-weight: 900; line-height: 1; }
.record-card-identity { display: grid; grid-template-columns: minmax(150px,.75fr) minmax(280px,1.7fr) minmax(150px,.75fr); gap: 10px; padding: 12px 20px; border-bottom: 1px solid var(--line); background: color-mix(in srgb,var(--canvas) 58%,var(--paper)); }
.record-card-identity label,.record-card-field-grid label { min-width: 0; display: grid; align-content: start; gap: 6px; }
.record-card-identity label.wide,.record-card-field-grid label.wide { grid-column: span 2; }
.record-card-identity label > span,.record-card-field-grid label > span { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: var(--muted); font-size: 7px; font-weight: 850; letter-spacing: .45px; text-transform: uppercase; }
.record-card-identity label > span i,.record-card-field-grid label > span i { color: #b34b42; font-size: 6px; font-style: normal; font-weight: 800; letter-spacing: .2px; text-transform: none; }
.record-card-identity input,.record-card-identity select,.record-card-field-grid input,.record-card-field-grid select,.record-card-field-grid textarea { width: 100%; min-height: 36px; padding: 0 11px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink); background: var(--paper); font: inherit; font-size: 9px; font-weight: 750; transition: border-color .15s ease,box-shadow .15s ease,background .15s ease; }
.record-field-action-row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 7px; align-items: stretch; }
.record-field-action-button { min-width: 118px; padding: 0 13px; border: 1px solid #078f95; border-radius: 8px; color: #fff; background: linear-gradient(135deg,#08aaa9,#08778c); font: inherit; font-size: 8px; font-weight: 900; letter-spacing: .45px; cursor: pointer; box-shadow: 0 6px 14px rgba(4,142,149,.17); }
.record-field-action-button:hover:not(:disabled) { filter: brightness(1.06); transform: translateY(-1px); }
.record-field-action-button:disabled { opacity: .5; cursor: default; box-shadow: none; }
.barcode-allocation-status { color: var(--muted); font-size: 7.2px; font-weight: 650; line-height: 1.4; }
.record-card-field-grid textarea { min-height: 92px; padding-block: 10px; resize: vertical; }
.record-detail-shell[data-mode="view"] input,.record-detail-shell[data-mode="view"] select,.record-detail-shell[data-mode="view"] textarea { color: color-mix(in srgb,var(--ink) 78%,var(--muted)); background: color-mix(in srgb,var(--canvas) 72%,var(--paper)); }
.record-detail-shell[data-mode="edit"] input:not([readonly]):focus,.record-detail-shell[data-mode="edit"] select:focus,.record-detail-shell[data-mode="edit"] textarea:not([readonly]):focus,.record-detail-shell[data-mode="create"] input:focus,.record-detail-shell[data-mode="create"] select:focus,.record-detail-shell[data-mode="create"] textarea:focus { outline: 0; border-color: var(--brand-turquoise); box-shadow: 0 0 0 3px color-mix(in srgb,var(--brand-turquoise) 17%,transparent); }
.record-card-tabs { display: flex; align-items: center; gap: 5px; padding: 8px 20px; overflow-x: auto; border-bottom: 1px solid var(--line); background: var(--paper); scrollbar-width: thin; }
.record-card-tabs button { min-height: 34px; display: inline-flex; align-items: center; gap: 7px; padding: 0 12px; border: 1px solid transparent; border-radius: 9px; color: var(--muted); background: transparent; font: inherit; font-size: 8px; font-weight: 850; white-space: nowrap; cursor: pointer; }
.record-card-tabs button:hover { color: var(--brand-navy); }
.record-card-tabs button.active { color: var(--brand-navy); border-color: color-mix(in srgb,var(--brand-turquoise) 34%,var(--line)); background: var(--brand-turquoise-pale); box-shadow: 0 5px 14px rgba(0,164,164,.08); }
.record-tab-icon { width: 22px; height: 22px; display: grid; place-items: center; border-radius: 7px; color: var(--brand-turquoise-dark); background: color-mix(in srgb,var(--brand-turquoise-pale) 72%,var(--paper)); }
.record-tab-icon svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.record-card-tabs button.active .record-tab-icon { color: white; background: var(--brand-turquoise-dark); }
.record-card-panels { min-height: 0; flex: 1 1 auto; overflow: auto; padding: 13px 20px 16px; background: color-mix(in srgb,var(--canvas) 48%,var(--paper)); scrollbar-color: #83c9c7 transparent; scrollbar-width: thin; }
.record-card-panel { min-height: 100%; }
.record-panel-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin: 0 2px 11px; }
.record-panel-heading h3 { margin: 0; color: var(--brand-navy); font-size: 13px; letter-spacing: -.25px; }
.record-panel-heading p { margin: 3px 0 0; color: var(--muted); font-size: 7.5px; }
.record-panel-heading > span { flex: 0 0 auto; padding: 5px 8px; border-radius: 999px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 6.5px; font-weight: 850; letter-spacing: .35px; text-transform: uppercase; }
.record-card-field-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; padding: 13px; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); box-shadow: 0 8px 25px rgba(6,46,91,.045); }
.product-traceability-shell { min-height: 100%; display: flex; flex-direction: column; }
.product-traceability-page-heading { align-items: end; }
.product-traceability-workspace { display: grid; grid-template-columns: minmax(300px,31fr) minmax(640px,69fr); flex: 1 1 auto; gap: var(--erp-space-2); align-items: stretch; }
.product-traceability-section { min-width: 0; overflow: hidden; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-lg); background: var(--erp-surface); box-shadow: 0 8px 24px rgba(6,46,91,.05); }
.product-traceability-section-header { min-height: 68px; display: flex; align-items: center; gap: var(--erp-space-3); padding: var(--erp-space-3); border-bottom: 1px solid var(--erp-border); background: var(--erp-surface); }
.product-traceability-section-icon { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 38px; border-radius: var(--erp-radius-md); color: white; background: linear-gradient(145deg,var(--brand-turquoise),var(--brand-navy)); box-shadow: 0 7px 16px rgba(4,79,101,.16); }
.product-traceability-section-icon svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.product-traceability-section-header h4 { margin: 0; color: var(--brand-navy); font-size: 13px; }
.product-traceability-section-header p { margin: 3px 0 0; color: var(--muted); font-size: 9px; }
.product-traceability-tracking-body { display: grid; align-content: start; gap: var(--erp-space-3); padding: var(--erp-space-3); }
.product-traceability-toggle-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--erp-space-2); }
.product-erp-card .product-traceability-control.record-checkbox { min-height: 82px; align-content: start; padding: var(--erp-space-3); }
.product-traceability-control.record-checkbox > span { align-self: start; color: var(--brand-navy); font-size: 10px; letter-spacing: 0; text-transform: none; }
.product-traceability-control-help { grid-column: 2; color: var(--muted)!important; font-size: 8.5px!important; font-weight: 600!important; line-height: 1.5; letter-spacing: 0!important; text-transform: none!important; }
.product-traceability-tracking-body > .erp-field:not(.record-checkbox) { display: grid; gap: var(--erp-space-1); }
.product-traceability-tracking-body > .erp-field:not(.record-checkbox) > span { color: var(--brand-navy); font-size: 9px; letter-spacing: 0; text-transform: none; }
.product-traceability-tracking-body > .record-checkbox { min-height: 66px; }
.product-lot-policy { display: grid; gap: var(--erp-space-3); padding: var(--erp-space-3); border: 1px solid color-mix(in srgb,var(--brand-turquoise) 32%,var(--erp-border)); border-radius: var(--erp-radius-md); background: color-mix(in srgb,var(--brand-turquoise) 5%,var(--erp-surface)); }
.product-lot-policy[hidden] { display: none; }
.product-lot-policy-heading { display: grid; gap: 3px; }
.product-lot-policy-heading strong { color: var(--brand-navy); font-size: 11px; }
.product-lot-policy-heading small { color: var(--muted); font-size: 9px; }
.product-lot-policy-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--erp-space-2); }
.product-lot-policy-grid .erp-field:last-child { grid-column: 1 / -1; }
.product-lots-panel { overflow: hidden; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-lg); }
.product-lots-grid { margin: var(--erp-space-3); }
.lot-status { display: inline-flex; align-items: center; min-height: 23px; padding: 3px 9px; border-radius: 999px; font-size: 9px; font-weight: 800; }
.lot-status-normal { color: var(--erp-success); background: color-mix(in srgb,var(--erp-success) 12%,transparent); }
.lot-status-nearexpiry { color: var(--erp-warning); background: color-mix(in srgb,var(--erp-warning) 14%,transparent); }
.lot-status-expired { color: var(--erp-danger); background: color-mix(in srgb,var(--erp-danger) 12%,transparent); }
.stock-document-line-actions { display: flex; align-items: center; gap: 5px; }
.line-lot-button { min-height: 27px; padding: 3px 9px; border: 1px solid color-mix(in srgb,var(--brand-turquoise) 55%,var(--line)); border-radius: 8px; color: var(--brand-navy); background: var(--brand-turquoise-pale); font: inherit; font-size: 9px; font-weight: 800; cursor: pointer; }
.line-lot-button.is-complete { color: #fff; background: var(--brand-turquoise-dark); }
.stock-lot-allocation-dialog { width: min(1040px,calc(100vw - 28px)); }
.stock-lot-allocation-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 12px 0; }
.stock-lot-allocation-toolbar > span { color: var(--muted); font-size: 10px; font-weight: 700; }
.stock-lot-allocation-grid { max-height: min(52vh,520px); }
.stock-lot-allocation-grid input,.stock-lot-allocation-grid select { width: 100%; min-width: 108px; min-height: 32px; border: 1px solid var(--line); border-radius: 7px; padding: 4px 7px; color: var(--ink); background: var(--paper); font: inherit; font-size: 10px; }
.stock-lot-allocation-grid td:first-child { min-width: 190px; }
.stock-lot-allocation-grid td:first-child select + input { margin-top: 5px; }
.product-variant-preview { display: grid; align-content: start; gap: var(--erp-space-2); padding: var(--erp-space-3); }
.product-variant-preview-toggle { min-height: 66px!important; }
.product-variant-dimensions { min-width: 0; padding: var(--erp-space-2); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-md); background: var(--erp-surface); }
.product-variant-dimensions h5,.product-variant-combinations h5 { margin: 0 0 var(--erp-space-2); color: var(--brand-navy); font-size: 10px; }
.product-variant-dimension-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--erp-space-2); }
.product-variant-dimension { min-width: 0; display: grid; align-content: start; gap: var(--erp-space-2); }
.product-variant-dimension label { display: grid; gap: var(--erp-space-1); color: var(--brand-navy); font-size: 9px; font-weight: 800; }
.product-variant-dimension select { width: 100%; min-height: var(--erp-control-height); padding: 0 var(--erp-space-2); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); color: var(--muted); background: var(--erp-surface-muted); font: inherit; font-size: 9px; }
.product-variant-add { width: max-content; min-height: 34px; padding-inline: var(--erp-space-2); color: var(--brand-turquoise-dark); background: var(--erp-surface); }
.product-variant-empty { min-height: 136px; display: grid; place-content: center; justify-items: center; gap: 5px; padding: var(--erp-space-2); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); background: var(--erp-surface); text-align: center; }
.product-variant-empty strong { justify-self: stretch; margin-bottom: auto; color: var(--brand-navy); font-size: 9px; text-align: left; }
.product-variant-empty > span { width: 38px; height: 38px; display: grid; place-items: center; color: color-mix(in srgb,var(--muted) 40%,transparent); }
.product-variant-empty svg { width: 34px; height: 34px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.product-variant-empty p,.product-variant-empty small { margin: 0; color: var(--muted); font-size: 8px; }
.product-variant-combinations { min-width: 0; padding: var(--erp-space-1); }
.product-variant-information { padding: var(--erp-space-3); border: 1px solid color-mix(in srgb,var(--erp-info) 25%,var(--erp-border)); border-radius: var(--erp-radius-sm); color: color-mix(in srgb,var(--brand-navy) 85%,var(--erp-info)); background: color-mix(in srgb,var(--erp-info) 7%,var(--erp-surface)); font-size: 8.5px; line-height: 1.55; }
.product-variant-actions { display: flex; justify-content: flex-end; gap: var(--erp-space-2); margin-top: var(--erp-space-2); }
.product-variant-actions .button { min-width: 170px; }
.product-traceability-variants [disabled] { cursor: not-allowed; }
.product-variant-matrix { width: 100%; min-width: 0; display: grid; grid-template-columns: minmax(0,1fr); align-content: start; gap: var(--erp-space-2); padding: var(--erp-space-3); }
.product-variant-enable-row { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: var(--erp-space-3); padding: var(--erp-space-2) var(--erp-space-3); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-md); background: var(--erp-surface-muted); }
.product-variant-toggle-group { min-width: 0; display: flex; align-items: stretch; gap: var(--erp-space-4); }
.product-variant-toggle-group > label { min-width: 250px; }
.product-variant-automatic-barcode { padding-left: var(--erp-space-4); border-left: 1px solid var(--erp-border); }
.product-variant-enable-row label { min-width: 0; display: flex; align-items: flex-start; gap: var(--erp-space-2); color: var(--brand-navy); cursor: pointer; }
.product-variant-enable-row input { width: 17px; height: 17px; flex: 0 0 17px; margin-top: 1px; accent-color: var(--erp-accent); }
.product-variant-enable-row label > span { display: grid; gap: 3px; }
.product-variant-enable-row strong { font-size: 10px; }
.product-variant-enable-row small { color: var(--muted); font-size: 8px; line-height: 1.45; }
.product-variant-status { width: max-content; display: inline-flex; align-items: center; justify-content: center; padding: 4px 7px; border-radius: 999px; font-size: 7px; font-weight: 850; white-space: nowrap; }
.product-variant-status.active { color: #14715b; background: #daf6ec; }
.product-variant-status.passive { color: var(--erp-danger); background: color-mix(in srgb,var(--erp-danger) 10%,var(--erp-surface)); }
.product-variant-status.draft { color: var(--muted); background: color-mix(in srgb,var(--muted) 10%,var(--erp-surface)); }
.product-variant-details { min-width: 0; display: grid; gap: var(--erp-space-2); }
.product-variant-details[hidden] { display: none!important; }
.product-variant-subheading { display: flex; align-items: baseline; justify-content: space-between; gap: var(--erp-space-2); margin-bottom: var(--erp-space-2); }
.product-variant-subheading h5 { margin: 0; }
.product-variant-subheading small { color: var(--muted); font-size: 7.5px; }
.product-variant-heading-actions { display: flex; align-items: center; justify-content: flex-end; gap: var(--erp-space-2); }
.product-variant-export { min-height: 28px; padding-inline: 9px; color: var(--brand-navy); font-size: 7.5px; white-space: nowrap; }
.product-variant-dimension { padding: var(--erp-space-2); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); background: var(--erp-surface-muted); }
.product-variant-dimension-heading { display: flex; align-items: center; gap: var(--erp-space-2); color: var(--brand-navy); }
.product-variant-dimension-heading > span { width: 21px; height: 21px; display: grid; place-items: center; flex: 0 0 21px; border-radius: 7px; color: #fff; background: var(--erp-accent); font-size: 8px; font-weight: 900; }
.product-variant-dimension-heading strong { overflow: hidden; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.product-variant-value-search { width: 100%; height: 29px; min-height: 29px; padding-inline: 8px; font-size: 8px; }
.product-variant-value-list { height: 174px; max-height: 174px; display: grid; align-content: start; gap: 2px; overflow: auto; padding: 3px; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); background: var(--erp-surface); }
.product-variant-value-option { min-height: 23px; display: flex!important; grid-template-columns: none!important; align-items: center; gap: 7px!important; padding: 2px 5px; border-radius: 5px; cursor: pointer; }
.product-variant-value-option[hidden] { display: none!important; }
.product-variant-value-option:hover { background: color-mix(in srgb,var(--erp-accent) 6%,var(--erp-surface)); }
.product-variant-value-option input { width: 14px; height: 14px; flex: 0 0 14px; accent-color: var(--erp-accent); }
.product-variant-value-option > span { min-width: 0; display: flex; align-items: baseline; gap: 5px; flex: 1; }
.product-variant-value-option strong { overflow: hidden; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.product-variant-value-option small { color: var(--muted); font-size: 6.5px; font-weight: 700; }
.product-variant-value-empty { margin: 0; padding: 15px 7px; color: var(--muted); font-size: 8px; text-align: center; }
.product-variant-quick-add { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 4px; }
.product-variant-quick-add .erp-control { min-width: 0; height: 30px; min-height: 30px; padding-inline: 6px; font-size: 8px; }
.product-variant-quick-add .button { min-width: 44px; min-height: 30px; padding-inline: 6px; font-size: 8px; }
.product-variant-table-wrap { width: 100%; min-width: 0; max-width: 100%; max-height: 360px; overflow: auto; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); }
.product-variant-table { width: 100%; min-width: 0; table-layout: fixed; border-collapse: separate; border-spacing: 0; background: var(--erp-surface); font-size: 7.5px; }
.product-variant-column-sku { width: 19%; }
.product-variant-column-barcode { width: 19%; }
.product-variant-column-model { width: 14%; }
.product-variant-column-color { width: 9%; }
.product-variant-column-size { width: 8%; }
.product-variant-column-quantity { width: 6%; }
.product-variant-column-actions { width: 13%; }
.product-variant-table th { position: sticky; top: 0; z-index: 2; padding: 6px 4px; color: var(--brand-navy); background: var(--erp-surface-muted); font-size: 6.5px; font-weight: 850; line-height: 1.15; text-align: left; white-space: normal; }
.product-variant-table-header-content { min-width:0; display:flex; align-items:center; justify-content:space-between; gap:2px; }
.product-variant-table-header-content > span:first-child { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.product-variant-table .product-workspace-header-filter,.product-variant-table .product-workspace-header-sort { width:14px; height:14px; padding:1px; font-size:10px; }
.product-variant-table .product-workspace-header-filter svg { width:9px; height:9px; }
.product-variant-table th:nth-child(6),.product-variant-table th:nth-child(7),.product-variant-table th:nth-child(8) { text-align: right; }
.product-variant-table td { padding: 6px 4px; border-top: 1px solid var(--erp-border); vertical-align: top; }
.product-variant-table tr.passive td { color: var(--muted); background: color-mix(in srgb,var(--erp-surface-muted) 65%,var(--erp-surface)); }
.product-variant-table td:first-child strong,.product-variant-table td:first-child small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.product-variant-table td:first-child small { margin-top: 2px; color: var(--muted); font-size: 6.5px; }
.product-variant-table tbody td:nth-child(3),.product-variant-table tbody td:nth-child(4),.product-variant-table tbody td:nth-child(5) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.product-variant-table tbody td:last-child { display: flex; align-items: center; flex-wrap: wrap; gap: 3px; }
.product-variant-table .button { min-height: 25px; padding: 0 5px; font-size: 6.5px; white-space: nowrap; }
.product-variant-table-empty { padding: 26px!important; color: var(--muted); text-align: center; }
.product-variant-quantity { min-width: 0; color: var(--brand-navy); font-weight: 800; text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.product-variant-quantity.in { color: var(--erp-success); }
.product-variant-quantity.out,.product-variant-quantity.negative { color: var(--erp-danger); }
.product-variant-table tfoot td { position: sticky; bottom: 0; z-index: 1; padding: 7px 8px; border-top: 2px solid color-mix(in srgb,var(--erp-accent) 35%,var(--erp-border)); color: var(--brand-navy); background: color-mix(in srgb,var(--erp-accent) 7%,var(--erp-surface)); font-weight: 900; }
.product-variant-table tfoot td:first-child { text-align: right; }
.product-variant-barcode-list { min-width: 0; display: flex; flex-wrap: wrap; gap: 3px; overflow-wrap: anywhere; color: var(--muted); }
.product-variant-barcode-list span { max-width: 100%; overflow: hidden; padding: 2px 4px; border-radius: 5px; color: var(--brand-navy); background: var(--brand-turquoise-pale); font-size: 6.5px; font-variant-numeric: tabular-nums; text-overflow: ellipsis; white-space: nowrap; }
.product-variant-barcode-add { display: flex; gap: 4px; margin-top: 5px; }
.product-variant-barcode-add .erp-control { width: min(104px,calc(100% - 38px)); min-width: 0; height: 27px; min-height: 27px; padding-inline: 5px; font-size: 7px; }
.product-variant-actions { align-items: center; justify-content: space-between; }
.product-variant-actions .product-variant-information { flex: 1; margin: 0; padding: var(--erp-space-2); }
.product-variant-load-error { margin: 0; padding: var(--erp-space-2); border: 1px solid color-mix(in srgb,var(--erp-danger) 30%,var(--erp-border)); border-radius: var(--erp-radius-sm); color: var(--erp-danger); background: color-mix(in srgb,var(--erp-danger) 7%,var(--erp-surface)); font-size: 8px; }
.product-variant-workflow-dialog { width: min(1180px,calc(100vw - 28px)); height: min(790px,calc(100vh - 28px)); max-width: none; max-height: none; padding: 0; overflow: hidden; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-lg); color: var(--ink); background: var(--erp-surface); box-shadow: 0 30px 90px rgba(6,46,91,.28); }
.product-variant-workflow-dialog::backdrop { background: rgba(6,34,70,.38); backdrop-filter: blur(3px); }
.product-variant-workflow-shell { height: 100%; display: grid; grid-template-rows: auto auto minmax(0,1fr) auto auto; }
.product-variant-workflow-header { min-height: 82px; display: flex; align-items: flex-start; justify-content: space-between; gap: var(--erp-space-4); padding: var(--erp-space-4) var(--erp-space-5); border-bottom: 1px solid var(--erp-border); background: var(--erp-surface-muted); }
.product-variant-workflow-header .eyebrow { margin: 0 0 3px; color: var(--erp-accent); font-size: 8px; font-weight: 850; letter-spacing: .8px; }
.product-variant-workflow-header h2 { margin: 0; color: var(--brand-navy); font-size: 20px; }
.product-variant-workflow-header p:last-child { margin: 5px 0 0; color: var(--muted); font-size: 9px; }
.product-variant-workflow-steps { min-height: 62px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; margin: 0; padding: 0 var(--erp-space-5); border-bottom: 1px solid var(--erp-border); list-style: none; background: var(--erp-surface); }
.product-variant-workflow-steps li { position: relative; display: flex; align-items: center; justify-content: center; gap: var(--erp-space-2); color: var(--muted); font-size: 9px; }
.product-variant-workflow-steps li::after { content: ""; position: absolute; right: -50%; bottom: 0; left: 50%; height: 2px; background: var(--erp-border); }
.product-variant-workflow-steps li:last-child::after { display: none; }
.product-variant-workflow-steps li > span { position: relative; z-index: 1; width: 25px; height: 25px; display: grid; place-items: center; border: 1px solid var(--erp-border); border-radius: 50%; color: var(--muted); background: var(--erp-surface); font-size: 8px; font-weight: 900; }
.product-variant-workflow-steps li.active,.product-variant-workflow-steps li.complete { color: var(--brand-navy); }
.product-variant-workflow-steps li.active > span,.product-variant-workflow-steps li.complete > span { color: #fff; border-color: var(--erp-accent); background: var(--erp-accent); }
.product-variant-workflow-content { min-height: 0; overflow: auto; padding: var(--erp-space-4) var(--erp-space-5); background: color-mix(in srgb,var(--erp-surface-muted) 40%,var(--erp-surface)); }
.product-variant-workflow-dialog > .product-variant-workflow-shell > .dialog-error { margin: 0 var(--erp-space-5) var(--erp-space-2); }
.product-variant-workflow-actions { min-height: 64px; display: grid; grid-template-columns: auto 1fr auto auto auto; align-items: center; gap: var(--erp-space-2); padding: var(--erp-space-3) var(--erp-space-5); border-top: 1px solid var(--erp-border); background: var(--erp-surface); }
.product-variant-workflow-actions .button { min-width: 118px; }
.product-variant-selector-layout { height: 100%; min-height: 430px; display: grid; grid-template-columns: minmax(190px,.28fr) minmax(0,1fr); gap: var(--erp-space-3); }
.product-variant-selector-models,.product-variant-selector-matrix { min-width: 0; overflow: hidden; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-md); background: var(--erp-surface); }
.product-variant-selector-models { display: grid; align-content: start; gap: 1px; padding: var(--erp-space-2); }
.product-variant-selector-models > div { display: flex; align-items: baseline; justify-content: space-between; padding: var(--erp-space-2); color: var(--brand-navy); }
.product-variant-selector-models > div small { color: var(--muted); font-size: 8px; }
.product-variant-selector-models > button { min-height: 40px; display: flex; align-items: center; justify-content: space-between; gap: var(--erp-space-2); padding: 0 var(--erp-space-3); border: 0; border-radius: var(--erp-radius-sm); color: var(--brand-navy); background: transparent; font: inherit; font-size: 10px; cursor: pointer; text-align: left; }
.product-variant-selector-models > button:hover { background: color-mix(in srgb,var(--erp-accent) 6%,var(--erp-surface)); }
.product-variant-selector-models > button.active { color: #fff; background: var(--brand-navy); }
.product-variant-selector-model-name { min-width: 0; display: grid; gap: 2px; }
.product-variant-selector-model-name > strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.product-variant-selector-model-name > small { color: inherit; font-size: 7px; font-weight: 700; opacity: .72; }
.product-variant-selector-model-count { min-width: 42px; padding: 3px 6px; border-radius: 999px; color: inherit; background: color-mix(in srgb,currentColor 12%,transparent); font-size: 7px; text-align: center; white-space: nowrap; }
.product-variant-selector-matrix { display: grid; grid-template-rows: auto minmax(0,1fr); }
.product-variant-selector-toolbar { min-height: 50px; display: flex; align-items: center; gap: var(--erp-space-2); padding: var(--erp-space-2) var(--erp-space-3); border-bottom: 1px solid var(--erp-border); background: var(--erp-surface-muted); }
.product-variant-selector-toolbar label { display: flex; align-items: center; gap: 4px; color: var(--brand-navy); font-size: 9px; font-weight: 800; }
.product-variant-selector-toolbar input { accent-color: var(--erp-accent); }
.product-variant-selector-toolbar .button { min-height: 29px; padding-inline: 8px; font-size: 8px; }
.product-variant-selector-legend { display: flex; align-items: center; gap: 8px; margin-left: auto; color: var(--muted); font-size: 7px; font-weight: 750; white-space: nowrap; }
.product-variant-selector-legend > span { display: inline-flex; align-items: center; gap: 4px; }
.product-variant-selector-legend i { width: 9px; height: 9px; border: 1px solid var(--erp-border); border-radius: 3px; }
.product-variant-selector-legend .existing i { border-color: color-mix(in srgb,var(--erp-accent) 42%,var(--erp-border)); background: color-mix(in srgb,var(--erp-accent) 18%,var(--erp-surface)); }
.product-variant-selector-legend .new i { border-color: #e7bd69; background: #fff2cf; }
.product-variant-selector-legend .passive i { border-color: color-mix(in srgb,var(--erp-danger) 45%,var(--erp-border)); background: color-mix(in srgb,var(--erp-danger) 12%,var(--erp-surface)); }
.product-variant-selector-toolbar > strong { color: var(--brand-navy); font-size: 8px; white-space: nowrap; }
.product-variant-selector-table-wrap { min-height: 0; overflow: auto; }
.product-variant-selector-table { width: 100%; min-width: 620px; border-collapse: collapse; }
.product-variant-selector-table th { position: sticky; top: 0; z-index: 1; min-width: 72px; padding: 10px; border-bottom: 1px solid var(--erp-border); color: var(--brand-navy); background: var(--erp-surface-muted); font-size: 9px; text-align: center; }
.product-variant-selector-table th:first-child { left: 0; z-index: 2; min-width: 120px; text-align: left; }
.product-variant-selector-table tbody th { border-right: 1px solid var(--erp-border); }
.product-variant-selector-table td { height: 46px; padding: 8px; border-right: 1px solid var(--erp-border); border-bottom: 1px solid var(--erp-border); text-align: center; }
.product-variant-selector-table td.is-existing { background: color-mix(in srgb,var(--erp-accent) 10%,var(--erp-surface)); }
.product-variant-selector-table td.is-new { background: #fffaf0; }
.product-variant-selector-table td.is-passive { background: color-mix(in srgb,var(--erp-danger) 7%,var(--erp-surface)); }
.product-variant-selector-cell-control { display: grid; place-items: center; gap: 4px; cursor: pointer; }
.product-variant-selector-table td input { width: 18px; height: 18px; accent-color: var(--erp-accent); cursor: pointer; }
.product-variant-combination-kind { min-width: 38px; padding: 2px 4px; border-radius: 999px; color: var(--brand-navy); background: color-mix(in srgb,var(--erp-accent) 18%,var(--erp-surface)); font-size: 6px; font-weight: 850; line-height: 1; text-transform: uppercase; }
.is-new .product-variant-combination-kind { color: #78520c; background: #ffe7a8; }
.is-passive .product-variant-combination-kind { color: var(--erp-danger); background: color-mix(in srgb,var(--erp-danger) 13%,var(--erp-surface)); }
.product-variant-workflow-question { max-width: 820px; display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: var(--erp-space-4); margin: var(--erp-space-5) auto var(--erp-space-4); padding: var(--erp-space-5); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-lg); background: var(--erp-surface); box-shadow: 0 12px 35px rgba(6,46,91,.06); }
.product-variant-workflow-question.compact { margin-top: var(--erp-space-2); padding: var(--erp-space-4); }
.product-variant-workflow-question > span { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 50%; color: var(--erp-accent); background: var(--brand-turquoise-pale); font-size: 24px; font-weight: 900; }
.product-variant-workflow-question h3 { margin: 0; color: var(--brand-navy); font-size: 16px; }
.product-variant-workflow-question p { margin: 7px 0 0; color: var(--muted); font-size: 9px; line-height: 1.6; }
.product-variant-workflow-choices { max-width: 820px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--erp-space-3); margin: 0 auto; }
.product-variant-workflow-choice { min-height: 90px; display: flex; align-items: flex-start; gap: var(--erp-space-3); padding: var(--erp-space-4); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-md); background: var(--erp-surface); cursor: pointer; }
.product-variant-workflow-choice:has(input:checked) { border-color: var(--erp-accent); background: color-mix(in srgb,var(--erp-accent) 6%,var(--erp-surface)); box-shadow: 0 0 0 2px color-mix(in srgb,var(--erp-accent) 12%,transparent); }
.product-variant-workflow-choice input { width: 17px; height: 17px; margin-top: 1px; accent-color: var(--erp-accent); }
.product-variant-workflow-choice > span { display: grid; gap: 5px; }
.product-variant-workflow-choice strong { color: var(--brand-navy); font-size: 10px; }
.product-variant-workflow-choice small { color: var(--muted); font-size: 8px; line-height: 1.5; }
.product-variant-barcode-editor-wrap { max-height: 330px; overflow: auto; margin-top: var(--erp-space-4); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-md); background: var(--erp-surface); }
.product-variant-barcode-editor { width: 100%; min-width: 760px; border-collapse: collapse; }
.product-variant-barcode-editor th { position: sticky; top: 0; z-index: 1; padding: 9px; color: var(--brand-navy); background: var(--erp-surface-muted); font-size: 8px; text-align: left; }
.product-variant-barcode-editor td { padding: 7px 9px; border-top: 1px solid var(--erp-border); color: var(--ink); font-size: 8px; }
.product-variant-barcode-editor td:first-child { color: var(--brand-navy); font-weight: 850; white-space: nowrap; }
.product-variant-barcode-editor .erp-control { width: 100%; min-width: 210px; height: 32px; min-height: 32px; font-size: 9px; font-variant-numeric: tabular-nums; }
@media (max-width:900px) {
  .product-variant-toggle-group { display: grid; gap: var(--erp-space-2); }
  .product-variant-automatic-barcode { padding: var(--erp-space-2) 0 0; border-top: 1px solid var(--erp-border); border-left: 0; }
  .product-variant-selector-layout { grid-template-columns: 1fr; }
  .product-variant-selector-models { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .product-variant-selector-models > div { grid-column: 1/-1; }
  .product-variant-workflow-choices { grid-template-columns: 1fr; }
}
.product-special-codes-workspace { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: var(--erp-space-3); align-items: stretch; }
.product-special-codes-section { min-width: 0; overflow: hidden; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-lg); background: var(--erp-surface); box-shadow: 0 8px 25px rgba(6,46,91,.045); }
.product-special-codes-section > .erp-panel-header { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: var(--erp-space-3); padding: var(--erp-space-3); border-bottom: 1px solid var(--erp-border); background: var(--erp-surface-muted); }
.product-special-codes-section .erp-panel-title { margin: 0; color: var(--brand-navy); font-size: 13px; }
.product-special-codes-section .erp-panel-description { margin: 3px 0 0; color: var(--muted); font-size: 8px; line-height: 1.4; }
.product-special-codes-badge { flex: 0 0 auto; padding: 5px 8px; border-radius: 999px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 6.5px; font-weight: 850; letter-spacing: .35px; text-transform: uppercase; }
.product-special-codes-grid.record-card-field-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--erp-space-2); padding: var(--erp-space-3); border: 0; border-radius: 0; box-shadow: none; }
.product-special-operational-fields .erp-control:disabled { color: color-mix(in srgb,var(--muted) 78%,transparent); border-style: dashed; background: color-mix(in srgb,var(--erp-surface-muted) 84%,var(--erp-surface)); cursor: not-allowed; }
.product-special-operational-fields .record-checkbox:has(input:disabled) { color: var(--muted); border-style: dashed; background: var(--erp-surface-muted); }
.record-card-empty { min-height: 190px; display: grid; place-content: center; justify-items: center; gap: 10px; border: 1px dashed color-mix(in srgb,var(--brand-turquoise) 45%,var(--line)); border-radius: 15px; color: var(--muted); background: var(--paper); text-align: center; }
.record-card-empty span { width: 43px; height: 43px; display: grid; place-items: center; border-radius: 13px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 23px; }
.record-card-empty p { max-width: 420px; margin: 0; font-size: 9px; line-height: 1.6; }
.record-card-command-bar { position: sticky; bottom: 0; z-index: 3; min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 9px 20px; border-top: 1px solid var(--line); background: color-mix(in srgb,var(--paper) 94%,transparent); box-shadow: 0 -10px 28px rgba(6,46,91,.06); backdrop-filter: blur(10px); }

/*
 * Stock card ERP workspace
 *
 * The stock record keeps the familiar dense desktop ERP hierarchy while
 * retaining the IVMEGO visual language and the existing edit/save guards.
 */
.erp-button { min-height: var(--erp-control-height); display: inline-flex; align-items: center; justify-content: center; padding: 0 var(--erp-space-3); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-md); font: inherit; font-size: 11px; font-weight: 800; cursor: pointer; }
.erp-button[hidden] { display: none; }
.erp-button:focus-visible { outline: 3px solid color-mix(in srgb,var(--erp-accent) 25%,transparent); outline-offset: 2px; }
.erp-button:disabled { cursor: not-allowed; opacity: .48; }
.erp-button-secondary { color: var(--brand-navy); background: var(--erp-surface); }
.erp-button-primary { color: #fff; border-color: var(--erp-accent); background: var(--erp-accent); }
.erp-button-danger { color: var(--erp-danger); border-color: color-mix(in srgb,var(--erp-danger) 35%,var(--erp-border)); background: color-mix(in srgb,var(--erp-danger) 6%,var(--erp-surface)); }

.record-detail-dialog:has(.product-erp-card) { width: min(1500px,calc(100vw - 20px)); height: min(920px,calc(100vh - 16px)); max-height: calc(100vh - 16px); border-radius: var(--erp-radius-lg); }
.product-erp-card { --product-line: var(--erp-border); --product-line-soft: color-mix(in srgb,var(--erp-border) 78%,transparent); --product-surface: var(--erp-surface-muted); max-height: calc(100vh - 16px); color: var(--ink); }
.product-erp-card .record-card-header { min-height: 68px; padding: var(--erp-space-2) var(--erp-space-4); border-bottom-color: var(--erp-border); background: var(--erp-surface); }
.product-erp-card .record-card-icon { width: 36px; height: 36px; border-radius: var(--erp-radius-md); box-shadow: none; }
.product-erp-card .record-card-icon svg { width: 20px; height: 20px; }
.product-erp-card .record-card-heading { min-width: 320px; gap: var(--erp-space-3); }
.product-erp-card .record-card-heading > div { min-width: 0; }
.product-erp-card .record-card-heading .eyebrow { display: none; }
.record-card-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: var(--erp-space-1); margin-bottom: 3px; color: var(--muted); font-size: 10px; line-height: 1.2; }
.record-card-breadcrumb[hidden] { display: none; }
.record-card-breadcrumb > * { color: inherit; text-decoration: none; }
.record-card-breadcrumb > *:not(:last-child)::after { content: ">"; margin-left: var(--erp-space-1); color: #98a2a7; }
.record-card-breadcrumb [aria-current="page"] { color: var(--brand-navy); font-weight: 750; }
.product-erp-card .record-card-heading h2 { overflow: hidden; font-size: 20px; line-height: 1.12; text-overflow: ellipsis; white-space: nowrap; }
.product-erp-card .record-card-heading h2 + p { overflow: hidden; margin-top: 3px; font-size: var(--erp-font-caption); text-overflow: ellipsis; white-space: nowrap; }
.product-erp-card .record-card-header-actions { gap: var(--erp-space-2); }
.record-card-primary-actions { display: flex; align-items: center; gap: var(--erp-space-2); padding-right: var(--erp-space-2); border-right: 1px solid var(--erp-border); }
.record-card-primary-actions[hidden] { display: none; }
.product-erp-card .record-card-primary-actions { padding-right: 0; border-right: 0; }
.product-erp-card .record-card-header-actions > #recordDetailStatus,
.product-erp-card .record-card-header-actions > #minimizeRecordDetail,
.product-erp-card .record-card-header-actions > #closeRecordDetail { display: none; }
.product-erp-card .record-card-lower-button { min-width: 92px; }
.product-erp-card .record-card-header-actions .dialog-close,.product-erp-card .record-card-header-actions .dialog-minimize { width: var(--erp-control-height); height: var(--erp-control-height); border-radius: var(--erp-radius-md); }
.product-erp-card .record-card-tabs { display: flex; flex: 0 0 auto; gap: 0; padding: 0 var(--erp-space-4); overflow-x: auto; overflow-y: hidden; border-top: 0; border-bottom: 1px solid var(--erp-border); background: var(--erp-surface); scrollbar-width: thin; }
.product-erp-card .record-card-tabs button { width: auto; min-width: max-content; min-height: 40px; gap: 5px; padding: 0 10px; border: 0; border-radius: 0; color: var(--muted); background: transparent; font-size: 10px; font-weight: 750; transition: color .12s ease,background .12s ease,box-shadow .12s ease; }
.product-erp-card .record-card-tabs button:hover { transform: none; color: var(--brand-navy); background: color-mix(in srgb,var(--erp-accent) 5%,var(--erp-surface)); filter: none; box-shadow: none; }
.product-erp-card .record-card-tabs button:focus-visible { position: relative; z-index: 1; outline: 2px solid var(--erp-accent); outline-offset: -3px; }
.product-erp-card .record-card-tabs button.active { color: var(--brand-navy); border: 0; background: color-mix(in srgb,var(--erp-accent) 6%,var(--erp-surface)); box-shadow: inset 0 -3px var(--erp-accent); }
.product-erp-card .record-tab-icon { width: 20px; height: 20px; flex: 0 0 20px; border-radius: var(--erp-radius-sm); color: currentColor; background: transparent; }
.product-erp-card .record-tab-icon svg { width: 13px; height: 13px; }
.product-erp-card .record-card-tabs button.active .record-tab-icon { color: var(--erp-accent); background: color-mix(in srgb,var(--erp-accent) 10%,transparent); }
.product-erp-card .record-card-panels { padding: var(--erp-space-2) var(--erp-space-3) var(--erp-space-3); background: var(--product-surface); scroll-padding-block: var(--erp-space-3) 70px; }
.product-erp-card .record-card-panel { display: flex; flex-direction: column; }
.product-erp-card .record-card-panel > :only-child,.product-erp-card .record-card-panel > .record-card-field-grid { flex: 1 1 auto; }
.product-erp-card .record-card-panel > .record-card-field-grid { align-content: start; }
.product-erp-card .record-card-panel > .record-detail-table > .erp-panel-body { flex: 1 1 auto; }
.product-erp-card .record-card-panel:focus { outline: 0; }
.product-erp-card .record-card-command-bar { min-height: 52px; padding: var(--erp-space-2) var(--erp-space-4); border-top-color: var(--erp-border); background: color-mix(in srgb,var(--erp-surface) 97%,transparent); }
.product-erp-card .record-card-command-bar .button { min-height: var(--erp-control-height); border-radius: var(--erp-radius-md); font-size: 11px; }
.product-erp-card .record-card-command-bar .button-save { min-width: 128px; background: var(--erp-accent); }
.product-erp-card #cancelRecordCardEdit { color: var(--erp-danger); border-color: color-mix(in srgb,var(--erp-danger) 35%,var(--erp-border)); background: color-mix(in srgb,var(--erp-danger) 6%,var(--erp-surface)); }
.product-erp-card .record-card-command-bar span { font-size: 10px; }
.record-validation-summary { color: var(--erp-danger)!important; font-weight: 800!important; }
.product-overview-workspace { min-height: 100%; display: block; }
.product-overview-groups { min-width: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-content: start; gap: var(--erp-space-2); }
.product-overview-section { min-width: 0; overflow: hidden; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-md); background: var(--erp-surface); box-shadow: 0 2px 8px rgba(6,46,91,.04); }
.product-overview-section > header { min-height: 40px; display: flex; align-items: center; justify-content: space-between; gap: var(--erp-space-2); padding: 6px var(--erp-space-3); border-bottom: 1px solid var(--erp-border); background: var(--erp-surface-muted); }
.product-overview-section h3 { margin: 0; color: var(--brand-navy); font-size: 12px; font-weight: 850; }
.product-overview-section header p { margin: 2px 0 0; color: var(--muted); font-size: 10px; }
.product-overview-field-grid { grid-template-columns: repeat(var(--erp-form-columns,2),minmax(0,1fr)); gap: var(--erp-space-2); padding: var(--erp-space-2) var(--erp-space-3) var(--erp-space-3); border: 0; border-radius: 0; box-shadow: none; }
.product-overview-section[data-panel="basic"] .product-overview-field-grid {
  grid-template-columns: minmax(120px,.7fr) minmax(220px,1.2fr) minmax(88px,.5fr) minmax(100px,.58fr);
  grid-template-areas:
    "sku barcode status product-type"
    "name name name unit";
}
.product-overview-section[data-panel="basic"] [data-field-layout="sku"] { grid-area: sku; }
.product-overview-section[data-panel="basic"] [data-field-layout="barcode"] { grid-area: barcode; }
.product-overview-section[data-panel="basic"] [data-field-layout="unit"] { grid-area: unit; }
.product-overview-section[data-panel="basic"] [data-field-layout="product-type"] { grid-area: product-type; }
.product-overview-section[data-panel="basic"] [data-field-layout="status"] { grid-area: status; }
.product-overview-section[data-panel="basic"] [data-field-layout="name"] { grid-area: name; }
.product-overview-section[data-panel="basic"] .barcode-allocation-status { display: none; }
.product-overview-section[data-panel="basic"] [data-field-layout="sku"] input,
.product-overview-section[data-panel="basic"] [data-field-layout="barcode"] input { font-variant-numeric: tabular-nums; }
.product-overview-section[data-panel="basic"] [data-field-layout="sku"] input::placeholder,
.product-overview-section[data-panel="basic"] [data-field-layout="barcode"] input::placeholder { font-size: 9px!important; font-weight: 600; letter-spacing: 0; }
.product-overview-section[data-panel="basic"] [data-field-layout="barcode"] .record-field-action-button { min-width: 96px; padding-inline: 7px; }
.product-classification-layout { min-width: 0; display: grid; grid-template-columns: clamp(140px,21%,168px) 1px minmax(0,1fr); gap: var(--erp-space-3); align-items: stretch; padding: var(--erp-space-2) var(--erp-space-3) var(--erp-space-3); }
.product-classification-image { position: relative; width: 100%; height: 100%; min-width: 0; min-height: 160px; display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: var(--erp-space-2); margin: 0; overflow: visible; border: 0; background: transparent; text-align: center; }
.product-classification-image-open { position: relative; width: 100%; min-height: 108px; flex: 1 1 auto; display: grid; place-items: center; overflow: hidden; padding: 0; border: 0; border-radius: 24px 10px 24px 10px; color: inherit; background: linear-gradient(145deg,color-mix(in srgb,var(--erp-accent) 8%,var(--erp-surface-muted)),var(--erp-surface) 72%); cursor: zoom-in; }
.product-classification-image-open:disabled { cursor: default; }
.product-classification-image-open:not(:disabled):hover .product-classification-image-preview { transform: scale(1.02); }
.product-classification-image-open:focus-visible { outline: 3px solid color-mix(in srgb,var(--erp-accent) 38%,transparent); outline-offset: 2px; }
.product-classification-image-preview { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; object-position: center; transition: transform .16s ease; }
.product-classification-image-preview[hidden] { display: none; }
.product-classification-image-glyph { width: 45px; height: 45px; display: grid; place-items: center; border-radius: 16px 7px 16px 7px; color: var(--erp-accent); background: color-mix(in srgb,var(--erp-accent) 12%,var(--erp-surface)); }
.product-classification-image-glyph[hidden] { display: none; }
.product-classification-image-glyph svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.product-classification-image figcaption { position: relative; min-width: 0; display: grid; justify-items: center; gap: 5px; padding: 0 7px 2px; }
.product-classification-image figcaption strong { max-width: 96px; overflow: hidden; color: var(--brand-navy); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.product-classification-image-status { max-width: 112px; padding: 2px 5px; border-radius: 5px; color: var(--text-muted); background: color-mix(in srgb,var(--erp-surface) 88%,transparent); font-size: 8px; font-weight: 700; line-height: 1.25; }
.product-classification-image-status.error { color: var(--danger); }
.product-classification-image-progress { width: 92px; height: 5px; accent-color: var(--erp-accent); }
.product-classification-image-progress[hidden] { display: none; }
.product-classification-image-picker { display: inline-flex; align-items: center; justify-content: center; min-height: 25px; padding: 0 8px; border: 1px solid color-mix(in srgb,var(--erp-accent) 38%,var(--erp-border)); border-radius: var(--erp-radius-sm); color: var(--brand-turquoise-dark); background: color-mix(in srgb,var(--erp-surface) 88%,transparent); font-size: 9px; font-weight: 800; cursor: pointer; }
.product-classification-image-picker:hover { border-color: var(--erp-accent); background: var(--erp-surface); }
.product-classification-image-picker:focus-within { outline: 2px solid var(--erp-accent); outline-offset: 2px; }
.product-classification-image-picker:has(input:disabled), .product-classification-image-picker:disabled { cursor: not-allowed; opacity: .52; }
.product-classification-image-picker input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.product-classification-image-actions { display: flex; align-items: center; justify-content: center; gap: 4px; max-width: 100%; }
.product-classification-image-actions .product-classification-image-picker { padding-inline: 6px; white-space: nowrap; }
.product-images-editor .erp-status-badge { flex: 0 0 auto; padding: 4px 7px; border-radius: 999px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.product-images-editor-body { min-height: 250px; padding: var(--erp-space-4); }
.product-images-gallery { display: grid; grid-template-columns: repeat(auto-fill,minmax(180px,220px)); gap: var(--erp-space-4); align-items: start; }
.product-images-editor-body .product-classification-image { height: 280px; min-height: 280px; padding: var(--erp-space-2); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-md); }
.product-images-gallery .product-classification-image-open { flex: 0 0 160px; min-height: 160px; }
.product-images-gallery .product-image-add-button { align-self: center; justify-self: start; margin-left: 0; }
.product-images-gallery-status { margin: var(--erp-space-3) 0; font-size: 11px; color: var(--text-muted); }
.product-images-gallery-status:empty { margin: 0 0 var(--erp-space-3); }
.product-images-gallery-status.error { color: var(--danger); }
.product-image-draft-remove { border: 0; padding: 2px 6px; color: var(--danger); background: transparent; font-size: 10px; cursor: pointer; }
.product-images-editor-help { max-width: 560px; margin: 0; padding: var(--erp-space-3); border-left: 3px solid var(--erp-accent); border-radius: var(--erp-radius-sm); color: var(--text-muted); background: var(--erp-surface-muted); font-size: 11px; line-height: 1.55; }
.product-image-preview-dialog { box-sizing: border-box; width: min(760px,calc(100vw - 28px)); max-height: calc(100dvh - 28px); padding: 16px; border: 0; border-radius: 16px; color: var(--ink); background: var(--paper); box-shadow: 0 28px 80px rgba(3,31,59,.32); }
.product-image-preview-dialog[open] { display:flex; flex-direction:column; overflow:hidden; }
.product-image-preview-dialog::backdrop { background: rgba(2,25,49,.7); backdrop-filter: blur(4px); }
.product-image-preview-dialog-heading { display: flex; flex:none; max-height:30dvh; overflow:auto; align-items: flex-start; justify-content: space-between; gap: 16px; padding-bottom: 12px; }
.product-image-preview-dialog-copy { min-width:0; display:grid; gap:4px; }
.product-image-preview-dialog-copy > span { color:var(--brand-turquoise-dark); font-size:9px; font-weight:850; letter-spacing:.14em; }
.product-image-preview-dialog-heading h2 { max-width:460px; margin:0; color:var(--ink); font-size:18px; line-height:1.25; overflow-wrap:anywhere; }
.product-image-preview-dialog-copy p { width:max-content; max-width:100%; display:flex; align-items:center; gap:7px; margin:1px 0 0; padding:4px 8px; border-radius:7px; color:var(--text-muted); background:var(--erp-surface-muted); font-size:10px; }
.product-image-preview-dialog-copy p b { font-size:8px; letter-spacing:.08em; text-transform:uppercase; }
.product-image-preview-dialog-copy p strong { color:var(--ink); font-size:11px; overflow-wrap:anywhere; }
.product-image-preview-dialog-canvas { box-sizing:border-box; width:100%; height:min(680px,65dvh); min-height:0; flex:1 1 auto; display:grid; place-items:center; overflow:hidden; border:1px solid var(--erp-border); border-radius:12px; background:var(--erp-surface-muted); cursor:zoom-in; }
.product-image-preview-dialog-canvas:focus-visible { outline:2px solid var(--brand-turquoise-dark); outline-offset:2px; }
.product-image-preview-dialog-canvas img { display:block; width:100%; height:100%; min-height:0; object-fit:contain; transform:scale(1); transform-origin:center; user-select:none; pointer-events:none; }
.product-image-preview-dialog-canvas[aria-pressed="true"] { cursor:zoom-out; }
.product-image-preview-dialog-canvas[aria-pressed="true"] img { transform:scale(2); }
.product-image-preview-hint { flex:none; margin:8px 0 0; color:var(--text-muted); font-size:11px; line-height:1.4; }
:root[data-theme="dark"] .product-image-preview-dialog { --erp-surface-muted:#123047; --erp-border:#426477; --text-muted:var(--muted); --brand-turquoise-dark:#78d9d3; }
.product-image-preview-dialog-canvas img:not([src]) { display: none; }
.product-branches-count { flex: 0 0 auto; color: var(--brand-turquoise-dark); font-size: 10px; font-weight: 800; }
.product-branches-list { min-height: 210px; display: grid; align-content: start; }
.product-branch-row { min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: var(--erp-space-3); padding: var(--erp-space-2) var(--erp-space-3); border-bottom: 1px solid var(--erp-border); color: var(--text); font-size: 11px; }
.product-branch-choice { min-width: 0; display: inline-flex; align-items: center; gap: var(--erp-space-2); cursor: pointer; }
.product-branch-choice input { width: 18px; height: 18px; flex: 0 0 auto; accent-color: var(--brand-turquoise-dark); }
.product-branch-choice input:disabled { cursor: default; opacity: .8; }
.product-branch-choice span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.product-branch-row strong { color: var(--erp-success); font-size: 9px; }
.product-branch-row strong.blocked { color: var(--erp-danger,#b94d4d); }
.product-branches-empty { min-height: 210px; display: grid; place-content: center; justify-items: center; gap: var(--erp-space-1); color: var(--text-muted); text-align: center; }
.product-branches-panel > footer { padding: var(--erp-space-2) var(--erp-space-3); color: var(--text-muted); font-size: 9px; }
.product-classification-divider { width: 1px; height: 72%; align-self: center; background: linear-gradient(to bottom,transparent,var(--erp-border) 15%,var(--erp-border) 85%,transparent); }
.product-classification-fields { grid-template-columns: repeat(2,minmax(0,1fr)); grid-auto-rows: minmax(var(--erp-control-height),auto); align-content: start; gap: var(--erp-space-2); padding: 0; border: 0; border-radius: 0; box-shadow: none; }
.product-overview-price-body { min-width: 0; padding: 0; }
.product-overview-price-viewport { max-height: 186px; overflow: auto; scrollbar-width: thin; }
.product-overview-price-viewport table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.product-overview-price-viewport th,.product-overview-price-viewport td { height: 34px; padding: 5px 8px; border-right: 1px solid var(--erp-border); border-bottom: 1px solid var(--erp-border); font-size: 10px; text-align: left; }
.product-overview-price-viewport th { position: sticky; top: 0; z-index: 1; color: var(--brand-navy); background: #edf2f3; font-size: 9px; font-weight: 850; }
.product-overview-price-viewport th:last-child,.product-overview-price-viewport td:last-child { border-right: 0; }
.product-overview-price-viewport th:nth-child(1) { width: 33%; }
.product-overview-price-viewport th:nth-child(2),.product-overview-price-viewport th:nth-child(3) { width: 26%; text-align: right; }
.product-overview-price-viewport th:nth-child(4) { width: 15%; }
.product-overview-price-name { overflow: hidden; color: var(--brand-navy); font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.product-overview-price-number { text-align: right!important; font-variant-numeric: tabular-nums; white-space: nowrap; }
.product-overview-price-edit { max-width: 100%; min-height: 25px; padding: 0 7px; overflow: hidden; border: 1px solid color-mix(in srgb,var(--erp-accent) 28%,var(--erp-border)); border-radius: var(--erp-radius-sm); color: var(--brand-turquoise-dark); background: color-mix(in srgb,var(--erp-accent) 5%,var(--erp-surface)); font: inherit; font-size: 10px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; }
.product-overview-price-edit:hover { border-color: var(--erp-accent); background: color-mix(in srgb,var(--erp-accent) 10%,var(--erp-surface)); }
.product-overview-price-edit:focus-visible { outline: 2px solid var(--erp-accent); outline-offset: 1px; }
.product-overview-price-edit:disabled { cursor: not-allowed; color: var(--muted); border-color: var(--erp-border); background: var(--erp-surface-muted); opacity: .76; }
.product-overview-price-empty { height: 112px!important; padding: var(--erp-space-3)!important; color: var(--muted); text-align: center!important; }
.product-erp-card .record-card-field-grid label { gap: var(--erp-space-1); }
.product-erp-card .record-card-field-grid label > span { justify-content: flex-start; color: #344b59; font-size: var(--erp-font-label); font-weight: 800; letter-spacing: .15px; text-transform: none; }
.product-erp-card .record-card-field-grid label > span i { color: var(--erp-danger); font-size: 13px; line-height: 8px; }
.product-erp-card .record-card-field-grid input,.product-erp-card .record-card-field-grid select,.product-erp-card .record-card-field-grid textarea { min-height: var(--erp-control-height-compact); padding-inline: 9px; border-color: var(--erp-border); border-radius: var(--erp-radius-sm); color: #24363f; background: var(--erp-surface); font-size: var(--erp-font-control); font-weight: 600; }
.product-erp-card .record-card-field-grid textarea { min-height: 46px; padding-block: 7px; line-height: 1.35; }
.product-erp-card .record-field-action-button { min-width: 112px; min-height: var(--erp-control-height-compact); border-radius: var(--erp-radius-sm); font-size: 10px; }
.product-erp-card .record-card-field-grid input:hover:not([readonly]),.product-erp-card .record-card-field-grid select:hover:not(:disabled),.product-erp-card .record-card-field-grid textarea:hover:not([readonly]) { border-color: #a6b4ba; }
.record-field-definition-row { display: grid; grid-template-columns: minmax(0,1fr) 30px; align-items: center; gap: var(--erp-space-1); }
.record-field-definition-button { width: 30px; height: var(--erp-control-height-compact); display: grid; place-items: center; padding: 0; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); color: var(--erp-accent); background: var(--erp-surface); cursor: pointer; }
.record-field-definition-button:hover:not(:disabled) { color: #fff; border-color: var(--erp-accent); background: var(--erp-accent); }
.record-field-definition-button:disabled { opacity: .48; cursor: not-allowed; }
.record-field-definition-button svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.product-pos-favorite-fields { width: 100%; max-width: 100%; min-width: 0; grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0,1fr) minmax(88px,.25fr) minmax(120px,.38fr); align-items: end; gap: var(--erp-space-2); box-sizing: border-box; }
.product-pos-favorite-fields > .erp-field { width: 100%; min-width: 0; box-sizing: border-box; }
.product-pos-favorite-fields > .record-checkbox { width: 100%; min-width: 0; align-self: end; box-sizing: border-box; }
.product-definition-manager-dialog { width: min(470px,calc(100vw - 28px)); }
.product-definition-manager-actions { align-items: center; }
.product-definition-manager-actions > span { flex: 1 1 auto; }
.product-erp-card .erp-control[aria-invalid="true"] { border-color: var(--erp-danger)!important; box-shadow: 0 0 0 2px color-mix(in srgb,var(--erp-danger) 13%,transparent)!important; }
.field-validation-message { color: var(--erp-danger); font-size: 10px; font-weight: 650; line-height: 1.3; }
.field-validation-message[hidden] { display: none; }
.product-erp-card .record-checkbox { min-height: var(--erp-control-height-compact); grid-template-columns: auto 1fr; align-items: center; align-content: center; padding: 0 var(--erp-space-2); border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); background: var(--erp-surface); }
.product-erp-card .record-checkbox > span { grid-column: 2; grid-row: 1; }
.product-erp-card .record-checkbox > input { grid-column: 1; grid-row: 1; width: 16px; min-height: 16px; padding: 0; accent-color: var(--erp-accent); }
.product-erp-card .record-checkbox .field-validation-message { grid-column: 1 / -1; }
.product-quantity-strip { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: var(--erp-space-2); overflow: hidden; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-md); background: var(--erp-surface); box-shadow: none; }
.product-quantity-strip > div { min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: var(--erp-space-2); min-height: 38px; padding: 5px var(--erp-space-3); border-right: 1px solid var(--erp-border); }
.product-quantity-strip > div:last-child { border-right: 0; }
.product-quantity-strip span { color: var(--muted); font-size: 10px; font-weight: 750; letter-spacing: 0; text-transform: none; }
.product-quantity-strip strong { overflow: hidden; color: var(--brand-navy); font-size: 12px; font-variant-numeric: tabular-nums; text-overflow: ellipsis; white-space: nowrap; }

.record-detail-table { min-height: 250px; display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); box-shadow: 0 8px 25px rgba(6,46,91,.045); }
.record-detail-table-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 11px 13px; border-bottom: 1px solid var(--line); background: color-mix(in srgb,var(--brand-turquoise-pale) 24%,var(--paper)); }
.record-detail-table-heading h3 { margin: 0; color: var(--brand-navy); font-size: 12px; }
.record-detail-table-heading p { margin: 3px 0 0; color: var(--muted); font-size: 7.5px; }
.record-table-add { min-height: 32px; padding: 0 11px; border: 1px solid var(--line); border-radius: 8px; color: var(--muted); background: var(--paper); font: inherit; font-size: 8px; font-weight: 800; }
.record-table-add span { margin-right: 4px; font-size: 14px; }
.record-detail-table-viewport { flex: 1 1 auto; min-height: 170px; overflow: auto; }
.record-detail-table table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.record-detail-table th { height: 34px; padding: 0 11px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--brand-navy); background: color-mix(in srgb,var(--canvas) 72%,var(--paper)); font-size: 7px; font-weight: 900; letter-spacing: .35px; text-align: left; text-transform: uppercase; }
.record-detail-table td { height: 38px; padding: 0 11px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 8px; }
.record-detail-table th:last-child,.record-detail-table td:last-child { border-right: 0; }
.record-detail-table-empty { height: 150px!important; color: var(--muted); text-align: center; }
.record-detail-table-empty strong,.record-detail-table-empty span { display: block; }
.record-detail-table-empty strong { margin-bottom: 5px; color: var(--brand-navy); font-size: 10px; }
.record-detail-table-empty span { font-size: 8px; font-weight: 500; }
.record-detail-table footer { min-height: 35px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 0 12px; border-top: 1px solid var(--line); color: var(--muted); font-size: 7.5px; }
.record-detail-table footer b { color: var(--brand-navy); }
.product-pricing-editor { min-height: 360px; }
.product-partner-contracts { min-height: 340px; }
.product-partner-contract-grid { min-height: 245px; overflow: auto; }
.product-partner-contract-grid table { min-width: 1680px; table-layout: fixed; }
.product-partner-contract-grid th:nth-child(1),.product-partner-contract-grid td:nth-child(1) { width: 46px; text-align: center; }
.product-partner-contract-grid th:nth-child(2),.product-partner-contract-grid td:nth-child(2) { width: 120px; }
.product-partner-contract-grid th:nth-child(3),.product-partner-contract-grid td:nth-child(3) { width: 210px; }
.product-partner-contract-grid th:nth-child(4),.product-partner-contract-grid td:nth-child(4) { width: 82px; }
.product-partner-contract-grid th:nth-child(5),.product-partner-contract-grid td:nth-child(5),.product-partner-contract-grid th:nth-child(6),.product-partner-contract-grid td:nth-child(6) { width: 112px; }
.product-partner-contract-grid th:nth-child(7),.product-partner-contract-grid td:nth-child(7) { width: 108px; }
.product-partner-contract-grid th:nth-child(8),.product-partner-contract-grid td:nth-child(8) { width: 70px; }
.product-partner-contract-grid th:nth-child(9),.product-partner-contract-grid td:nth-child(9) { width: 78px; }
.product-partner-contract-grid th:nth-child(n+10):nth-child(-n+15),.product-partner-contract-grid td:nth-child(n+10):nth-child(-n+15) { width: 72px; }
.product-partner-contract-grid th:nth-child(16),.product-partner-contract-grid td:nth-child(16) { width: 190px; }
.product-partner-contract-grid th:nth-child(17),.product-partner-contract-grid td:nth-child(17) { width: 134px; }
.product-partner-contract-grid td { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.product-partner-contract-number { text-align: right; font-variant-numeric: tabular-nums; }
.product-partner-contract-centered { text-align: center; }
.product-partner-contract-actions { white-space: nowrap; }
.product-partner-contract-actions button { min-height: 27px; margin-right: 4px; padding: 4px 7px; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); color: var(--brand-navy); background: var(--erp-surface); font-size: 9px; font-weight: 800; cursor: pointer; }
.product-partner-contract-actions button:last-child { margin-right: 0; }
.product-partner-contract-actions button:hover:not(:disabled) { border-color: var(--erp-accent); color: var(--erp-accent); }
.product-partner-contract-actions button.is-primary { color: white; border-color: var(--erp-accent); background: var(--erp-accent); }
.product-partner-contract-actions button.is-danger { color: var(--erp-danger); }
.product-partner-contract-actions button:disabled { cursor: not-allowed; opacity: .52; }
.product-partner-contract-editor-row td { height: 48px; padding: 5px 4px; background: color-mix(in srgb,var(--erp-info) 5%,var(--erp-surface)); overflow: visible; }
.product-partner-contract-editor-row input,.product-partner-contract-editor-row select { width: 100%; min-width: 0; height: var(--erp-control-height-compact); padding: 0 6px; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); color: var(--ink); background: var(--erp-surface); font: inherit; font-size: 9px; }
.product-partner-contract-editor-row input:focus,.product-partner-contract-editor-row select:focus { outline: 2px solid color-mix(in srgb,var(--erp-accent) 28%,transparent); outline-offset: 1px; border-color: var(--erp-accent); }
.product-partner-contract-editor-row td:nth-child(3),.product-partner-contract-editor-row td:nth-child(8) { color: var(--muted); font-size: 9px; }
.product-partner-contract-combobox { position: relative; min-width: 0; }
.product-partner-contract-combobox > input { width: 100%; }
.product-partner-contract-options { position: absolute; z-index: 30; top: calc(100% + 3px); left: 0; width: max(280px,100%); max-height: 240px; overflow: auto; padding: 4px; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); background: var(--erp-surface); box-shadow: 0 14px 32px rgba(6,46,91,.2); }
.product-partner-contract-options[hidden] { display: none; }
.product-partner-contract-options button { width: 100%; display: grid; grid-template-columns: minmax(90px,.55fr) minmax(150px,1fr); gap: 9px; padding: 7px 8px; border: 0; border-radius: 5px; color: var(--ink); background: transparent; text-align: left; cursor: pointer; }
.product-partner-contract-options button:hover,.product-partner-contract-options button.active { background: color-mix(in srgb,var(--erp-accent) 10%,var(--erp-surface)); }
.product-partner-contract-options button strong { overflow: hidden; color: var(--brand-navy); text-overflow: ellipsis; white-space: nowrap; }
.product-partner-contract-options button span { overflow: hidden; color: var(--muted); text-overflow: ellipsis; white-space: nowrap; }
.product-partner-contract-option-empty { display: block; padding: 10px; color: var(--muted); text-align: center; }
.product-pricing-heading { position: sticky; left: 0; }
.product-pricing-count { padding: 5px 9px; border-radius: 999px; color: var(--brand-turquoise-dark); background: var(--brand-turquoise-pale); font-size: 7px; font-weight: 900; }
.product-pricing-grid table { min-width: 1240px; table-layout: auto; }
.product-pricing-grid th:nth-child(1) { min-width: 190px; }
.product-pricing-grid th:nth-child(5),.product-pricing-grid th:nth-child(8) { min-width: 150px; }
.product-pricing-grid th:nth-child(9) { min-width: 190px; }
.product-pricing-grid td { height: 54px; }
.product-pricing-grid td > strong,.product-pricing-grid td > small { display: block; }
.product-pricing-grid td > small { margin-top: 3px; color: var(--muted); font-size: 6.8px; }
.product-pricing-grid tr.has-scheduled-price td { background: color-mix(in srgb,#fff5c7 55%,var(--paper)); }
.product-price-vat-counterpart { white-space: nowrap; }
.product-pricing-actions { vertical-align: middle; }
.product-pricing-action-buttons { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; }
.product-scheduled-price-actions { display: flex; justify-content: flex-end; gap: 5px; margin-top: 6px; }
.product-price-history-grid .price-type-action + .price-type-action { margin-left: 5px; }
.product-pricing-actions .primary { color: #fff; border-color: var(--brand-turquoise-dark); background: var(--brand-turquoise-dark); }
.product-price-dialog { width: min(620px,calc(100vw - 28px)); }
.product-price-dialog > form { padding: 22px; }
.product-price-history-dialog { width: min(880px,calc(100vw - 28px)); padding: 22px; }
.product-price-history-grid { max-height: min(520px,60vh); margin-top: 14px; overflow: auto; border: 1px solid var(--line); border-radius: 10px; }
.product-price-history-grid table { width: 100%; border-collapse: collapse; }
.product-price-history-grid th,.product-price-history-grid td { padding: 10px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 8px; text-align: left; }
.product-price-history-grid th { color: var(--brand-navy); background: var(--canvas); font-size: 7px; text-transform: uppercase; }
.product-price-history-grid .tombstoned-price td { color: var(--muted); background: color-mix(in srgb,#f1eeee 75%,var(--paper)); text-decoration-color: #a13d38; }
:root[data-theme="dark"] .product-pricing-grid tr.has-scheduled-price td { background: #3b3723; }
.warehouse-settings-editor table { min-width: 980px; }
.warehouse-settings-editor th:nth-child(1) { width: 23%; }
.warehouse-settings-editor th:nth-child(2),.warehouse-settings-editor th:nth-child(6) { width: 8%; text-align: center; }
.warehouse-settings-editor th:nth-child(3),.warehouse-settings-editor th:nth-child(4) { width: 15%; }
.warehouse-settings-editor th:nth-child(5) { width: 18%; }
.warehouse-settings-editor th:nth-child(7) { width: 11%; text-align: center; }
.warehouse-settings-editor td:nth-child(2),.warehouse-settings-editor td:nth-child(6),.warehouse-settings-editor td:nth-child(7) { text-align: center; }
.warehouse-settings-editor select,.warehouse-settings-editor input[type="number"] { width: 100%; min-height: 29px; padding: 3px 7px; border: 1px solid var(--line); border-radius: 7px; color: var(--ink); background: var(--paper); font: inherit; font-variant-numeric: tabular-nums; }
.warehouse-settings-editor input[type="checkbox"] { width: 16px; height: 16px; accent-color: var(--brand-turquoise-dark); }
.warehouse-setting-delete { min-height: 28px; padding: 0 10px; border: 1px solid color-mix(in srgb,#a43d38 36%,var(--line)); border-radius: 7px; color: #a43d38; background: color-mix(in srgb,#a43d38 6%,var(--paper)); font: inherit; font-size: 8px; font-weight: 850; }
.warehouse-setting-delete:hover { background: color-mix(in srgb,#a43d38 12%,var(--paper)); }
.barcode-management-editor { min-height: 330px; }
.barcode-management-heading { align-items: flex-start; }
.barcode-heading-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 7px; }
.barcode-deleted-toggle { min-height: 32px; display: inline-flex; align-items: center; gap: 6px; padding: 0 9px; border: 1px solid var(--line); border-radius: 8px; color: var(--muted); background: var(--paper); font-size: 7.5px; font-weight: 800; }
.barcode-deleted-toggle input { width: 15px; height: 15px; margin: 0; accent-color: var(--brand-turquoise-dark); }
.barcode-generate-button { min-height: 32px; min-width: 105px; }
.barcode-inline-editor { display: grid; grid-template-columns: minmax(180px,1.25fr) minmax(110px,.65fr) minmax(140px,.8fr) minmax(80px,.45fr) minmax(120px,.65fr); gap: 9px; align-items: end; padding: 10px 13px; border-bottom: 1px solid var(--line); background: color-mix(in srgb,var(--brand-turquoise-pale) 38%,var(--paper)); }
.barcode-inline-editor[hidden] { display: none; }
.barcode-inline-editor label { display: grid; gap: 4px; color: var(--muted); font-size: 7px; font-weight: 850; letter-spacing: .35px; text-transform: uppercase; }
.barcode-inline-editor input[type="text"],.barcode-inline-editor input[type="number"],.barcode-inline-editor input:not([type]),.barcode-inline-editor select { min-height: 34px; padding: 0 9px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink); background: var(--paper); font: inherit; font-size: 9px; font-weight: 760; }
.barcode-editor-primary { min-height: 34px; display: flex!important; align-items: center; grid-auto-flow: column; justify-content: start; padding: 0 9px; border: 1px solid var(--line); border-radius: 8px; background: var(--paper); }
.barcode-editor-primary input { width: 16px; height: 16px; margin: 0; accent-color: var(--brand-turquoise-dark); }
.barcode-editor-actions { display: flex; gap: 6px; }
.barcode-editor-actions .button { min-height: 34px; padding-inline: 11px; font-size: 7.5px; }
.barcode-inline-editor > small { grid-column: 1 / -1; color: var(--muted); font-size: 7.2px; }
.barcode-management-editor table { min-width: 1120px; }
.barcode-management-editor th:nth-child(1) { width: 7%; text-align: center; }
.barcode-management-editor th:nth-child(2) { width: 11%; }
.barcode-management-editor th:nth-child(3) { width: 13%; }
.barcode-management-editor th:nth-child(4) { width: 20%; }
.barcode-management-editor th:nth-child(5) { width: 9%; text-align: right; }
.barcode-management-editor th:nth-child(6) { width: 11%; text-align: right; }
.barcode-management-editor th:nth-child(7) { width: 9%; }
.barcode-management-editor th:nth-child(8) { width: 20%; }
.barcode-management-editor td:first-child { text-align: center; }
.numeric-cell { text-align: right; font-variant-numeric: tabular-nums; }
.unit-conversion-editor table { min-width: 760px; }
.unit-conversion-editor th:nth-child(2),.unit-conversion-editor td:nth-child(2) { text-align: right; font-variant-numeric: tabular-nums; }
.unit-conversion-inline-editor { display: grid; grid-template-columns: minmax(180px,1fr) minmax(130px,.55fr) minmax(130px,.55fr) auto; gap: var(--erp-space-2); align-items: end; padding: var(--erp-space-2) var(--erp-space-3); border-bottom: 1px solid var(--erp-border); background: var(--erp-surface-muted); }
.unit-conversion-inline-editor[hidden] { display: none; }
.unit-conversion-inline-editor label { display: grid; gap: 4px; color: var(--muted); font-size: 9px; font-weight: 850; letter-spacing: .25px; text-transform: uppercase; }
.unit-conversion-inline-editor input,.unit-conversion-inline-editor select { min-height: var(--erp-control-height); padding: 0 9px; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); color: var(--ink); background: var(--paper); font: inherit; font-size: 11px; }
.unit-conversion-editor-actions { display: flex; gap: var(--erp-space-2); }
.unit-conversion-base-row td { font-weight: 760; background: color-mix(in srgb,var(--erp-accent) 5%,var(--erp-surface)); }
.barcode-value { color: var(--brand-navy); font-family: Consolas,"Courier New",monospace; font-size: 9px; letter-spacing: .35px; }
.barcode-primary-indicator,.barcode-row-status { display: inline-flex; align-items: center; justify-content: center; min-width: 45px; min-height: 21px; padding: 2px 7px; border-radius: 999px; color: var(--muted); background: color-mix(in srgb,var(--canvas) 75%,var(--paper)); font-size: 6.7px; font-weight: 900; letter-spacing: .35px; text-transform: uppercase; }
.barcode-primary-indicator.selected { color: #fff; background: linear-gradient(135deg,#08aaa9,#08778c); }
.barcode-row-status { color: #087e72; background: #dcf8f3; }
.barcode-row-status.passive { color: #9a610b; background: #fff0cf; }
.barcode-row-status.deleted { color: #a34843; background: #ffebe9; }
.barcode-row-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 4px; }
.barcode-row-action { min-height: 25px; padding: 0 7px; border: 1px solid var(--line); border-radius: 6px; color: var(--brand-navy); background: var(--paper); font: inherit; font-size: 6.8px; font-weight: 850; cursor: pointer; }
.barcode-row-action:hover { border-color: var(--brand-turquoise-dark); color: var(--brand-turquoise-dark); }
.barcode-row-action.danger { color: #a43d38; border-color: color-mix(in srgb,#a43d38 36%,var(--line)); background: color-mix(in srgb,#a43d38 6%,var(--paper)); }
.barcode-management-editor footer { flex-wrap: wrap; padding-block: 7px; }
.barcode-management-editor footer .barcode-allocation-status { margin-left: auto; }
.product-erp-card .record-detail-table { min-height: 300px; border-color: var(--erp-border); border-radius: var(--erp-radius-md); box-shadow: 0 2px 8px rgba(6,46,91,.04); }
.product-erp-card .record-detail-table-heading { min-height: 48px; padding: var(--erp-space-2) var(--erp-space-3); border-bottom-color: var(--erp-border); background: var(--erp-surface-muted); }
.product-erp-card .record-detail-table-heading h3 { font-size: 12px; }
.product-erp-card .record-detail-table-heading p { margin-top: 2px; font-size: 10px; }
.product-erp-card .record-table-add { min-height: var(--erp-control-height-compact); border-radius: var(--erp-radius-sm); font-size: 10px; cursor: pointer; }
.product-erp-card .record-detail-table-viewport { min-height: 190px; }
.product-erp-card .erp-data-grid th { position: sticky; top: 0; z-index: 2; height: 34px; padding: 0 9px; border-color: var(--erp-border); background: #edf2f3; font-size: 9px; letter-spacing: .2px; }
.product-erp-card .erp-data-grid td { height: 36px; padding: 5px 9px; border-color: var(--erp-border); font-size: 11px; }
.product-erp-card .erp-data-grid tbody tr:hover td { background: color-mix(in srgb,var(--erp-accent) 5%,var(--erp-surface)); }
.product-erp-card .record-detail-table-empty { height: 170px!important; font-size: 11px; }
.product-erp-card .record-detail-table-empty strong { font-size: 12px; }
.product-erp-card .record-detail-table-empty span { margin-top: 4px; font-size: 10px; }
.product-erp-card .record-detail-table footer { min-height: 38px; padding: 0 var(--erp-space-3); font-size: 10px; }
.product-erp-card .product-pricing-grid td { height: 40px; }
.product-erp-card .product-pricing-grid th:nth-child(5),.product-erp-card .product-pricing-grid td:nth-child(5),.product-erp-card .product-pricing-grid th:nth-child(8),.product-erp-card .product-pricing-grid td:nth-child(8) { text-align: right; font-variant-numeric: tabular-nums; }
.product-erp-card .product-pricing-grid td > small { font-size: 9px; }
.product-erp-card .product-pricing-actions .record-table-add { min-height: 29px; }
.product-erp-card .warehouse-settings-editor th:nth-child(3),.product-erp-card .warehouse-settings-editor th:nth-child(4),.product-erp-card .warehouse-settings-editor th:nth-child(5),.product-erp-card .warehouse-settings-editor td:nth-child(3),.product-erp-card .warehouse-settings-editor td:nth-child(4),.product-erp-card .warehouse-settings-editor td:nth-child(5) { text-align: right; }
.product-erp-card .warehouse-settings-editor select,.product-erp-card .warehouse-settings-editor input[type="number"] { min-height: var(--erp-control-height-compact); border-color: var(--erp-border); border-radius: var(--erp-radius-sm); font-size: 11px; }
.product-erp-card .warehouse-setting-delete { min-height: 29px; font-size: 10px; cursor: pointer; }
.product-erp-card .product-overview-warehouse-settings table { min-width: 0; table-layout: fixed; }
.product-erp-card .product-overview-warehouse-settings th { height: 42px; padding-inline: 4px; font-size: 8px; line-height: 1.15; white-space: normal; overflow-wrap: anywhere; }
.product-erp-card .product-overview-warehouse-settings td { padding-inline: 4px; }
.product-erp-card .product-overview-warehouse-settings th:nth-child(1) { width: 27%; }
.product-erp-card .product-overview-warehouse-settings th:nth-child(2) { width: 11%; }
.product-erp-card .product-overview-warehouse-settings th:nth-child(3),.product-erp-card .product-overview-warehouse-settings th:nth-child(4) { width: 13%; }
.product-erp-card .product-overview-warehouse-settings th:nth-child(5) { width: 18%; }
.product-erp-card .product-overview-warehouse-settings th:nth-child(6) { width: 8%; }
.product-erp-card .product-overview-warehouse-settings th:nth-child(7) { width: 10%; }
.product-erp-card .product-overview-warehouse-settings select,.product-erp-card .product-overview-warehouse-settings input[type="number"] { min-width: 0; padding-inline: 4px; font-size: 10px; }
.product-erp-card .product-overview-warehouse-settings .warehouse-setting-delete { padding-inline: 7px; }
.product-erp-card .barcode-deleted-toggle { min-height: var(--erp-control-height-compact); border-radius: var(--erp-radius-sm); font-size: 10px; }
.product-erp-card .barcode-inline-editor { gap: var(--erp-space-2); padding: var(--erp-space-2) var(--erp-space-3); background: var(--erp-surface-muted); }
.product-erp-card .barcode-inline-editor label { font-size: 9px; }
.product-erp-card .barcode-inline-editor input[type="text"],.product-erp-card .barcode-inline-editor input[type="number"],.product-erp-card .barcode-inline-editor input:not([type]),.product-erp-card .barcode-inline-editor select { min-height: var(--erp-control-height); border-radius: var(--erp-radius-sm); font-size: 11px; }
.product-erp-card .barcode-value { font-size: 11px; }
.product-erp-card .barcode-primary-indicator,.product-erp-card .barcode-row-status { min-height: 22px; font-size: 9px; }
.product-erp-card .barcode-row-action { min-height: 28px; font-size: 9px; }
.product-erp-card .barcode-allocation-status { font-size: 9px; }
@media (max-width: 900px) {
  .barcode-inline-editor { grid-template-columns: 1fr 1fr; }
  .unit-conversion-inline-editor { grid-template-columns: 1fr 1fr; }
  .barcode-heading-actions { justify-content: flex-start; }
}
.record-card-command-bar > div { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.record-card-command-bar > .record-card-command-left { min-width: 0; justify-content: flex-start; flex-wrap: wrap; }
.record-card-command-bar span { margin-right: 8px; color: var(--muted); font-size: 8px; font-weight: 700; }
.record-card-command-bar .button { min-height: 39px; border-radius: 10px; }
.record-command { display: inline-flex; align-items: center; justify-content: center; gap: 7px; }
.record-navigation-command { white-space: nowrap; }
.record-card-command-bar .record-navigation-arrow { width: 22px; height: 22px; display: grid; place-items: center; margin: 0; border-radius: 7px; color: currentColor; background: color-mix(in srgb,currentColor 9%,transparent); font-size: 13px; font-weight: 900; }
.record-command-icon { width: 22px; height: 22px; display: grid; place-items: center; border-radius: 7px; background: color-mix(in srgb,currentColor 9%,transparent); }
.record-command-icon svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.record-detail-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; margin: 18px 0; }
.record-detail-fields > div { min-width: 0; padding: 11px 12px; border: 1px solid var(--line); border-radius: 9px; background: color-mix(in srgb,var(--canvas) 68%,var(--paper)); }
.record-detail-fields small,.record-detail-fields strong { display: block; overflow: hidden; text-overflow: ellipsis; }
.record-detail-fields small { color: var(--muted); font-size: 7px; font-weight: 800; text-transform: uppercase; letter-spacing: .45px; }
.record-detail-fields strong { margin-top: 5px; font-size: 9px; white-space: normal; }
:root[data-theme="dark"] .standard-workspace-shell,:root[data-theme="dark"] .standard-list-toolbar { background: var(--paper); }
:root[data-theme="dark"] .master-list-toolbar { background: linear-gradient(180deg,var(--paper),#0d2638); }
:root[data-theme="dark"] .record-card-header { background: linear-gradient(118deg,#103745,var(--paper) 68%); }
:root[data-theme="dark"] .record-card-panels,:root[data-theme="dark"] .record-card-identity { background: #0c2435; }
:root[data-theme="dark"] .standard-table th { color: var(--ink); background: #112d42; }
:root[data-theme="dark"] .standard-table tbody tr:nth-child(even) td { background: #0e293d; }
:root[data-theme="dark"] .standard-table tbody tr:hover td,:root[data-theme="dark"] .standard-table tbody tr:focus td { background: #123b48; }
:root[data-theme="dark"] .standard-table tbody tr.is-selected td { color: #f4fffe; background: #145163; }
:root[data-theme="dark"] .document-draft-summary { border-color:#cf5c55!important; background:linear-gradient(135deg,#4a2327,#291b20)!important; box-shadow:0 5px 18px rgba(0,0,0,.28)!important; }
:root[data-theme="dark"] .document-draft-visibility-toggle { color:#fff; border-color:#e0716b; background:#b93630; }
@media (max-width: 900px) {
  .standard-list-toolbar,.standard-list-toolbar.has-draft-toggle { grid-template-columns: 1fr auto auto; }.standard-list-toolbar input { grid-column: 1 / -1; grid-row: 2; }.standard-row-count { grid-column: 2 / -1; grid-row: 1; }.standard-tool-button { grid-row: 3; }.standard-draft-toggle { grid-column: 2; }.standard-tool-button:not(.standard-draft-toggle) { grid-column: 3; }
  .standard-data-grid { max-height: calc(100vh - 390px); }
}
@media (max-width: 1100px) {
  .product-erp-card .record-card-identity { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .product-erp-card .record-card-identity label.wide { grid-column: span 2; }
  .product-overview-workspace { grid-template-columns: 1fr; }
  .product-overview-groups { grid-template-columns: 1fr; }
  .product-overview-section:first-child { grid-column: auto; }
  .product-quantity-strip { grid-column: auto; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .product-quantity-strip > div:nth-child(2) { border-right: 0; }
  .product-quantity-strip > div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .product-traceability-workspace { grid-template-columns: 1fr; }
  .product-special-codes-workspace { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .master-data-hero { align-items: stretch; }.master-data-actions { flex-direction: column; }.master-data-actions .button { width: 100%; }
  .standard-group-bar small { display: none; }.record-detail-fields { grid-template-columns: 1fr; }
  .master-list-toolbar { align-items: stretch; flex-direction: column; }.standard-command-set { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); }.standard-icon-command { justify-content: center; padding-right: 6px; }.standard-icon-command b { display: none; }
  .record-detail-dialog { width: calc(100vw - 14px); max-height: calc(100vh - 14px); border-radius: 16px; }.record-detail-shell { max-height: calc(100vh - 14px); }.record-card-header { padding: 16px; }.record-card-heading { align-items: flex-start; }.record-card-icon { width: 42px; height: 42px; border-radius: 12px; }.record-card-heading h2 + p { display: none; }.record-card-header-actions .standard-status { display: none; }.record-card-identity { grid-template-columns: 1fr; padding: 14px 16px; }.record-card-identity label.wide,.record-card-field-grid label.wide { grid-column: auto; }.record-card-tabs { padding-inline: 16px; }.record-card-panels { padding: 14px 16px; }.record-card-field-grid { grid-template-columns: 1fr; padding: 14px; }.record-card-command-bar { align-items: stretch; flex-direction: column-reverse; padding: 11px 16px; }.record-card-command-bar > div { justify-content: stretch; }.record-card-command-bar > div .button { flex: 1; }.record-card-command-bar span { display: none; }
  .product-erp-card .record-card-identity { grid-template-columns: 1fr; }
  .product-erp-card .record-card-identity label.wide { grid-column: auto; }
  .product-overview-field-grid { grid-template-columns: 1fr; }
  .product-pos-favorite-fields { grid-template-columns: 1fr; }
  .product-overview-section[data-panel="basic"] .product-overview-field-grid { grid-template-columns: 1fr; grid-template-areas: none; }
  .product-overview-section[data-panel="basic"] [data-field-layout] { grid-area: auto; }
  .product-traceability-toggle-grid,.product-variant-dimension-grid { grid-template-columns: 1fr; }
  .product-variant-actions { align-items: stretch; flex-direction: column; }
  .product-variant-actions .button { width: 100%; }
  .product-special-codes-grid.record-card-field-grid { grid-template-columns: 1fr; }
  .product-quantity-strip { grid-template-columns: 1fr; }
  .product-quantity-strip > div { border-right: 0; border-bottom: 1px solid var(--line); }
  .product-quantity-strip > div:last-child { border-bottom: 0; }
}

/*
 * Compact desktop density
 *
 * Gives large mouse/trackpad workstations the visual capacity of a reduced
 * browser zoom without scaling the application. Text remains readable and
 * controls remain native-sized. Touch and narrow layouts keep the roomier
 * defaults above.
 */
@media (min-width: 1181px) and (min-height: 650px) and (pointer: fine) {
  .app-shell { grid-template-columns: 230px minmax(0,1fr); }
  .sidebar { width: 230px; padding: 10px 10px 8px; box-shadow: 8px 0 28px rgba(2,28,56,.09); }
  .brand { grid-template-columns: 50px minmax(0,1fr); gap: 8px; min-height: 53px; margin: 0 2px 9px; padding: 5px 5px 7px; }
  .brand-visual { height: 39px; border-radius: 7px; }
  .brand-logo { width: 47px; height: 38px; }
  .brand-copy { gap: 1px; }
  .brand-copy strong { font-size: 11.5px; }
  .brand-copy small { font-size: 6.5px; }
  .sidebar nav { gap: 0; padding-right: 3px; padding-bottom: 9px; }
  .nav-group-label { margin: 1px 9px 3px; font-size: 6.5px; letter-spacing: 1.1px; }
  .nav-item { min-height: 31px; gap: 7px; padding: 5px 7px; border-radius: 5px; font-size: 10.75px; }
  .nav-leaf-icon { width: 14px; height: 14px; flex-basis: 14px; }
  .nav-tree > summary { min-height: 37px; gap: 8px; padding: 5px 7px; border-radius: 5px; }
  .nav-tree > summary strong { font-size: 11.5px; }
  .nav-module-icon { width: 17px; height: 17px; flex-basis: 17px; }
  .nav-tree-children { gap: 0; margin: 1px 0 4px 14px; padding: 2px 0 3px 9px; }
  .nav-tree-children .nav-item { min-height: 29px; padding: 4px 7px; border-radius: 4px; font-size: 10.25px; }
  .nav-tree-children .nav-leaf-icon { width: 12px; height: 12px; flex-basis: 12px; }
  .nav-tree-nested > summary { min-height: 31px; }
  .nav-tree-nested .nav-module-icon { width: 14px; height: 14px; flex-basis: 14px; }
  .sidebar-note { margin-top: 5px; gap: 8px; padding: 7px 6px; }
  .sidebar-note strong { font-size: 8.5px; }
  .sidebar-note small { font-size: 6.5px; }

  .topbar { min-height: 62px; gap: 16px; padding: 8px 2.5vw; }
  .workspace-identity { min-width: 205px; gap: 9px; }
  .workspace-company strong { max-width: 180px; font-size: 10px; }
  .workspace-identity-meta > span { min-width: 62px; padding: 6px 7px; }
  .workspace-identity-meta strong { max-width: 95px; font-size: 8px; }
  .tenant-box { gap: 9px; }
  .tenant-box > label { font-size: 9px; }
  .tenant-control input { width: min(390px,30vw); min-height: 38px; }
  .tenant-control .button { min-height: 38px; padding-inline: 16px; }
  .theme-toggle { width: 88px; height: 36px; }
  .theme-sun,.theme-moon { top: 4px; width: 26px; height: 26px; }
  .theme-cloud { transform: scale(.88); transform-origin: right bottom; }
  .user-settings-shortcut { min-width: 42px; min-height: 38px; }

  .content { width: min(1500px,calc(100% - 4vw)); padding: 8px 0 54px; }
  .content::before { top: 2px; height: 235px; background-size: 11px 11px; }
  .content > .panel.app-page:not([hidden]) ~ .panel.app-page:not([hidden]) { margin-top: 13px; }
  .hero { gap: 20px; padding: 0 3px 23px; }
  .hero h1 { margin: 4px 0 8px; font-size: clamp(29px,3vw,44px); letter-spacing: -1.6px; }
  .hero > div > p:last-child { font-size: 11px; line-height: 1.5; }
  .hero-status { min-width: 210px; padding: 11px 13px; }

  .master-data-page { gap: 7px; }
  .master-data-hero { gap: 16px; padding: 1px 2px 5px; }
  .master-data-hero h1 { font-size: clamp(24px,2vw,31px); }
  .master-data-hero p:last-child { font-size: 9.5px; }
  .master-search { min-width: min(410px,34vw); }
  .master-search input { min-height: 38px; }
  .master-data-actions .button { min-height: 38px; padding: 0 14px; }
  .master-summary { gap: 6px; }
  .master-summary article { min-height: 55px; padding: 8px 11px; border-radius: 9px; }
  .master-summary strong { margin-top: 2px; font-size: 16px; }
  .standard-group-bar { min-height: 30px; padding: 5px 10px; }
  .standard-data-grid { min-height: 300px; max-height: calc(100vh - 305px); }
  .standard-table th { height: 30px; padding: 5px 8px; }
  .standard-table td { height: 33px; padding: 5px 8px; }
  .standard-grid-footer { min-height: 31px; padding: 5px 10px; }

  .standard-list-page .document-list-heading { padding: 14px 16px 10px; }
  .standard-list-page .document-list-heading h2 { font-size: 17px; }
  .standard-list-toolbar { min-height: 44px; grid-template-columns: minmax(170px,1fr) minmax(260px,440px) auto auto; gap: 7px; padding: 6px 10px; }
  .standard-list-toolbar.has-draft-toggle { grid-template-columns: minmax(170px,1fr) minmax(260px,440px) auto auto auto; }
  .standard-view-name > span { width: 27px; height: 27px; }
  .standard-list-toolbar input { min-height: 32px; }
  .standard-tool-button { min-height: 30px; }
  .content:has(> .standard-list-page:not([hidden])),.content:has(> .stock-document-page:not([hidden])) { padding-bottom:8px; }
  .document-standard-grid .standard-table td { height:28px; padding-block:3px; }
}
.warehouse-master-toolbar { display: grid; grid-template-columns: minmax(220px,1fr) repeat(4,minmax(120px,auto)) auto; gap: 8px; align-items: center; }
.warehouse-master-toolbar select { min-height: 38px; border: 1px solid var(--line); border-radius: 8px; background: var(--paper); color: var(--ink); padding: 0 10px; font: inherit; }
.warehouse-master-table th:nth-child(1) { width: 10%; }
.warehouse-master-table th:nth-child(2) { width: 17%; }
.warehouse-master-table th:nth-child(3),.warehouse-master-table th:nth-child(7),.warehouse-master-table th:nth-child(8) { width: 9%; }
.warehouse-master-table th:nth-child(4),.warehouse-master-table th:nth-child(5) { width: 17%; }
.warehouse-master-table th:nth-child(6) { width: 12%; }
.warehouse-master-footer > div { display: flex; gap: 7px; }
.warehouse-master-dialog { width: min(900px,calc(100vw - 32px)); }
.warehouse-master-dialog textarea { resize: vertical; }
.warehouse-active-field { display: flex !important; flex-direction: row !important; align-items: center; gap: 8px; align-self: end; min-height: 38px; }
.warehouse-active-field input { width: 17px; height: 17px; accent-color: var(--brand-turquoise-dark); }
.warehouse-branch-editor { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.warehouse-branch-editor h3 { margin: 0 0 4px; color: var(--ink); }
.warehouse-branch-editor p { margin: 0; color: var(--muted); font-size: 12px; }
.warehouse-branch-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 12px; max-height: 300px; overflow: auto; padding-right: 4px; }
.warehouse-branch-row { display: grid; grid-template-columns: 22px minmax(0,1fr) auto; gap: 8px; align-items: center; min-height: 54px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 9px; background: color-mix(in srgb,var(--paper) 94%,var(--brand-turquoise) 6%); cursor: pointer; }
.warehouse-branch-row > input { width: 17px; height: 17px; accent-color: var(--brand-turquoise-dark); }
.warehouse-branch-row > span:nth-child(2) { display: flex; flex-direction: column; min-width: 0; }
.warehouse-branch-row small { color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.warehouse-branch-default { font-size: 11px; color: var(--muted); white-space: nowrap; }
.warehouse-branch-default input { accent-color: var(--brand-turquoise-dark); }
.warehouse-audit { margin-top: 12px; border-radius: 8px; padding: 9px 11px; color: var(--muted); background: color-mix(in srgb,var(--paper) 90%,var(--line) 10%); font-size: 11px; }
.status-passive { background: #eef0f2 !important; color: #68737c !important; }
.stock-document-toolbar select { min-height:38px; border:1px solid var(--line); border-radius:8px; background:var(--paper); color:var(--ink); padding:0 9px; font:inherit; }
.stock-document-grid table { min-width:1050px; }.stock-document-grid tbody tr { cursor:pointer; }.stock-document-grid tbody tr:hover { background:color-mix(in srgb,var(--brand-turquoise) 8%,var(--paper)); }
.stock-direction-in { color:#08795d !important; }.stock-direction-out { color:#b44839 !important; }
.stock-document-dialog { width:min(1180px,calc(100vw - 24px)); max-height:calc(100vh - 24px); padding:0; border:0; border-radius:12px; background:var(--paper); color:var(--ink); }
.stock-document-dialog > form { padding:18px; }.stock-document-header-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; margin-top:14px; }
.stock-document-header-grid label,.stock-document-cancellation { display:flex; flex-direction:column; gap:5px; color:var(--muted); font-size:11px; font-weight:700; }
.stock-document-header-grid input,.stock-document-header-grid select,.stock-document-cancellation input { min-height:37px; border:1px solid var(--line); border-radius:7px; padding:0 9px; background:var(--paper); color:var(--ink); font:inherit; }
.stock-document-wide { grid-column:span 2; }.stock-document-meta { margin-top:9px; padding:8px 10px; border-radius:7px; background:color-mix(in srgb,var(--brand-turquoise) 7%,var(--paper)); color:var(--muted); font-size:11px; }
.stock-document-line-toolbar { display:flex; justify-content:space-between; align-items:end; gap:12px; margin:16px 0 7px; }.stock-document-line-toolbar div { display:flex; flex-direction:column; gap:2px; }.stock-document-line-toolbar small { color:var(--muted); }
.stock-document-line-grid { max-height:340px; border:1px solid var(--line); border-radius:8px; overflow:auto; }.stock-document-line-grid table { width:100%; min-width:850px; border-collapse:collapse; }
.stock-document-line-grid th,.stock-document-line-grid td { height:36px; border-bottom:1px solid var(--line); padding:4px 7px; text-align:left; font-size:11px; }.stock-document-line-grid th { position:sticky; top:0; z-index:1; background:var(--paper-strong); color:var(--muted); }
.stock-document-line-grid input { width:100%; min-height:29px; border:1px solid transparent; border-radius:5px; padding:0 6px; background:transparent; color:var(--ink); font:inherit; }.stock-document-line-grid input:focus { border-color:var(--brand-turquoise-dark); background:var(--paper); outline:0; }
.stock-document-line-grid .line-product-search { min-width:270px; }.stock-document-line-grid .line-quantity { width:120px; text-align:right; }.stock-document-line-grid button { border:0; background:transparent; color:#a43d33; cursor:pointer; font-size:17px; }
.stock-document-cancellation { margin-top:10px; }.stock-document-actions { display:grid; grid-template-columns:auto 1fr auto auto; margin-top:14px; }
.stock-status { display:inline-flex; border-radius:999px; padding:3px 8px; font-size:10px; font-weight:800; }.stock-status-Draft { background:#edf3f7;color:#37556d; }.stock-status-Posted { background:#daf5e9;color:#08795d; }.stock-status-Cancelled { background:#f8dfdc;color:#9a3b32; }
@media (max-width:1100px) { .warehouse-master-toolbar { grid-template-columns: 1fr 1fr 1fr; } .warehouse-master-toolbar .master-search { grid-column: span 2; } }
@media (max-width:1100px) { .document-list-heading { align-items:flex-start; flex-direction:column; }.document-list-summary { width:100%; flex-wrap:wrap; }.document-list-summary article { flex:1 1 140px; }.stock-document-header-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:720px) { .warehouse-master-toolbar,.warehouse-branch-list,.stock-document-header-grid,.standard-document-date-fields { grid-template-columns: 1fr; } .warehouse-master-toolbar .master-search,.stock-document-wide { grid-column: auto; } .master-list-toolbar[data-toolbar-kind="document"] { grid-template-columns:1fr; overflow-x:visible; }.master-list-toolbar[data-toolbar-kind="document"] .standard-command-set { min-width:0; }.warehouse-master-table { min-width: 980px; }.document-grid-totals-band > small { margin-left:0; }.standard-document-column-filter-actions { grid-template-columns:1fr 1fr; }.standard-document-column-filter-actions > span { display:none; } }

@media print {
  body.document-list-print-mode .sidebar,
  body.document-list-print-mode .topbar,
  body.document-list-print-mode .workspace-tabs,
  body.document-list-print-mode .ai-assistant,
  body.document-list-print-mode .master-list-toolbar,
  body.document-list-print-mode .standard-group-bar,
  body.document-list-print-mode .standard-grid-footer,
  body.document-list-print-mode .document-draft-visibility-toggle,
  body.document-list-print-mode .standard-column-filter-button { display:none!important; }
  body.document-list-print-mode .app-page { display:none!important; }
  body.document-list-print-mode .document-list-print-target { display:block!important; position:absolute; inset:0; width:100%; overflow:visible; border:0; box-shadow:none; }
  body.document-list-print-mode .document-list-print-target .standard-data-grid { max-height:none; overflow:visible; }
  body.document-list-print-mode .document-list-print-target table { min-width:100%; }
}
.reference-definition-layout { display:grid; grid-template-columns:minmax(250px,320px) minmax(0,1fr); gap:18px; align-items:start; }
.reference-definition-form { display:grid; gap:14px; padding:22px; border:1px solid var(--line); border-radius:18px; background:var(--paper); box-shadow:var(--shadow); }
.reference-definition-form h2 { margin:3px 0 0; }.reference-definition-form label { display:grid; gap:7px; font-weight:700; }.reference-definition-form .button { justify-self:start; }
@media (max-width:850px) { .reference-definition-layout { grid-template-columns:1fr; } }

/* Card / Form UI Standard v1: theme and stacked-layout completion for the Stock Card reference. */
:root[data-theme="dark"] .product-erp-card .record-card-header,
:root[data-theme="dark"] .product-erp-card .record-card-tabs,
:root[data-theme="dark"] .product-erp-card .record-card-command-bar,
:root[data-theme="dark"] .product-overview-section,
:root[data-theme="dark"] .product-quantity-strip,
:root[data-theme="dark"] .product-erp-card .record-checkbox { background: var(--paper); }
:root[data-theme="dark"] .product-erp-card .record-card-panels { background: #0c2435; }
:root[data-theme="dark"] .product-overview-section > header,
:root[data-theme="dark"] .product-erp-card .record-detail-table-heading,
:root[data-theme="dark"] .product-erp-card .barcode-inline-editor { background: #103345; }
:root[data-theme="dark"] .product-erp-card .record-card-field-grid label > span,
:root[data-theme="dark"] .product-erp-card .record-card-field-grid input,
:root[data-theme="dark"] .product-erp-card .record-card-field-grid select,
:root[data-theme="dark"] .product-erp-card .record-card-field-grid textarea { color: var(--ink); }
:root[data-theme="dark"] .product-erp-card .erp-data-grid th { background: #112d42; }
:root[data-theme="dark"] .product-erp-card .record-detail-table-heading h3,
:root[data-theme="dark"] .product-erp-card .record-detail-table th,
:root[data-theme="dark"] .product-erp-card .record-detail-table-empty strong,
:root[data-theme="dark"] .product-erp-card .record-detail-table footer b,
:root[data-theme="dark"] .product-erp-card .product-partner-contract-actions button { color: var(--ink); }
:root[data-theme="dark"] .product-erp-card .product-partner-contract-actions button.is-danger { color: #ffaaa5; }

@media (max-width:900px) {
  .product-erp-card .record-card-header { align-items: flex-start; flex-wrap: wrap; }
  .product-erp-card .record-card-heading { min-width: 0; flex: 1 1 420px; }
  .product-erp-card .record-card-header-actions { flex: 1 1 auto; justify-content: flex-end; }
  .product-erp-card .record-card-header-actions .standard-status { display: none; }
  .product-erp-card .record-card-tabs { padding-inline: var(--erp-space-2); }
}

@media (max-width:720px) {
  .record-detail-dialog:has(.product-erp-card) { width: calc(100vw - 8px); height: calc(100vh - 8px); max-height: calc(100vh - 8px); border-radius: var(--erp-radius-md); }
  .product-erp-card { max-height: calc(100vh - 8px); }
  .product-erp-card .record-card-header { padding: var(--erp-space-2); }
  .product-erp-card .record-card-heading { flex-basis: 100%; }
  .product-erp-card .record-card-icon { width: 34px; height: 34px; }
  .product-erp-card .record-card-heading h2 { font-size: 17px; }
  .product-erp-card .record-card-heading h2 + p { display: none; }
  .product-erp-card .record-card-header-actions { width: 100%; justify-content: stretch; }
  .product-erp-card .record-card-header-actions .dialog-minimize,
  .product-erp-card .record-card-header-actions .dialog-close { display: none; }
  .product-erp-card .record-card-primary-actions { width: 100%; padding-right: 0; border-right: 0; }
  .product-erp-card .record-card-primary-actions .erp-button { flex: 1; }
  .product-erp-card .record-card-panels { padding: var(--erp-space-2); }
  .product-erp-card .product-overview-field-grid { grid-template-columns: 1fr; padding: var(--erp-space-2); }
  .product-erp-card .product-overview-field-grid label.wide { grid-column: auto; }
  .product-erp-card .record-card-command-bar { padding: var(--erp-space-2); }
  .product-erp-card .record-card-command-bar .record-validation-summary { display: inline; }
  .product-erp-card .product-classification-layout { grid-template-columns: 1fr; }
  .product-erp-card .product-images-editor-body { grid-template-columns: 1fr; }
  .product-erp-card .product-classification-image { min-height: 145px; }
  .product-erp-card .product-classification-divider { width: 78%; height: 1px; justify-self: center; background: linear-gradient(to right,transparent,var(--erp-border) 15%,var(--erp-border) 85%,transparent); }
  .product-erp-card .product-classification-fields { grid-template-columns: 1fr; padding: 0; }
  .product-overview-price-viewport table { min-width: 560px; }
}

/* Tenant-wide hierarchical category master data. */
.category-tree-shell { overflow: hidden; }
.category-tree-toolbar { display: grid; grid-template-columns: minmax(280px,1fr) minmax(150px,190px) auto; gap: 8px; align-items: center; }
.category-tree-toolbar select { min-height: 38px; border: 1px solid var(--line); border-radius: 8px; padding: 0 10px; color: var(--ink); background: var(--paper); font: inherit; }
.category-tree-toolbar select:focus-visible,.category-tree-action:focus-visible,.category-tree-toggle:focus-visible { outline: 2px solid color-mix(in srgb,var(--brand-turquoise) 45%,transparent); outline-offset: 2px; }
.category-tree { min-height: 360px; max-height: calc(100vh - 318px); overflow: auto; background: var(--paper); }
.category-tree[aria-busy="true"] { cursor: progress; }
.category-tree-root { border-bottom: 1px solid var(--line); }
.category-tree-root > .category-tree-row { background: color-mix(in srgb,var(--paper-strong) 76%,var(--paper)); }
.category-tree-row { display: grid; grid-template-columns: minmax(260px,1fr) minmax(86px,auto) minmax(78px,auto) auto; gap: 10px; align-items: center; min-height: 44px; padding: 5px 12px; }
.category-tree-row:hover { background: color-mix(in srgb,var(--brand-turquoise) 6%,var(--paper)); }
.category-tree-row.child { position: relative; min-height: 39px; padding-left: 54px; border-top: 1px solid color-mix(in srgb,var(--line) 70%,transparent); }
.category-tree-row.child::before { content: ""; position: absolute; left: 27px; top: 0; bottom: 50%; width: 15px; border-left: 1px solid var(--line); border-bottom: 1px solid var(--line); border-radius: 0 0 0 5px; }
.category-tree-identity { min-width: 0; display: flex; align-items: center; gap: 9px; }
.category-tree-toggle { width: 26px; height: 26px; display: grid; place-items: center; flex: 0 0 auto; border: 0; border-radius: 7px; color: var(--brand-navy); background: transparent; cursor: pointer; }
.category-tree-toggle:hover { background: var(--brand-turquoise-pale); }
.category-tree-toggle[aria-expanded="false"] { transform: rotate(-90deg); }
.category-tree-toggle:disabled,.category-tree-row.child .category-tree-toggle { visibility: hidden; }
.category-tree-identity > span { min-width: 0; display: flex; flex-direction: column; }
.category-tree-identity strong,.category-tree-identity small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.category-tree-identity small { color: var(--muted); font-size: 10px; }
.category-tree-row.child .category-tree-identity strong { font-weight: 700; }
.category-tree-count { color: var(--muted); font-size: 11px; white-space: nowrap; }
.category-tree-actions { display: flex; justify-content: flex-end; gap: 5px; }
.category-tree-action { min-height: 30px; padding: 0 9px; border: 1px solid var(--line); border-radius: 7px; color: var(--brand-navy); background: var(--paper); font-size: 10px; font-weight: 800; cursor: pointer; }
.category-tree-action:hover { border-color: var(--brand-turquoise-dark); color: var(--brand-turquoise-dark); }
.category-tree-action.danger { color: #a23c35; }
.category-tree-action:disabled { cursor: not-allowed; opacity: .5; }
.category-tree-children[hidden] { display: none; }
.category-tree-footer > div { display: flex; gap: 7px; }
.category-tree-state { min-height: 280px; }
.category-tree-state .button { margin-top: 4px; }
.category-tree-state.error strong { color: var(--erp-danger); }
.category-definition-dialog { width: min(780px,calc(100vw - 28px)); }
.brand-definition-dialog { width: min(520px,calc(100vw - 28px)); }
.category-definition-fields { display: grid; grid-template-columns: minmax(145px,1fr) minmax(210px,1.5fr) minmax(100px,.55fr) minmax(120px,.65fr); gap: 10px; }
.category-definition-fields.single-column { grid-template-columns: 1fr; }
.category-definition-fields label { display: grid; gap: 6px; color: var(--muted); font-size: 11px; font-weight: 800; }
.category-definition-fields label > span { display: flex; gap: 4px; align-items: baseline; color: var(--muted); }
.category-definition-fields label > span b { color: inherit; font: inherit; }
.category-definition-fields label > span i { color: var(--erp-danger); font-style: normal; }
.category-definition-fields input,.category-definition-fields select { min-height: 38px; border: 1px solid var(--line); border-radius: 8px; padding: 0 10px; color: var(--ink); background: var(--paper); font: inherit; }
.category-definition-fields input:focus-visible,.category-definition-fields select:focus-visible { outline: 2px solid color-mix(in srgb,var(--brand-turquoise) 45%,transparent); outline-offset: 1px; border-color: var(--brand-turquoise-dark); }
.category-definition-fields input[aria-invalid="true"],.category-definition-fields select[aria-invalid="true"] { border-color: var(--erp-danger); box-shadow: 0 0 0 2px color-mix(in srgb,var(--erp-danger) 13%,transparent); }
.category-definition-fields input:disabled { color: var(--muted); background: var(--paper-strong); opacity: .75; }
.category-definition-fields .field-validation-message { min-height: 13px; }

@media (max-width:900px) {
  .category-tree-toolbar { grid-template-columns: 1fr 170px; }
  .category-tree-toolbar .standard-icon-command { grid-column: 1 / -1; justify-self: end; }
  .category-tree-row { grid-template-columns: minmax(220px,1fr) auto auto auto; }
  .category-definition-fields { grid-template-columns: 1fr 1.4fr; }
}
@media (max-width:680px) {
  .category-tree-toolbar,.category-definition-fields { grid-template-columns: 1fr; }
  .category-tree-toolbar .standard-icon-command { grid-column: auto; justify-self: stretch; }
  .category-tree-row { grid-template-columns: minmax(0,1fr); gap: 4px; }
  .category-tree-row.child { padding-left: 30px; }
  .category-tree-actions { justify-content: flex-start; padding-left: 35px; flex-wrap: wrap; }
}

.variant-definition-page { min-width: 0; }
.variant-definition-groups { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--erp-space-4); padding: 0 var(--erp-space-4) var(--erp-space-4); }
.variant-definition-group { min-width: 0; overflow: visible; }
.variant-definition-group > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding: 16px; border-bottom: 1px solid var(--erp-border); }
.variant-definition-group > header span { color: var(--erp-accent); font-size: 9px; font-weight: 900; letter-spacing: .09em; }
.variant-definition-group > header h2 { margin: 3px 0 4px; color: var(--brand-navy); font-size: 17px; }
.variant-definition-group > header p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.45; }
.variant-definition-group > header > strong { flex: 0 0 auto; padding: 5px 8px; border-radius: 999px; color: var(--erp-accent); background: color-mix(in srgb,var(--erp-accent) 9%,var(--erp-surface)); font-size: 9px; }
.variant-definition-quick-form { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: var(--erp-space-2); padding: var(--erp-space-3); border-bottom: 1px solid var(--erp-border); }
.variant-definition-quick-form input { min-width: 0; min-height: var(--erp-control-height); padding: 0 10px; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); color: var(--ink); background: var(--erp-surface); }
.variant-definition-grid { max-height: 420px; overflow: auto; }
.variant-definition-grid table { min-width: 300px; }
.variant-definition-actions { display: flex; gap: 5px; white-space: nowrap; }
.variant-definition-actions button { width: 28px; height: 28px; display: grid; place-items: center; padding: 0; border: 1px solid var(--erp-border); border-radius: 6px; color: var(--erp-accent); background: var(--erp-surface); cursor: pointer; }
.variant-definition-actions button.is-danger { color: var(--erp-danger); }
.variant-definition-actions button:hover { color: #fff; border-color: var(--erp-accent); background: var(--erp-accent); }
.variant-definition-actions button.is-danger:hover { border-color: var(--erp-danger); background: var(--erp-danger); }
.variant-definition-actions svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.variant-definition-dialog { width: min(470px,calc(100vw - 28px)); }
@media (max-width:1150px) { .variant-definition-groups { grid-template-columns: 1fr; } }

.stock-serial-allocation-dialog {
  width: min(900px, calc(100vw - 32px));
}

.serial-allocation-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--erp-space-2);
  margin: var(--erp-space-3) 0;
}

.serial-allocation-metrics span {
  display: flex;
  justify-content: space-between;
  gap: var(--erp-space-2);
  padding: var(--erp-space-2) var(--erp-space-3);
  border: 1px solid var(--erp-border);
  border-radius: var(--erp-radius-md);
  background: var(--erp-surface-muted);
}

.stock-serial-paste,
.stock-serial-scan {
  display: grid;
  gap: var(--erp-space-1);
  margin-bottom: var(--erp-space-3);
}

.stock-serial-paste textarea {
  min-height: 132px;
  resize: vertical;
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
}

.stock-serial-grid {
  max-height: 330px;
  overflow: auto;
}

.line-serial-button.is-complete,
.line-lot-button.is-complete {
  border-color: var(--erp-success);
  color: var(--erp-success);
}

.product-serials-panel {
  margin-top: var(--erp-space-4);
}

.product-serial-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(180px, 260px);
  gap: var(--erp-space-2);
  padding: 0 var(--erp-space-4) var(--erp-space-3);
}

.product-serial-grid {
  max-height: 420px;
  overflow: auto;
}

.product-serial-trace {
  border-top: 1px solid var(--erp-border);
  padding: var(--erp-space-4);
}

.product-serial-trace h4 {
  margin: 0 0 var(--erp-space-3);
}

@media (max-width: 720px) {
  .serial-allocation-metrics,
  .product-serial-toolbar {
    grid-template-columns: 1fr;
  }
}

/* Shared field focus wins over module accents without changing geometry or surfaces.
   The inset-offset outline also covers borderless grid editors. Invalid fields keep
   their module's error treatment; buttons, selection rows and toggles stay unchanged. */
:root[data-theme="dark"] {
  --erp-focus-border: #9b8cff;
  --erp-focus-halo: rgba(155, 140, 255, .16);
}

body :where(
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]):not([type="hidden"]):not([type="button"]):not([type="submit"]):not([type="reset"]),
  select,
  textarea
):not([aria-invalid="true"]):focus {
  outline: 1px solid var(--erp-focus-border) !important;
  outline-offset: -1px !important;
  border-color: var(--erp-focus-border) !important;
  box-shadow: var(--erp-focus-shadow) !important;
}

/* Composite search fields have one focus ring around their existing outer border. */
body :is(.master-search, .standard-document-column-filter-search):has(input:not([aria-invalid="true"]):focus) {
  outline: 1px solid var(--erp-focus-border);
  outline-offset: -1px;
  border-color: var(--erp-focus-border);
  box-shadow: var(--erp-focus-shadow);
}

body :is(.master-search, .standard-document-column-filter-search) input:not([aria-invalid="true"]):focus {
  outline: 0 !important;
  box-shadow: none !important;
}

@media (forced-colors: active) {
  :root, :root[data-theme="dark"] {
    --erp-focus-border: Highlight;
    --erp-focus-shadow: none;
  }
  body :is(input, select, textarea):focus-visible:not(:disabled) {
    outline: 2px solid Highlight !important;
    outline-offset: -2px !important;
  }
}
.company-switcher { display: grid; min-width: 190px; gap: 4px; }
.company-switcher label { color: var(--muted); font-size: 8px; font-weight: 850; letter-spacing: 1px; }
.company-switcher select { min-height: 36px; max-width: 260px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); color: var(--brand-navy); padding: 0 34px 0 11px; font: inherit; font-size: 12px; font-weight: 800; }
.company-period-shell { margin-top: 18px; }
.company-period-shell .master-list-toolbar { justify-content: space-between; }
.company-period-shell .master-list-toolbar h2 { margin: 3px 0 0; font-size: 18px; }
.company-access-layout { display: grid; grid-template-columns: minmax(280px, 340px) minmax(0, 1fr); gap: 18px; align-items: start; }
.company-definition-dialog { width: min(920px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); overflow: hidden; }
.company-definition-dialog[open] { display: flex; flex-direction: column; }
.company-definition-dialog > .conversion-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex: 0 0 auto; padding: 20px 24px; border-bottom: 1px solid var(--line); }
.company-definition-dialog > .conversion-heading > div { min-width: 0; }
.company-definition-dialog > .conversion-heading .eyebrow { margin: 0 0 6px; }
.company-definition-dialog > .conversion-heading h2 { margin: 0; font-size: 24px; line-height: 1.3; overflow-wrap: anywhere; }
#closeCompanyDefinitionDialog { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; padding: 0; border: 1px solid var(--line); border-radius: 10px; background: transparent; color: var(--ink); font-size: 26px; line-height: 1; cursor: pointer; }
#closeCompanyDefinitionDialog:hover { background: color-mix(in srgb, var(--green) 12%, transparent); }
#closeCompanyDefinitionDialog:focus-visible { outline: 3px solid var(--green); outline-offset: 2px; }
.company-definition-dialog form { min-height: 0; max-height: none; overflow: auto; padding: 20px 24px; }
.company-definition-dialog fieldset { margin: 0 0 14px; border: 1px solid var(--line); border-radius: 12px; padding: 14px; }
.company-definition-dialog legend { padding: 0 8px; color: var(--brand-navy); font-size: 11px; font-weight: 900; letter-spacing: .8px; }
.company-definition-dialog .full { grid-column: 1 / -1; }
.check-line { display: flex !important; flex-direction: row !important; align-items: center; gap: 8px; }
.check-line input[type="checkbox"] { width: 17px; height: 17px; }

@media (max-width: 900px) {
  .company-access-layout { grid-template-columns: 1fr; }
  .company-switcher { min-width: 150px; }
}

/* POS cash return: compact, read-only posting evidence in the ERP return list. */

.cash-card-form, .cash-card-filters {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--erp-space-3);
  padding: var(--erp-space-4);
  margin-block: var(--erp-space-3);
}
.cash-card-form label, .cash-card-filters label { display: block; font-size: var(--erp-font-label); }
.cash-card-form input[aria-invalid="true"] { border-color: var(--erp-danger); }
#cashCardError { color: var(--erp-danger); grid-column: 1 / -1; }
@media (max-width: 700px) {
  .cash-card-form, .cash-card-filters { grid-template-columns: 1fr; }
}
.product-master-import-heading-copy { min-width: 0; }

/* Soft corporate inline lookup palette. Full selection dialogs keep their own theme. */
@media screen {
  html :is([role="listbox"], .dw-lookup-popup, .count-editor-results, .partner-contract-lookup) {
    --lookup-surface:#fff; --lookup-muted:#f5f9fc; --lookup-ink:#203858;
    --lookup-secondary:#61758b; --lookup-line:#d5e2ea; --lookup-active:#e8f5f4;
    --lookup-accent:#77b8b4; --lookup-header:#273d64;
    --erp-surface:var(--lookup-surface); --erp-surface-muted:var(--lookup-muted); --paper:var(--lookup-surface);
    --ink:var(--lookup-ink); --muted:var(--lookup-secondary); --text-muted:var(--lookup-secondary); --navy:var(--lookup-ink);
    --erp-border:var(--lookup-line); --line:var(--lookup-line);
    color-scheme:light; background:var(--lookup-surface) !important; color:var(--lookup-ink) !important;
    border-color:var(--lookup-line) !important; scrollbar-color:#9bafb9 var(--lookup-muted);
    box-shadow:0 10px 26px rgb(26 49 78 / 14%);
  }
  html[data-theme="dark"] :is([role="listbox"], .dw-lookup-popup, .count-editor-results, .partner-contract-lookup) {
    --lookup-surface:#18283a; --lookup-muted:#1d3045; --lookup-ink:#eaf1fa;
    --lookup-secondary:#b5c6d7; --lookup-line:#344a60; --lookup-active:#22484d;
    color-scheme:dark;
  }
  html :is([role="listbox"], .dw-lookup-popup, .count-editor-results, .partner-contract-lookup) :is(
      div,section,aside,header,footer,form,table,thead,tbody,tr,th,td,input,select,option,
      button:not(.money-partner-create-command)) {
    background-color:var(--lookup-surface) !important; background-image:none !important;
    border-color:var(--lookup-line) !important;
  }
  html :is([role="listbox"], .dw-lookup-popup, .count-editor-results, .partner-contract-lookup) * { color:var(--lookup-ink) !important; }
  html :is([role="listbox"], .dw-lookup-popup, .count-editor-results, .partner-contract-lookup) :is(small,[data-empty]) { color:var(--lookup-secondary) !important; }
  html :is([role="listbox"], .dw-lookup-popup, .count-editor-results, .partner-contract-lookup) :is(
      .command-icon,.standard-command-icon) { background:transparent !important; }
  html body :is([role="listbox"], .dw-lookup-popup, .count-editor-results, .partner-contract-lookup) :is(
      thead th,.dw-party-lookup-columns,.dw-product-lookup-columns,.dw-financial-card-lookup-columns) {
    background:var(--lookup-header) !important; color:#fff !important;
  }
  html body :is([role="listbox"], .dw-lookup-popup, .count-editor-results, .partner-contract-lookup) :is(
      thead th,.dw-party-lookup-columns,.dw-product-lookup-columns,.dw-financial-card-lookup-columns) * { color:#fff !important; }
  html :is([role="listbox"], .dw-lookup-popup, .count-editor-results, .partner-contract-lookup) :is(
      button:not(.money-partner-create-command),a,label,tr):is(
      :hover,:focus-visible,.is-active,.active,.selected,.is-selected,[aria-selected="true"],[aria-pressed="true"]),
  html :is([role="listbox"], .dw-lookup-popup, .count-editor-results, .partner-contract-lookup) tr:is(
      :hover,.is-active,.active,.selected,.is-selected,[aria-selected="true"]) > td {
    background:var(--lookup-active) !important; color:var(--lookup-ink) !important;
    outline:1px solid var(--lookup-accent); outline-offset:-1px;
  }
}
/* All quick-search result surfaces share the document lookup corner radius. */
@media screen {
  html body :is(
    [role="listbox"], .dw-lookup-popup, .dc-results, .money-entry-results,
    .quick-stock-search-popup, .count-editor-results, .partner-contract-lookup,
    .product-partner-contract-options, .partner-definition-results,
    .partner-contract-search-results, .im-acceptance-product-results,
    .ig-dialog[data-picker] [data-options], .ps-customer-list,
    .branch-pos-reference-search .branch-pos-reference-tools
  ) { border-radius:14px !important; }
}

/* ERP-wide workspace frame. Native list/editor scroll regions keep their ownership. */
@media screen {
  body:has(.app-shell > main > .content > .app-page:not([hidden])) { overflow:hidden; }
  .app-shell > main > .content:has(> .app-page:not([hidden])) {
    width:calc(100% - 12px); max-width:none; min-width:0; min-height:0;
    margin-inline:6px; padding:6px 0; display:flex; flex-direction:column;
    gap:6px; overflow:hidden;
  }
  .app-shell > main > .content:has(> .app-page:not([hidden]))::before { display:none; }
  .content > .app-page:not([hidden]) {
    flex:1 1 0; min-width:0; min-height:0; width:100%; max-width:none;
    margin-top:0; box-sizing:border-box; overflow:auto; overscroll-behavior:contain;
  }
  .content > :is(.standard-list-page,.viewport-list-page,.quick-stock-page,.stock-excel-update-page,.document-workspace-page):not([hidden]) { overflow:hidden; }
  .content > .app-page:not([hidden]) ~ .panel.app-page:not([hidden]) { margin-top:0; }
  .content > :not(.app-page):not([hidden]) { flex-shrink:0; }
  .content .app-page :is(#cashCardsWorkspace,#bankCardsWorkspace):has(> .cash-master-shell:not(.has-statement)) { height:100%; min-height:0; }
  .content .app-page .cash-master-shell:not(.has-statement) { height:100%; min-height:0; }
  .content .app-page .cash-master-shell:not(.has-statement) > .cash-master-grid { min-height:0; }
  .content .app-page .cash-master-shell:not(.has-statement) > :not(.cash-master-grid) { flex-shrink:0; }
  .content .app-page > .im-workspace.im-list-desk.im-workspace { height:100%; min-height:0; box-sizing:border-box; }
}
/* Stock settings keeps the barcode tab's header position for every panel. */
@media screen {
  .content > .app-page[data-page="stock-settings"]:not([hidden]) {
    grid-template-rows:max-content minmax(0,1fr); overflow:hidden;
  }
  .content > [data-page="stock-settings"] .stock-settings-window {
    min-height:0; grid-template-rows:max-content minmax(0,1fr);
  }
  .content > [data-page="stock-settings"] .stock-settings-body {
    min-height:0; overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable;
  }
  .content > [data-page="stock-settings"] .stock-settings-panel {
    min-height:0; display:block;
  }
}
/* One editor shape across ERP forms, grid cells and dialogs, including focus. */
:root{--erp-input-radius:7px}
body :is(
 input:not(:is([type="checkbox"],[type="radio"],[type="range"],[type="color"],[type="file"],[type="hidden"],[type="button"],[type="submit"],[type="reset"],[type="image"])),
 select,textarea,[contenteditable="true"]
){border-radius:var(--erp-input-radius,7px)!important}

/* Explicit user-scoped opening filter preference; no automatic record writes. */
.opening-filter-option{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:10px 0;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink)}.opening-filter-option input[type=checkbox]{width:17px;height:17px;min-height:0;margin:0;accent-color:var(--brand-turquoise-dark)}.opening-filter-option small{color:var(--muted);font-size:11px}

.standard-document-column-filter-dialog>form{box-sizing:border-box;min-height:0;max-height:min(718px,calc(100dvh - 28px))}.standard-document-column-filter-dialog>form>:not(.standard-document-column-filter-options){flex-shrink:0}.standard-document-column-filter-dialog .standard-document-column-filter-options{flex:1 1 auto;min-height:0}
