/*
 * gb-stock.css - styles lifted out of the <style> blocks in the المخزون module.
 *
 * GLOBAL, not .razor.css, for the same reason as gb-gridview.css and gb-sales.css: these
 * selectors reach into BlazoredTypeahead's own markup (.blazored-typeahead__*) and into
 * Bootstrap's (.input-group, .form-check), neither of which CSS isolation can scope.
 *
 * Every rule stays under the page root class it already carried, so lifting changed neither
 * selector nor specificity.
 *
 *   .inventory-validation-form   the Inventories/ form chrome
 */

/* ---------------------------------------------------------------------------
 * .inventory-validation-form
 *
 * Was Inventories/InventoryValidationStyles.razor - a 290-line component whose entire body
 * was one <style> block, instantiated by eight live pages. A <style> block inside a component
 * is re-sent over SignalR on every render batch, so this was eight pages re-transmitting 290
 * lines of CSS on every update.
 *
 * Lifted verbatim. The hex literals below are tokenised in a separate commit, so that this
 * move can be verified as byte-identical rendering.
 * ------------------------------------------------------------------------ */
.inventory-validation-form .inventory-required-star {
    color: var(--kt-danger);
}

.inventory-validation-form .custom-is-invalid,
.inventory-validation-form .custom-is-invalid-radio,
.inventory-validation-form .assets-invalid-group {
    position: relative;
    box-shadow: none !important;
}

.inventory-validation-form .input-group.custom-is-invalid .input-group-text,
.inventory-validation-form .input-group.custom-is-invalid-radio .input-group-text,
.inventory-validation-form .input-group.custom-is-invalid .form-control,
.inventory-validation-form .input-group.custom-is-invalid-radio .form-control,
.inventory-validation-form .input-group.custom-is-invalid .form-select,
.inventory-validation-form .input-group.custom-is-invalid-radio .form-select,
.inventory-validation-form .input-group.custom-is-invalid .blazored-typeahead__input,
.inventory-validation-form .input-group.custom-is-invalid-radio .blazored-typeahead__input,
.inventory-validation-form .input-group.custom-is-invalid .blazored-typeahead__input input,
.inventory-validation-form .input-group.custom-is-invalid-radio .blazored-typeahead__input input,
.inventory-validation-form .assets-invalid-group .input-group-text,
.inventory-validation-form .assets-invalid-group .form-control,
.inventory-validation-form .assets-invalid-group .form-select,
.inventory-validation-form .assets-invalid-group .blazored-typeahead__input,
.inventory-validation-form .assets-invalid-group .blazored-typeahead__input input {
    border-color: var(--kt-input-border-color, #e1e3ea) !important;
    border-bottom-width: 0 !important;
    box-shadow: none !important;
}

.inventory-validation-form .input-group.custom-is-invalid::after,
.inventory-validation-form .input-group.custom-is-invalid-radio::after,
.inventory-validation-form .input-group.assets-invalid-group::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: var(--kt-danger);
    z-index: 5;
    pointer-events: none;
}

.inventory-validation-form .inventory-no-validation-line.custom-is-invalid::after,
.inventory-validation-form .inventory-no-validation-line.custom-is-invalid-radio::after,
.inventory-validation-form .form-check.inventory-no-validation-line.custom-is-invalid,
.inventory-validation-form .form-check-custom.inventory-no-validation-line.custom-is-invalid,
.inventory-validation-form .form-check.inventory-no-validation-line.custom-is-invalid-radio,
.inventory-validation-form .form-check-custom.inventory-no-validation-line.custom-is-invalid-radio {
    border-bottom: 0 !important;
    box-shadow: none !important;
    padding-bottom: 0;
}

.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid *,
.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid-radio * {
    border-bottom: 0 !important;
    border-bottom-width: 0 !important;
    border-bottom-color: transparent !important;
    box-shadow: none !important;
}

.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid,
.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid-radio {
    border-bottom: 0 !important;
    isolation: isolate;
}

.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid > .blazored-typeahead,
.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid-radio > .blazored-typeahead {
    border-bottom: 0 !important;
    border-color: var(--kt-input-border-color, #e1e3ea) !important;
    border-bottom-color: transparent !important;
    box-shadow: none !important;
}

.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid > .input-group-text,
.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid-radio > .input-group-text,
.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid > .form-control,
.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid-radio > .form-control,
.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid > .blazored-typeahead,
.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid-radio > .blazored-typeahead {
    border-bottom: 1px solid var(--kt-danger) !important;
    border-bottom-width: 1px !important;
    border-bottom-color: var(--kt-danger) !important;
}

.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid::after,
.inventory-validation-form .input-group.inventory-force-thin-line.custom-is-invalid-radio::after {
    display: none !important;
}

/* Opt-in line for item selectors whose underline must cover the complete group. */
.inventory-validation-form .input-group.inventory-full-validation-line.custom-is-invalid,
.inventory-validation-form .input-group.inventory-full-validation-line.custom-is-invalid-radio {
    border-bottom: 1px solid var(--kt-danger) !important;
    border-radius: .475rem;
}

.inventory-validation-form .input-group.inventory-full-validation-line.custom-is-invalid > *,
.inventory-validation-form .input-group.inventory-full-validation-line.custom-is-invalid-radio > * {
    border-bottom-color: transparent !important;
    box-shadow: none !important;
}

.inventory-validation-form .input-group.inventory-full-validation-line.custom-is-invalid::after,
.inventory-validation-form .input-group.inventory-full-validation-line.custom-is-invalid-radio::after {
    display: none !important;
}

.inventory-validation-form .input-group.inventory-input-line-under-control.custom-is-invalid::after {
    display: none;
}

.inventory-validation-form .input-group.inventory-input-line-under-control.custom-is-invalid .form-control {
    border-bottom: 1px solid var(--kt-danger) !important;
}

.inventory-validation-form .form-check.custom-is-invalid,
.inventory-validation-form .form-check-custom.custom-is-invalid,
.inventory-validation-form .form-check.custom-is-invalid-radio,
.inventory-validation-form .form-check-custom.custom-is-invalid-radio {
    border-bottom: 1px solid var(--kt-danger) !important;
    box-shadow: none !important;
    padding-bottom: .35rem;
}

.inventory-validation-form .form-check.inventory-no-validation-line.custom-is-invalid,
.inventory-validation-form .form-check-custom.inventory-no-validation-line.custom-is-invalid,
.inventory-validation-form .form-check.inventory-no-validation-line.custom-is-invalid-radio,
.inventory-validation-form .form-check-custom.inventory-no-validation-line.custom-is-invalid-radio {
    border-bottom: 0 !important;
    box-shadow: none !important;
    padding-bottom: 0 !important;
}

.inventory-validation-form .blazored-typeahead {
    position: relative !important;
    z-index: 20 !important;
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
}

.inventory-validation-form .blazored-typeahead:focus-within {
    z-index: 2000 !important;
}

/* RTL typeahead field: one complete input frame and one menu anchored to the full field. */
.inventory-validation-form .input-group.inventory-rtl-typeahead-field {
    position: relative !important;
    display: flex !important;
    flex: 1 1 auto !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    width: auto !important;
    min-width: 0 !important;
    overflow: visible !important;
    direction: rtl;
    isolation: isolate;
    z-index: 1;
}

.inventory-validation-form .input-group.inventory-rtl-typeahead-field:focus-within {
    z-index: 1050;
}

.inventory-validation-form .input-group.inventory-rtl-typeahead-field > .input-group-text {
    position: relative;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;
    white-space: nowrap !important;
    overflow: visible !important;
    direction: rtl;
    text-align: start;
    justify-content: flex-start;
    border: 1px solid var(--kt-input-border-color, #e1e3ea) !important;
    border-radius: 0 .475rem .475rem 0 !important;
    box-shadow: none !important;
}

.inventory-validation-form .input-group.inventory-rtl-typeahead-field > .blazored-typeahead {
    position: static !important;
    flex: 1 1 0 !important;
    width: 1% !important;
    min-width: 0 !important;
    margin-inline-start: -1px;
    border: 1px solid var(--kt-input-border-color, #e1e3ea) !important;
    border-radius: .475rem 0 0 .475rem !important;
    background-color: var(--kt-input-bg, #ffffff) !important;
    box-shadow: none !important;
    z-index: auto !important;
}

.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__controls,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__input,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__input input,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__input-mask,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__input-mask-wrapper {
    width: 100% !important;
    min-width: 0 !important;
    box-shadow: none !important;
}

.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__controls,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__input-mask-wrapper {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    direction: rtl;
}

.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__input-mask {
    display: flex !important;
    flex: 1 1 auto !important;
    align-items: center !important;
    overflow: hidden !important;
    text-overflow: ellipsis;
    white-space: nowrap;
    direction: rtl;
    text-align: start;
}

.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__input-icon,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__clear {
    flex: 0 0 2.5rem;
}

.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__results {
    position: absolute !important;
    inset-inline: 0 !important;
    top: calc(100% + 2px) !important;
    width: auto !important;
    min-width: 100% !important;
    max-width: 100% !important;
    max-height: 16rem !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    direction: rtl;
    text-align: start;
    z-index: 1060 !important;
    background-color: var(--kt-component-bg, #ffffff) !important;
    border: 1px solid var(--kt-border-color, #e1e3ea) !important;
    border-radius: .475rem !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .12) !important;
    padding: .35rem 0 !important;
}

.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__result,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__notfound,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__results-header,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__results-footer {
    width: auto !important;
    margin: 0 .25rem !important;
    padding: .55rem .85rem !important;
    color: var(--kt-text-gray-700, #3f4254) !important;
    background-color: var(--kt-component-bg, #ffffff) !important;
    border-radius: .35rem;
    direction: rtl;
    text-align: start;
}

.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__active-item,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__selected-item-highlighted,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__result:hover,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field .blazored-typeahead__result:focus {
    color: var(--kt-primary-inverse) !important;
    background-color: var(--kt-primary, #0d6efd) !important;
    border-color: var(--kt-primary, #0d6efd) !important;
}

.inventory-validation-form .input-group.inventory-rtl-typeahead-field.custom-is-invalid::after,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field.custom-is-invalid-radio::after {
    display: none !important;
}

.inventory-validation-form .input-group.inventory-rtl-typeahead-field.custom-is-invalid > .input-group-text,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field.custom-is-invalid-radio > .input-group-text,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field.custom-is-invalid > .blazored-typeahead,
.inventory-validation-form .input-group.inventory-rtl-typeahead-field.custom-is-invalid-radio > .blazored-typeahead {
    border-top-color: var(--kt-input-border-color, #e1e3ea) !important;
    border-inline-color: var(--kt-input-border-color, #e1e3ea) !important;
    border-bottom: 1px solid var(--kt-danger) !important;
    box-shadow: none !important;
}

/* ---------------------------------------------------------------------------
 * .products-validation-form
 *
 * Was eight near-identical <style> blocks, 781 lines, in Products/*.razor. Four of them
 * (Categories, Guarantee, MeasureTypes, PackagesBundle) were byte-identical 77-line copies;
 * PackagesDetails and ProductsSections were byte-identical 105-line copies; Packages was a
 * superset of those; Attributes was the odd one out.
 *
 * The body below is Packages' block verbatim - it contains every rule the other seven had -
 * with two selectors scoped, because sharing them would have been a silent visual change:
 *
 *   .products-field-full-underline.custom-is-invalid::after
 *       Packages, PackagesDetails and ProductsSections SUPPRESS this pseudo-element and draw
 *       the underline with a real .products-full-underline-line div instead. Attributes keeps
 *       the pseudo-element and stretches it to full width. Same selector, same specificity,
 *       both !important - they never met because they are different routes. Merged naively,
 *       Attributes inherits display:none and loses its underline, whichever rule comes last,
 *       because its own declarations never mention display. Hence the :not() guard and the
 *       .products-attributes-form copy at the end.
 *
 *   .input-group.custom-is-invalid .blazored-typeahead (and its five inner parts)
 *       Only Packages had this. Under a bare .products-validation-form prefix it would start
 *       stripping the bottom border off invalid typeahead fields on the other seven pages, so
 *       it is scoped to .products-packages-form.
 *
 * Two markup changes go with this: Products/Attributes.razor and Products/Packages.razor each
 * gain one class on the card-body that already carries .products-validation-form.
 * ------------------------------------------------------------------------ */

.products-validation-form .products-required-star {
    color: var(--kt-danger);
}

.products-validation-form .custom-is-invalid {
    position: relative;
    box-shadow: none !important;
}

.products-validation-form .input-group.custom-is-invalid .input-group-text,
.products-validation-form .input-group.custom-is-invalid .form-control,
.products-validation-form .input-group.custom-is-invalid .form-select,
.products-validation-form .input-group.custom-is-invalid .blazored-typeahead__input,
.products-validation-form .input-group.custom-is-invalid .blazored-typeahead__input input {
    border-color: var(--kt-input-border-color, #e1e3ea) !important;
    border-bottom-width: 0 !important;
    box-shadow: none !important;
}

.products-validation-form .input-group.custom-is-invalid::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    bottom: 0;
    height: 1px;
    background-color: var(--kt-danger);
    z-index: 5;
    pointer-events: none;
}

.products-validation-form .form-check.custom-is-invalid,
.products-validation-form .form-check-custom.custom-is-invalid {
    border-bottom: 1px solid var(--kt-danger) !important;
    box-shadow: none !important;
    padding-bottom: .35rem;
}

.products-validation-form .products-no-underline.custom-is-invalid,
.products-validation-form .products-no-underline.form-check-custom.custom-is-invalid {
    border-bottom: 0 !important;
    padding-bottom: 0;
}

.products-validation-form .products-field-full-underline {
    width: 100% !important;
    flex: 1 1 auto !important;
    min-width: 0;
}

.products-validation-form .products-field-full-underline > .blazored-typeahead {
    flex: 1 1 auto !important;
    width: 100% !important;
    min-width: 0;
}

.products-validation-form:not(.products-attributes-form) .products-field-full-underline.custom-is-invalid::after {
    content: none !important;
    display: none !important;
}

.products-validation-form .products-full-underline-line {
    display: none;
    width: 100%;
    height: 1px;
    background-color: var(--kt-danger);
}

.products-validation-form .products-full-underline-line.is-visible {
    display: block;
}

.products-validation-form .products-field-no-underline.custom-is-invalid,
.products-validation-form .products-field-no-underline.form-check-custom.custom-is-invalid {
    border-bottom: 0 !important;
    box-shadow: none !important;
    padding-bottom: 0 !important;
}

.products-validation-form .products-field-no-underline.custom-is-invalid::after {
    content: none !important;
    display: none !important;
}

.products-validation-form .packages-main-package-field.custom-is-invalid .input-group-text,
.products-validation-form .packages-main-package-field.custom-is-invalid > .blazored-typeahead,
.products-validation-form .packages-main-package-field.custom-is-invalid > .blazored-typeahead .blazored-typeahead__controls,
.products-validation-form .packages-main-package-field.custom-is-invalid > .blazored-typeahead .blazored-typeahead__input,
.products-validation-form .packages-main-package-field.custom-is-invalid > .blazored-typeahead .blazored-typeahead__input input,
.products-validation-form .packages-main-package-field.custom-is-invalid > .blazored-typeahead .blazored-typeahead__input-mask,
.products-validation-form .packages-main-package-field.custom-is-invalid > .blazored-typeahead .blazored-typeahead__input-mask-wrapper {
    border-bottom-color: transparent !important;
    border-bottom-width: 0 !important;
    box-shadow: none !important;
}

.products-validation-form .packages-main-package-field.custom-is-invalid::after {
    content: none !important;
    display: none !important;
}

.products-packages-form .input-group.custom-is-invalid .blazored-typeahead,
.products-packages-form .input-group.custom-is-invalid .blazored-typeahead .blazored-typeahead__controls,
.products-packages-form .input-group.custom-is-invalid .blazored-typeahead .blazored-typeahead__input,
.products-packages-form .input-group.custom-is-invalid .blazored-typeahead .blazored-typeahead__input input,
.products-packages-form .input-group.custom-is-invalid .blazored-typeahead .blazored-typeahead__input-mask,
.products-packages-form .input-group.custom-is-invalid .blazored-typeahead .blazored-typeahead__input-mask-wrapper {
    border-bottom-color: transparent !important;
    border-bottom-width: 0 !important;
    box-shadow: none !important;
}

.products-validation-form .packages-inline-validation-line {
    display: block !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 1px !important;
    margin-top: -1px !important;
    background-color: var(--kt-danger) !important;
    position: relative;
    z-index: 200;
    pointer-events: none;
}

.products-validation-form .blazored-typeahead {
    position: relative !important;
    z-index: 90000 !important;
}

.products-validation-form .blazored-typeahead:focus-within {
    z-index: 99999 !important;
}

.products-validation-form .blazored-typeahead__results {
    position: absolute !important;
    inset-inline: 0 !important;
    top: calc(100% + 2px) !important;
    z-index: 999999 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background-color: var(--kt-dropdown-bg) !important;
    border: 1px solid #e1e3ea !important;
    border-radius: .475rem !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .12) !important;
}

.products-validation-form .blazored-typeahead__result,
.products-validation-form .blazored-typeahead__active-item {
    color: var(--kt-text-gray-800) !important;
    background-color: var(--kt-dropdown-bg) !important;
    border-radius: .35rem;
}

.products-validation-form .blazored-typeahead__result:hover,
.products-validation-form .gb-keyboard-active {
    color: var(--kt-primary-inverse) !important;
    background-color: var(--kt-primary) !important;
}

/* Attributes alone keeps the pseudo-element underline, stretched to the full field. */
.products-attributes-form .products-field-full-underline.custom-is-invalid::after {
    inset-inline: 0 !important;
    width: 100% !important;
}

/* ---------------------------------------------------------------------------
 * .inventory-validation-form - the per-page additions
 *
 * Eight more <style> blocks, 320 lines, from the Inventories pages. They extend the section
 * above, which is why they come after it: in the page, the component rendered first and the
 * page's own block second, and that order is preserved here.
 *
 * Every selector in these blocks carries a class that belongs to one page
 * (.inventory-outs-invoice-type, .inves-printing-type, .damaged-stock-*, .special-products-*,
 * .inventory-processes-continues-*, .pkc-col-*), so unlike the Products blocks none of them
 * needed a page scope - none can reach markup that is not its own. Rules that appeared
 * identically in several blocks are emitted once.
 * ------------------------------------------------------------------------ */

/* --- Inventories/InventoriesIns.razor */

.inventory-validation-form .inventory-sub-validation-message {
    color: var(--kt-danger);
    font-size: .925rem;
    font-weight: 500;
    margin-bottom: 1rem;
}


.inventory-validation-form .inventory-form-inline-error {
    color: var(--kt-danger);
    font-size: .95rem;
    font-weight: 500;
    margin: 0 0 1rem;
}

/* --- Inventories/InventoriesOuts.razor
 * Exact duplicates of rules already above, dropped: .inventory-validation-form .inventory-sub-validation-message */

.inventory-validation-form .inventory-outs-invoice-type.inventory-no-validation-line.custom-is-invalid,
.inventory-validation-form .inventory-outs-invoice-type.inventory-no-validation-line.custom-is-invalid-radio {
    border-bottom: 0 !important;
    box-shadow: none !important;
    padding-bottom: 0 !important;
}


.inventory-validation-form .inventory-outs-invoice-type.inventory-no-validation-line.custom-is-invalid::after,
.inventory-validation-form .inventory-outs-invoice-type.inventory-no-validation-line.custom-is-invalid-radio::after {
    display: none !important;
}

/* --- Inventories/Inves.razor */

.inventory-validation-form .inves-printing-type.inventory-no-validation-line.custom-is-invalid,
.inventory-validation-form .inves-printing-type.inventory-no-validation-line.custom-is-invalid-radio {
    border-bottom: 0 !important;
    box-shadow: none !important;
    padding-bottom: 0 !important;
}




.inventory-validation-form .inves-printing-type.inventory-no-validation-line.custom-is-invalid::after,
.inventory-validation-form .inves-printing-type.inventory-no-validation-line.custom-is-invalid-radio::after {
    display: none !important;
}

/* --- Inventories/InventoryProcessesContinues.razor
 * Exact duplicates of rules already above, dropped: .inventory-validation-form .inventory-sub-validation-message */

.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix {
    position: relative !important;
    overflow: visible !important;
    z-index: 90000 !important;
}


.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .blazored-typeahead {
    position: relative !important;
    z-index: 90000 !important;
}


.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix:focus-within {
    z-index: 99999 !important;
}


.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .blazored-typeahead:focus-within {
    z-index: 99999 !important;
}


.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .blazored-typeahead__input-mask-wrapper {
    flex-wrap: nowrap !important;
    align-items: stretch !important;
}


.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .blazored-typeahead__input-mask {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}


.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .blazored-typeahead__results {
    position: absolute !important;
    inset-inline: 0 !important;
    top: 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    max-height: 260px !important;
    z-index: 999999 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background-color: var(--kt-component-bg, #ffffff) !important;
    border: 1px solid var(--kt-border-color, #e1e3ea) !important;
    border-radius: .475rem !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .12) !important;
    padding: .35rem 0 !important;
}


.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .blazored-typeahead__result,
.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .blazored-typeahead__active-item,
.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .blazored-typeahead__result-hover,
.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .blazored-typeahead__result-selected {
    color: var(--kt-text-gray-700, #3f4254) !important;
    background-color: var(--kt-component-bg, #ffffff) !important;
    border-radius: .35rem;
    padding: .55rem .85rem !important;
    margin: 0 .25rem !important;
    width: auto !important;
}


.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .blazored-typeahead__result:hover,
.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .blazored-typeahead__active-item,
.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .blazored-typeahead__result-hover,
.inventory-validation-form .inventory-processes-continues-dropdown-menu-fix .gb-keyboard-active {
    color: var(--kt-primary-inverse) !important;
    background-color: var(--kt-primary, #0d6efd) !important;
}


.inventory-validation-form .inventory-processes-continues-status.inventory-no-validation-line.custom-is-invalid,
.inventory-validation-form .inventory-processes-continues-status.inventory-no-validation-line.custom-is-invalid-radio {
    border-bottom: 0 !important;
    box-shadow: none !important;
    padding-bottom: 0 !important;
}


.inventory-validation-form .inventory-processes-continues-status.inventory-no-validation-line.custom-is-invalid::after,
.inventory-validation-form .inventory-processes-continues-status.inventory-no-validation-line.custom-is-invalid-radio::after {
    display: none !important;
}


.inventory-validation-form .inventory-save-error-message {
    color: var(--kt-danger);
    font-size: .95rem;
    font-weight: 500;
    margin: 0 0 1rem;
}

/* --- Inventories/ProcessesDamagedStock.razor
 * Exact duplicates of rules already above, dropped: .inventory-validation-form .inventory-save-error-message */

.inventory-validation-form .damaged-stock-dropdown-menu-fix {
    position: relative !important;
    overflow: visible !important;
    z-index: 90000 !important;
}


.inventory-validation-form .damaged-stock-dropdown-menu-fix .blazored-typeahead {
    position: relative !important;
    z-index: 90000 !important;
}


.inventory-validation-form .damaged-stock-dropdown-menu-fix .blazored-typeahead__input-mask-wrapper {
    flex-wrap: nowrap !important;
    align-items: stretch !important;
}


.inventory-validation-form .damaged-stock-dropdown-menu-fix .blazored-typeahead__input-mask {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}


.inventory-validation-form .damaged-stock-dropdown-menu-fix .blazored-typeahead:focus-within {
    z-index: 99999 !important;
}


.inventory-validation-form .damaged-stock-dropdown-menu-fix .blazored-typeahead__results {
    position: absolute !important;
    inset-inline: 0 !important;
    top: 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    max-height: 260px !important;
    z-index: 999999 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background-color: var(--kt-component-bg, #ffffff) !important;
    border: 1px solid var(--kt-border-color, #e1e3ea) !important;
    border-radius: .475rem !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .12) !important;
    padding: .35rem 0 !important;
}


.inventory-validation-form .damaged-stock-dropdown-menu-fix .blazored-typeahead__result,
.inventory-validation-form .damaged-stock-dropdown-menu-fix .blazored-typeahead__active-item,
.inventory-validation-form .damaged-stock-dropdown-menu-fix .blazored-typeahead__result-hover,
.inventory-validation-form .damaged-stock-dropdown-menu-fix .blazored-typeahead__result-selected {
    color: var(--kt-text-gray-700, #3f4254) !important;
    background-color: var(--kt-component-bg, #ffffff) !important;
    border-radius: .35rem;
    padding: .55rem .85rem !important;
    margin: 0 .25rem !important;
    width: auto !important;
}


.inventory-validation-form .damaged-stock-dropdown-menu-fix .blazored-typeahead__result:hover,
.inventory-validation-form .damaged-stock-dropdown-menu-fix .blazored-typeahead__active-item,
.inventory-validation-form .damaged-stock-dropdown-menu-fix .blazored-typeahead__result-hover,
.inventory-validation-form .damaged-stock-dropdown-menu-fix .gb-keyboard-active {
    color: var(--kt-primary-inverse) !important;
    background-color: var(--kt-primary, #0d6efd) !important;
}


.inventory-validation-form .damaged-stock-status.inventory-no-validation-line.custom-is-invalid,
.inventory-validation-form .damaged-stock-status.inventory-no-validation-line.custom-is-invalid-radio {
    border-bottom: 0 !important;
    box-shadow: none !important;
    padding-bottom: 0 !important;
}


.inventory-validation-form .damaged-stock-status.inventory-no-validation-line.custom-is-invalid::after,
.inventory-validation-form .damaged-stock-status.inventory-no-validation-line.custom-is-invalid-radio::after {
    display: none !important;
}

/* --- Inventories/SpecialProducts.razor */

.inventory-validation-form .special-products-dropdown-menu-fix {
    position: relative !important;
    overflow: visible !important;
    z-index: 90000 !important;
}


.inventory-validation-form .special-products-dropdown-menu-fix .blazored-typeahead {
    position: relative !important;
    z-index: 90000 !important;
}


.inventory-validation-form .special-products-dropdown-menu-fix .blazored-typeahead__input-mask-wrapper {
    flex-wrap: nowrap !important;
    align-items: stretch !important;
}


.inventory-validation-form .special-products-dropdown-menu-fix .blazored-typeahead__input-mask {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}


.inventory-validation-form .special-products-dropdown-menu-fix .blazored-typeahead:focus-within {
    z-index: 99999 !important;
}


.inventory-validation-form .special-products-dropdown-menu-fix .blazored-typeahead__results {
    position: absolute !important;
    inset-inline: 0 !important;
    top: 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    max-height: 260px !important;
    z-index: 999999 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background-color: var(--kt-component-bg, #ffffff) !important;
    border: 1px solid var(--kt-border-color, #e1e3ea) !important;
    border-radius: .475rem !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .12) !important;
    padding: .35rem 0 !important;
}


.inventory-validation-form .special-products-dropdown-menu-fix .blazored-typeahead__result,
.inventory-validation-form .special-products-dropdown-menu-fix .blazored-typeahead__active-item,
.inventory-validation-form .special-products-dropdown-menu-fix .blazored-typeahead__result-hover,
.inventory-validation-form .special-products-dropdown-menu-fix .blazored-typeahead__result-selected {
    color: var(--kt-text-gray-700, #3f4254) !important;
    background-color: var(--kt-component-bg, #ffffff) !important;
    border-radius: .35rem;
    padding: .55rem .85rem !important;
    margin: 0 .25rem !important;
    width: auto !important;
}


.inventory-validation-form .special-products-dropdown-menu-fix .blazored-typeahead__result:hover,
.inventory-validation-form .special-products-dropdown-menu-fix .blazored-typeahead__active-item,
.inventory-validation-form .special-products-dropdown-menu-fix .blazored-typeahead__result-hover,
.inventory-validation-form .special-products-dropdown-menu-fix .gb-keyboard-active {
    color: var(--kt-primary-inverse) !important;
    background-color: var(--kt-primary, #0d6efd) !important;
}

/* --- Inventories/PackageCard.razor */

.packagecard-grid .gb-grid-table th.sticky-tableData,
.packagecard-grid .gb-grid-table td.sticky-tableData {
    width: 90px;
}


.packagecard-grid .pkc-col-code {
    width: 11%;
}


.packagecard-grid .pkc-col-name {
    width: 24%;
}


.packagecard-grid .pkc-col-barcode {
    width: 15%;
}


.packagecard-grid .pkc-col-store {
    width: 17%;
}


.packagecard-grid .pkc-col-cost {
    width: 10%;
}


.packagecard-grid .pkc-col-qnt {
    width: 8%;
}

/* ---------------------------------------------------------------------------
 * The Inventories sub-grid components
 *
 * Six more <style> blocks, 320 lines, from the Sub* components the Inventories pages render
 * for their line tables. Nearly all of their selectors are page-named
 * (.inventory-sub-package-dropdown-fix, .inventory-opening-cost-line, .damaged-stock-*), so
 * like the page blocks above they need no scope.
 *
 * ONE EXCEPTION. .inventory-sub-field-message was defined TWICE, differently:
 *
 *   SubInventoriesOuts     color: var(--kt-danger); margin-top: -.75rem; margin-bottom: 1rem
 *   SubInventoryProcesses  color: #f1416c; justify-content: flex-start; text-align: right
 *
 * They never collided because the components render on different routes. Merged, the two sets
 * of declarations are almost disjoint, so BOTH pages would have changed - Outs would gain
 * text-align and justify-content, Processes would gain the margins. Each copy is therefore
 * scoped to a class on its own component root: .inventory-outs-sub and
 * .inventory-processes-sub. Those two components are the only markup in the tree that uses the
 * class, so the scope is exact.
 *
 * NOT LIFTED: Products/SubFeaturesBundle.razor and Products/SubPackagesBundle.razor, 28 lines
 * between them. Their selectors are .border-danger, .custom-is-invalid input.form-control and
 * .custom-is-invalid-radio .form-check-input - Bootstrap's own classes and the app-wide
 * validation classes, with no ancestor at all. Global while that page renders is the behaviour
 * those rules have today; global always is a different thing, and scoping them under an
 * ancestor would narrow their reach instead of preserving it. Left in place on purpose.
 * ------------------------------------------------------------------------ */

/* --- Inventories/SubInventoriesIns.razor */
.inventory-sub-package-name-normal {
    font-size: inherit;
    font-weight: 400 !important;
    line-height: inherit;
}


.inventory-sub-package-dropdown-fix {
    position: relative !important;
    overflow: visible !important;
    z-index: 90000 !important;
}


.inventory-sub-package-dropdown-fix .blazored-typeahead {
    position: relative !important;
    z-index: 90000 !important;
}


.inventory-sub-package-dropdown-fix:focus-within,
.inventory-sub-package-dropdown-fix .blazored-typeahead:focus-within {
    z-index: 99999 !important;
}


.inventory-sub-package-dropdown-fix .blazored-typeahead__input-mask-wrapper {
    flex-wrap: nowrap !important;
    align-items: stretch !important;
}


.inventory-sub-package-dropdown-fix .blazored-typeahead__input-mask {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}


.inventory-sub-package-dropdown-fix .blazored-typeahead__results {
    position: absolute !important;
    inset-inline: 0 !important;
    top: 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    max-height: 260px !important;
    z-index: 999999 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background-color: var(--kt-component-bg, #ffffff) !important;
    border: 1px solid var(--kt-border-color, #e1e3ea) !important;
    border-radius: .475rem !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .12) !important;
    padding: .35rem 0 !important;
    direction: rtl !important;
    text-align: start !important;
}


.inventory-sub-package-dropdown-fix .blazored-typeahead__result,
.inventory-sub-package-dropdown-fix .blazored-typeahead__active-item,
.inventory-sub-package-dropdown-fix .blazored-typeahead__result-hover,
.inventory-sub-package-dropdown-fix .blazored-typeahead__result-selected {
    background-color: var(--kt-component-bg, #ffffff) !important;
    color: var(--kt-text-gray-700, #3f4254) !important;
    border-radius: .35rem !important;
    padding: .55rem .85rem !important;
    margin: 0 .25rem !important;
    width: auto !important;
}


.inventory-sub-package-dropdown-fix .blazored-typeahead__result:hover,
.inventory-sub-package-dropdown-fix .blazored-typeahead__active-item,
.inventory-sub-package-dropdown-fix .blazored-typeahead__result-hover,
.inventory-sub-package-dropdown-fix .gb-keyboard-active {
    color: var(--kt-primary-inverse) !important;
    background-color: var(--kt-primary, #0d6efd) !important;
}


.inventory-ins-current-cost-line,
.inventory-ins-current-cost-line:focus-within {
    box-shadow: none !important;
}


.inventory-ins-current-cost-line > .input-group-text,
.inventory-ins-current-cost-line > .form-control {
    border-bottom-width: 1px !important;
    box-shadow: none !important;
}


.inventory-ins-current-cost-line > .form-control:disabled {
    border-bottom-width: 1px !important;
    box-shadow: none !important;
}

/* --- Inventories/SubInventoriesOuts.razor
 * Identical to rules already above, dropped: 9
 * Scoped to .inventory-outs-sub - see the header */
.inventory-outs-sub 

.inventory-sub-field-message {
    color: var(--kt-danger, #f1416c);
    font-size: .925rem;
    font-weight: 500;
    margin-top: -.75rem;
    margin-bottom: 1rem;
}

/* --- Inventories/SubInventoryOpening.razor */
.inventory-opening-package-line,
.inventory-opening-cost-line,
.inventory-opening-package-line:focus-within,
.inventory-opening-cost-line:focus-within {
    box-shadow: none !important;
}


.inventory-opening-package-line > .input-group-text,
.inventory-opening-package-line > .blazored-typeahead,
.inventory-opening-cost-line > .input-group-text,
.inventory-opening-cost-line > .form-control {
    border-bottom-width: 1px !important;
    box-shadow: none !important;
}


.inventory-opening-package-line.custom-is-invalid::after,
.inventory-opening-cost-line.custom-is-invalid::after {
    height: 1px !important;
}


.inventory-opening-cost-line {
    align-items: stretch !important;
    flex-wrap: nowrap !important;
}


.inventory-opening-cost-line > p {
    display: flex;
    align-items: center;
    margin: 0 !important;
    padding: .775rem .75rem;
    border: 0 !important;
    border-bottom: 1px solid transparent !important;
    background-color: transparent;
    box-shadow: none !important;
    white-space: nowrap;
}


.inventory-opening-cost-line.custom-is-invalid > p {
    border-bottom-color: var(--kt-danger, #f1416c) !important;
}

/* --- Inventories/SubInventoryProcesses.razor
 * Scoped to .inventory-processes-sub - see the header */
.inventory-processes-sub .inventory-sub-field-message {
    color: var(--kt-danger);
    font-size: .925rem;
    font-weight: 500;
    justify-content: flex-start;
    text-align: right;
}
.inventory-processes-sub 

.inventory-sub-field-message i {
    color: var(--kt-danger);
    line-height: 1;
}

/* --- Inventories/SubInventoryProcessesContinues.razor */
.inventory-processes-continues-package-line,
.inventory-processes-continues-package-line:focus-within {
    box-shadow: none !important;
}


.inventory-processes-continues-package-line > .input-group-text,
.inventory-processes-continues-package-line > .blazored-typeahead,
.inventory-processes-continues-package-line > .form-control {
    border-bottom-width: 1px !important;
    box-shadow: none !important;
}


.inventory-processes-continues-package-line.custom-is-invalid::after {
    height: 1px !important;
}

/* --- Inventories/SubProcessesDamagedStock.razor */
.damaged-stock-package-dropdown-fix {
    position: relative !important;
    overflow: visible !important;
    z-index: 90000 !important;
}


.damaged-stock-package-dropdown-fix .blazored-typeahead {
    position: relative !important;
    z-index: 90000 !important;
}


.damaged-stock-package-dropdown-fix:focus-within,
.damaged-stock-package-dropdown-fix .blazored-typeahead:focus-within {
    z-index: 99999 !important;
}


.damaged-stock-package-dropdown-fix .blazored-typeahead__input-mask-wrapper {
    flex-wrap: nowrap !important;
    align-items: stretch !important;
}


.damaged-stock-package-dropdown-fix .blazored-typeahead__input-mask {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}


.damaged-stock-package-dropdown-fix .blazored-typeahead__results {
    position: absolute !important;
    inset-inline: 0 !important;
    top: 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    max-height: 260px !important;
    z-index: 999999 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background-color: var(--kt-component-bg, #ffffff) !important;
    border: 1px solid var(--kt-border-color, #e1e3ea) !important;
    border-radius: .475rem !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .12) !important;
    padding: .35rem 0 !important;
    direction: rtl !important;
    text-align: start !important;
}


.damaged-stock-package-dropdown-fix .blazored-typeahead__result,
.damaged-stock-package-dropdown-fix .blazored-typeahead__active-item,
.damaged-stock-package-dropdown-fix .blazored-typeahead__result-hover,
.damaged-stock-package-dropdown-fix .blazored-typeahead__result-selected {
    background-color: var(--kt-component-bg, #ffffff) !important;
    color: var(--kt-text-gray-700, #3f4254) !important;
    border-radius: .35rem !important;
    padding: .55rem .85rem !important;
    margin: 0 .25rem !important;
    width: auto !important;
}


.damaged-stock-package-dropdown-fix .blazored-typeahead__result:hover,
.damaged-stock-package-dropdown-fix .blazored-typeahead__active-item,
.damaged-stock-package-dropdown-fix .blazored-typeahead__result-hover,
.damaged-stock-package-dropdown-fix .gb-keyboard-active {
    color: var(--kt-primary-inverse) !important;
    background-color: var(--kt-primary, #0d6efd) !important;
}


.damaged-stock-field-message {
    color: var(--kt-danger);
    font-size: .925rem;
    font-weight: 500;
    margin-top: -.75rem;
    margin-bottom: 1rem;
}

