/*
 * AksaErp global visual foundation.
 * Single-file theme layer loaded after Metronic, Radzen, css isolation, and existing Aksa overrides.
 * Keep this file focused on shell/Radzen/common ERP surfaces; page-specific workflows stay in their own routed pages.
 */

/* Shared admin density: commands and queries share a row when space permits.
   Keep filter popovers, grid scrolling and workflow state in their existing owners. */
[data-aksa-layout="admin"] .aksa-unified-list-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .35rem .65rem;
    padding: .4rem .55rem;
    border-bottom: 1px solid var(--aksa-border);
}

[data-aksa-layout="admin"] .aksa-unified-list-toolbar__command-bar {
    display: flex;
    flex: 1 1 auto;
    flex-wrap: wrap;
    gap: .45rem;
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

[data-aksa-layout="admin"] .aksa-unified-list-toolbar__context {
    margin-inline-start: auto;
}

[data-aksa-layout="admin"] .aksa-unified-list-toolbar__query-bar {
    flex: 1 1 22rem;
    max-width: 42rem;
    min-width: 0;
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

[data-aksa-layout="admin"] .aksa-unified-list-toolbar__search-zone {
    flex: 1 1 16rem;
    min-width: min(100%, 12rem);
}

[data-aksa-layout="admin"] .aksa-unified-list-toolbar__quick-filters {
    flex: 0 1 auto;
    flex-wrap: wrap;
    max-width: 100%;
    min-width: 0;
}

[data-aksa-layout="admin"] .aksa-unified-list-toolbar__active-filters {
    flex-wrap: wrap;
    max-width: 100%;
}

[data-aksa-layout="admin"] .aksa-unified-quick-filter {
    max-width: 100%;
}

[data-aksa-layout="admin"] .aksa-unified-list-toolbar__title-block,
[data-aksa-layout="admin"] .aksa-metronic-card__title-text {
    display: flex;
    align-items: center;
    gap: .4rem;
    min-width: 0;
}

[data-aksa-layout="admin"] .aksa-metronic-card__title-text {
    flex-wrap: wrap;
}

[data-aksa-layout="admin"] .aksa-unified-report-card {
    min-height: 0;
}

[data-aksa-layout="admin"] .aksa-unified-report-card__header {
    min-height: 0;
    padding: .5rem .65rem;
    gap: .5rem;
}

[data-aksa-layout="admin"] .aksa-unified-report-card__title {
    flex: 1 1 auto;
    min-width: 0;
}

[data-aksa-layout="admin"] .aksa-unified-report-card__footer {
    min-height: 0;
    padding: .3rem .65rem;
}

.aksa-help-tip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 1.5rem;
    height: 1.5rem;
    color: var(--aksa-text-muted, var(--bs-secondary-color));
    border-radius: .25rem;
    cursor: help;
    vertical-align: middle;
}

.aksa-help-tip:focus-visible {
    outline: 2px solid var(--aksa-primary, var(--bs-primary));
    outline-offset: 2px;
}

[data-aksa-layout="admin"] .rz-tabview {
    --rz-tabs-padding: .65rem;
}

[data-aksa-layout="admin"] :is(.logistics-page-header, .delivery-page-head, .dl-page-head, .geo-admin-hero, .backup-page-header) {
    margin-block-end: .65rem;
}

[data-aksa-layout="admin"] :is(.delivery-page-head, .dl-page-head, .geo-admin-hero, .backup-page-header) {
    padding: .65rem .8rem;
    gap: .6rem;
    background: var(--aksa-surface);
    border-color: var(--aksa-border);
    box-shadow: var(--aksa-shadow-sm);
}

[data-aksa-layout="admin"] .logistics-page-header__body {
    padding: .6rem .8rem;
}

[data-aksa-layout="admin"] .hr-operation-controlpanel {
    min-height: 0;
    padding: .5rem .75rem;
    gap: .5rem;
}

[data-aksa-layout="admin"] #kt_app_content_container > .card > .card-header,
[data-aksa-layout="admin"] .aksa-metronic-card > .card-header {
    min-height: 3rem;
    padding: .5rem .75rem;
    gap: .5rem;
}

[data-aksa-layout="admin"] #kt_app_content_container > .card > .card-body:not(.p-0),
[data-aksa-layout="admin"] .aksa-metronic-card > .card-body:not(.p-0) {
    padding: .75rem;
}

[data-aksa-layout="admin"] .card-header > .card-toolbar {
    margin-block: 0;
    min-width: 0;
    max-width: 100%;
}

[data-aksa-layout="admin"] .rz-group-header:has(.rz-column-picker) {
    min-height: 2rem;
    padding: .15rem .5rem;
}

[data-aksa-layout="admin"] .rz-column-picker > .rz-dropdown {
    height: 1.75rem !important;
    min-height: 1.75rem !important;
    width: 1.9rem !important;
    min-width: 1.9rem !important;
}

[data-aksa-layout="admin"] .pm-admin-section-header {
    padding-block: .45rem;
    gap: .5rem;
}

[data-aksa-layout="admin"] .sq-page-header {
    margin-block-end: .65rem !important;
}

[data-aksa-layout="admin"] .sq-page-header > .card-body {
    padding: .65rem .75rem !important;
}

[data-aksa-layout="admin"] .sq-page-header__icon {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: .5rem;
}

[data-aksa-layout="admin"] .aksa-localization-audit > .card-header,
[data-aksa-layout="admin"] .aksa-localization-page > .card-header {
    justify-content: space-between;
}

.aksa-localization-audit__language {
    width: 14rem;
    max-width: 100%;
    min-width: 0;
}

.aksa-localization-audit__language > .row {
    --bs-gutter-x: 0;
    margin: 0;
}

.aksa-localization-audit__language > .row > * {
    padding: 0;
}

.aksa-localization-audit__status {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .35rem .6rem;
    margin-block: .4rem;
    font-size: .8rem;
}

.aksa-localization-audit__status time {
    margin-inline-start: auto;
}

.aksa-localization-audit__metric {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .25rem .5rem;
    height: 100%;
    padding: .4rem .5rem;
    background: var(--aksa-surface-muted);
}

.aksa-localization-audit .rz-tabview {
    --rz-tabs-padding: .5rem 0 0;
}

.aksa-localization-audit .rz-tabview-nav {
    flex-wrap: nowrap;
    overflow-x: auto;
    max-width: 100%;
}

.aksa-localization-audit .rz-tabview-nav li {
    flex: 0 0 auto;
}

.aksa-localization-audit .rz-tabview-nav li a {
    white-space: nowrap;
}

.aksa-command-overflow {
    position: relative;
    flex: 0 0 auto;
}

.aksa-command-overflow > summary {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius-sm);
    list-style: none;
    cursor: pointer;
}

.aksa-command-overflow > summary::-webkit-details-marker { display: none; }

.aksa-command-overflow__menu {
    position: absolute;
    z-index: 50;
    inset-block-start: calc(100% + .25rem);
    inset-inline-end: 0;
    display: flex;
    flex-direction: column;
    gap: .35rem;
    width: max-content;
    max-width: min(24rem, calc(100vw - 2rem));
    padding: .5rem;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius);
    background: var(--aksa-surface);
    box-shadow: var(--aksa-shadow-md);
}

.aksa-command-overflow__menu .rz-button {
    justify-content: flex-start;
    max-width: 100%;
    white-space: normal;
    text-align: start;
}

@media (max-width: 767.98px) {
    [data-aksa-layout="admin"] .aksa-unified-list-toolbar__query-bar {
        flex-basis: 100%;
        max-width: 100%;
    }
    [data-aksa-layout="admin"] .aksa-unified-list-toolbar__search-zone {
        flex-basis: auto;
    }
    [data-aksa-layout="admin"] .aksa-unified-list-toolbar__actions {
        flex-wrap: wrap;
        overflow-x: visible;
    }
    [data-aksa-layout="admin"] .sales-invoice-list-view .aksa-unified-list-toolbar__actions {
        flex: 1 1 auto;
        width: auto;
    }
    [data-aksa-layout="admin"] .sales-invoice-list-view .aksa-unified-list-toolbar__quick-filters {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
    }
    [data-aksa-layout="admin"] .sales-invoice-list-view .aksa-unified-quick-filter {
        min-width: 0;
    }
    [data-aksa-layout="admin"] .sales-invoice-list-view .aksa-unified-quick-filter > label {
        min-width: 0;
        max-width: 55%;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    [data-aksa-layout="admin"] .sales-invoice-list-view .aksa-unified-quick-filter > select {
        flex: 1 1 auto;
        width: 0;
        min-width: 0;
    }
    [data-aksa-layout="admin"] .sales-invoice-list-view .aksa-unified-list-toolbar__active-filters {
        width: auto;
        min-width: 0;
    }
    .aksa-localization-audit__language { width: 11rem; }
    .aksa-localization-audit__status time { margin-inline-start: 0; }
}

@media (max-width: 479.98px) {
    [data-aksa-layout="admin"] .sales-invoice-list-view .aksa-unified-list-toolbar__quick-filters {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Admin surfaces with legacy fixed light colors. Document/print canvases keep their own palette. */
[data-bs-theme="dark"] [data-aksa-layout="admin"] {
    --delivery-ink: var(--aksa-text);
    --delivery-subtle: var(--aksa-text-muted);
    --delivery-border: var(--aksa-border);
    --delivery-panel: var(--aksa-surface);
    --delivery-panel-alt: var(--aksa-surface-muted);
    --delivery-accent-strong: #5eead4;
    --delivery-glow: linear-gradient(135deg, var(--aksa-surface), var(--aksa-surface-muted));
}

[data-bs-theme="dark"] [data-aksa-layout="admin"] :is(
    .delivery-side-nav-card, .delivery-summary-card, .delivery-kpi-card, .delivery-metric-card,
    .delivery-filter-card, .delivery-grid-card, .delivery-grid-wrap, .delivery-settings-card,
    .delivery-process-panel, .delivery-card, .delivery-form-card, .delivery-inline-check,
    .delivery-section-title, .delivery-card-header, .delivery-form-card .card-header,
    .delivery-grid-wrap .card-header, .delivery-side-nav-link:not(.is-active),
    .delivery-settings-sticky-actions,
    .acl-permission-sidebar, .acl-toolbar-card, .acl-group-card, .acl-search-box,
    .acl-search-result, .acl-node-row, .acl-check-toggle:not(.is-checked):not(.is-partial),
    .menu-stat-pill:not(.menu-stat-pill-primary), .menu-preview-card, .menu-preview-icon,
    .menu-editor-actions, .sq-metric-card, .sq-layout-shell .layout-stat,
    .pm-admin-filter-shell, .pm-comments-shell, .pm-comment-avatar,
    .purchase-matching-panel) {
    color: var(--aksa-text);
    background: var(--aksa-surface);
    border-color: var(--aksa-border);
}

[data-bs-theme="dark"] [data-aksa-layout="admin"] :is(
    .delivery-empty-state, .delivery-empty-note, .delivery-inline-chip,
    .acl-group-header, .menu-admin-header) {
    color: var(--aksa-text-muted);
    background: var(--aksa-surface-muted);
    border-color: var(--aksa-border);
}

[data-bs-theme="dark"] [data-aksa-layout="admin"] .purchase-matching-panel.is-warning {
    background: color-mix(in srgb, var(--bs-warning) 9%, var(--aksa-surface));
    border-color: color-mix(in srgb, var(--bs-warning) 40%, var(--aksa-border));
}

[data-bs-theme="dark"] [data-aksa-layout="admin"] :is(
    .delivery-filter-card, .delivery-process-panel, .delivery-settings-card, .delivery-form-card) :is(
    .rz-textbox, .rz-dropdown, .rz-datepicker input, .rz-numeric input, .btn-light) {
    color: var(--aksa-text);
    background: var(--aksa-surface) !important;
    border-color: var(--aksa-border) !important;
}

[data-bs-theme="dark"] [data-aksa-layout="admin"] :is(
    .delivery-grid-card, .delivery-grid-wrap) :is(th, .rz-datatable-thead th) {
    color: var(--aksa-text-muted);
    background: var(--aksa-surface-muted);
    border-color: var(--aksa-border);
}

[data-bs-theme="dark"] [data-aksa-layout="admin"] :is(
    .delivery-grid-card .rz-cell-data, .delivery-grid-wrap .rz-cell-data,
    .delivery-grid-card td, .delivery-grid-wrap td, .delivery-side-nav-title,
    .delivery-filter-card label, .delivery-process-panel label,
    .delivery-settings-card label, .delivery-form-card label, .delivery-inline-check span) {
    color: var(--aksa-text);
}

[data-aksa-layout="admin"] :is(.delivery-shell, .delivery-admin-shell,
    .delivery-shell-content, .delivery-content-stack, .delivery-split-grid) {
    gap: .75rem;
}

[data-aksa-layout="admin"] .delivery-side-nav-card {
    gap: .65rem;
    padding: .75rem;
}

[data-aksa-layout="admin"] .delivery-side-nav-link {
    padding: .6rem .7rem;
}

[data-aksa-layout="admin"] :is(.delivery-shell, .delivery-admin-shell) {
    grid-template-columns: minmax(0, 1fr);
}

[data-aksa-layout="admin"] .delivery-side-nav-card {
    position: static;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    padding: .45rem .6rem;
    border-radius: var(--aksa-radius);
    box-shadow: var(--aksa-shadow-sm);
}

[data-aksa-layout="admin"] .delivery-side-nav-meta {
    min-width: 0;
    max-width: 100%;
    padding: 0;
    border: 0;
}

[data-aksa-layout="admin"] .delivery-side-nav-title {
    font-size: .85rem;
    overflow-wrap: anywhere;
}

[data-aksa-layout="admin"] .delivery-side-nav-links {
    display: flex;
    flex-wrap: wrap;
    gap: .3rem;
    min-width: 0;
}

[data-aksa-layout="admin"] .delivery-side-nav-link {
    padding: .4rem .6rem;
    font-size: .85rem;
    border-radius: var(--aksa-radius-sm);
    box-shadow: none;
    transform: none;
}

[data-aksa-layout="admin"] .delivery-side-nav-card .delivery-side-nav-link.is-active {
    color: var(--aksa-primary);
    background: color-mix(in srgb, var(--aksa-primary) 12%, var(--aksa-surface));
    border-color: color-mix(in srgb, var(--aksa-primary) 45%, var(--aksa-border));
}

[data-aksa-layout="admin"] .aksa-maintenance-content {
    padding-block-start: .65rem;
}

[data-aksa-layout="admin"] .aksa-maintenance-nav {
    margin-block-end: .65rem;
}

[data-aksa-layout="admin"] .aksa-unified-list-toolbar .aksa-maintenance-nav {
    margin: 0;
}

[data-aksa-layout="admin"] .aksa-maintenance-sections {
    display: grid;
    gap: .65rem;
}

[data-aksa-layout="admin"] .aksa-maintenance-sections > .card > .card-header {
    min-height: 3rem;
    padding: .4rem .65rem;
    gap: .5rem;
    flex-wrap: wrap;
}

[data-aksa-layout="admin"] .aksa-maintenance-sections > .card > .card-header .card-title {
    margin: 0;
}

[data-aksa-layout="admin"] .aksa-maintenance-sections > .card > .card-body {
    padding: .5rem .65rem;
}

[data-aksa-layout="admin"] .aksa-maintenance-disclosure > summary {
    cursor: pointer;
    font-weight: 600;
    padding-block: .4rem;
}

[data-aksa-layout="admin"] .aksa-maintenance-disclosure[open] > summary {
    margin-block-end: .5rem;
}

[data-aksa-layout="admin"] .shared-google-facts {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
}

[data-aksa-layout="admin"] .shared-google-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
}

[data-aksa-layout="admin"] .aksa-unified-list-toolbar__actions:has(.aksa-command-overflow) {
    overflow: visible;
}

[data-aksa-layout="admin"] .aksa-pos-context {
    max-width: 100%;
    min-width: 0;
}

[data-aksa-layout="admin"] .aksa-pos-context .form-select {
    max-width: 100%;
}

[data-aksa-layout="admin"] .card-title > .flex-column:has(> .aksa-help-tip) {
    flex-direction: row !important;
    align-items: center;
    flex-wrap: wrap;
    gap: .4rem;
}

:root {
    --aksa-primary: #1d4ed8;
    --aksa-primary-hover: #1e40af;
    --aksa-primary-soft: #e8f0ff;
    --aksa-page-bg: #f5f7fb;
    --aksa-surface: #ffffff;
    --aksa-surface-muted: #f8fafc;
    --aksa-border: #e4e7ec;
    --aksa-border-strong: #d0d5dd;
    --aksa-text: #111827;
    --aksa-text-muted: #667085;
    --aksa-shadow-sm: 0 1px 2px rgba(16, 24, 40, .05), 0 1px 3px rgba(16, 24, 40, .04);
    --aksa-shadow-md: 0 6px 16px rgba(16, 24, 40, .06), 0 14px 32px rgba(15, 23, 42, .08);
    --aksa-shadow-lg: 0 12px 32px rgba(16, 24, 40, .10), 0 24px 56px rgba(15, 23, 42, .10);
    --aksa-ring: 0 0 0 3px color-mix(in srgb, var(--aksa-primary) 20%, transparent);
    --aksa-on-primary: #ffffff;
    --aksa-radius-sm: .475rem;
    --aksa-radius: .75rem;
    --aksa-radius-lg: 1rem;
    --aksa-control-height: 2.45rem;
    --aksa-grid-row-height: 2.75rem;
    --aksa-page-gap: 1rem;
    --aksa-workspace-max-width: 1720px;
    --aksa-workspace-gutter: clamp(.75rem, 1.15vw, 1.25rem);
    --aksa-workspace-gutter-sm: .75rem;
}


[data-bs-theme="dark"] {
    --aksa-page-bg: #101418;
    --aksa-surface: #171c22;
    --aksa-surface-muted: #1f252d;
    --aksa-border: #2a313b;
    --aksa-border-strong: #3a4452;
    --aksa-text: #f5f7fb;
    --aksa-text-muted: #a4adba;
    --aksa-primary-soft: rgba(59, 130, 246, .18);
    --aksa-shadow-sm: 0 1px 2px rgba(0, 0, 0, .45);
    --aksa-shadow-md: 0 8px 24px rgba(0, 0, 0, .5);
    --aksa-shadow-lg: 0 16px 40px rgba(0, 0, 0, .55);
    --aksa-ring: 0 0 0 3px color-mix(in srgb, var(--aksa-primary) 38%, transparent);
}

html,
body {
    background: var(--aksa-page-bg);
}

body,
.app-default {
    color: var(--aksa-text);
}

[data-aksa-layout="admin"] .app-main,
[data-aksa-layout="admin"] .app-content,
[data-aksa-layout="admin"] #kt_app_content,
[data-aksa-layout="admin"] #kt_app_content_container {
    color: var(--aksa-text);
}

[data-aksa-layout="admin"] .app-main,
[data-aksa-layout="admin"] .app-content,
[data-aksa-layout="admin"] #kt_app_content {
    background: var(--aksa-page-bg);
}

/* Central ERP workspace frame.
   Keep every routed screen on the same visual rail, while preserving Metronic header/footer containers. */
[data-aksa-layout="admin"] #kt_app_content {
    padding-block: var(--aksa-workspace-gutter);
}

[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container {
    width: 100%;
    max-width: var(--aksa-workspace-max-width);
    margin-inline: auto;
    padding-inline: var(--aksa-workspace-gutter) !important;
    padding-bottom: 1.5rem;
}

[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container > * {
    min-width: 0;
}

[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .container,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .container-sm,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .container-md,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .container-lg,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .container-xl,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .container-xxl,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .container-fluid {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    padding-inline: 0;
}

[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .row {
    --bs-gutter-x: 1rem;
}

[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .aksa-page,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .erp-page,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .document-page,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .process-page,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .list-page,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .aksa-settings-page,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .sales-invoice-list-view,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .sales-order-list-view,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .sales-return-list-view,
[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container .purchase-list-shell {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
}

@media (max-width: 991.98px) {
    [data-aksa-layout="admin"] #kt_app_content {
        padding-block: var(--aksa-workspace-gutter-sm);
    }

    [data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container {
        padding-inline: var(--aksa-workspace-gutter-sm) !important;
    }
}

.card,
.card-flush,
.rz-card,
.aksa-card,
.aksa-page-card,
.kt-portlet {
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius-lg);
    box-shadow: var(--aksa-shadow-sm);
    background: var(--aksa-surface);
}

.card .card-header,
.rz-card .rz-card-header,
.aksa-page-header,
.section-header,
.kt_js_header {
    border-bottom: 1px solid var(--aksa-border);
    background: linear-gradient(180deg, var(--aksa-surface), var(--aksa-surface-muted));
}

.card .card-title,
.aksa-page-title,
.section-header h1,
.section-header h2,
.section-header h3 {
    color: var(--aksa-text);
    letter-spacing: -.01em;
}

.text-muted,
.card .card-subtitle,
.aksa-muted,
.aksa-page-subtitle,
.rz-column-title,
.rz-grid-filter-label {
    color: var(--aksa-text-muted) !important;
}

.btn,
.rz-button,
.form-control,
.form-select,
.rz-inputtext,
.rz-dropdown,
.rz-numeric,
.rz-datepicker,
.rz-multiselect,
.rz-textarea {
    border-radius: var(--aksa-radius-sm);
}

.form-control,
.form-select,
.rz-inputtext,
.rz-dropdown,
.rz-numeric,
.rz-datepicker,
.rz-multiselect,
.rz-textarea,
.rz-spinner input,
.rz-dropdown-label {
    min-height: var(--aksa-control-height);
}

.form-control,
.form-select,
.rz-inputtext,
.rz-dropdown,
.rz-numeric,
.rz-datepicker,
.rz-multiselect,
.rz-textarea {
    border-color: var(--aksa-border-strong);
    background-color: var(--aksa-surface);
    color: var(--aksa-text);
    box-shadow: none;
}

.form-control:focus,
.form-select:focus,
.rz-inputtext:focus,
.rz-dropdown:focus-within,
.rz-numeric:focus-within,
.rz-datepicker:focus-within,
.rz-multiselect:focus-within,
.rz-textarea:focus {
    border-color: var(--aksa-primary);
    box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--aksa-primary) 14%, transparent);
}

.btn-primary,
.rz-button.rz-primary,
.rz-button.rz-button-md.rz-primary {
    border-color: var(--aksa-primary);
    background-color: var(--aksa-primary);
}

.btn-primary:hover,
.rz-button.rz-primary:hover {
    border-color: var(--aksa-primary-hover);
    background-color: var(--aksa-primary-hover);
}

.rz-datatable,
.rz-grid,
.aksa-grid-shell,
.aksa-data-grid-shell {
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius);
    overflow: hidden;
    background: var(--aksa-surface);
}

.rz-datatable-thead th,
.rz-grid-table thead th,
.rz-datatable-table thead th {
    background: var(--aksa-surface-muted);
    color: var(--aksa-text-muted);
    border-bottom: 1px solid var(--aksa-border);
    font-weight: 700;
}

.rz-datatable-data td,
.rz-grid-table td,
.rz-datatable-table td {
    min-height: var(--aksa-grid-row-height);
    border-bottom-color: var(--aksa-border);
    vertical-align: middle;
}

.rz-datatable-data tr:hover td,
.rz-grid-table tbody tr:hover td,
.rz-datatable-table tbody tr:hover td {
    background: var(--aksa-primary-soft);
}

.rz-paginator,
.rz-pager,
.aksa-grid-footer {
    border-top: 1px solid var(--aksa-border);
    background: var(--aksa-surface-muted);
}

.rz-tabview,
.rz-tabview-panels,
.rz-dialog,
.rz-popup,
.rz-dropdown-panel,
.rz-multiselect-panel {
    border-radius: var(--aksa-radius);
}

.rz-dialog,
.rz-popup,
.rz-dropdown-panel,
.rz-multiselect-panel,
.menu-sub-dropdown {
    border: 1px solid var(--aksa-border);
    box-shadow: var(--aksa-shadow-md);
    background: var(--aksa-surface);
}

.menu .menu-link {
    border-radius: var(--aksa-radius-sm);
}

.menu .menu-link:hover,
.menu .menu-link.active,
.menu .menu-item.hover > .menu-link {
    background-color: var(--aksa-primary-soft);
    color: var(--aksa-primary);
}

.badge,
.status-badge,
.aksa-status-badge,
.rz-badge {
    border-radius: 999px;
    font-weight: 700;
    letter-spacing: .01em;
}

.aksa-page,
.erp-page,
.document-page,
.process-page,
.list-page {
    display: flex;
    flex-direction: column;
    gap: var(--aksa-page-gap);
}

.aksa-page-toolbar,
.erp-page-toolbar,
.document-toolbar,
.sales-list-controlbar,
.purchase-list-controlbar,
.stock-list-controlbar {
    position: sticky;
    top: var(--aksa-sticky-header-offset, 0px);
    z-index: 9;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius-lg);
    background: color-mix(in srgb, var(--aksa-surface) 92%, transparent);
    box-shadow: var(--aksa-shadow-sm);
    backdrop-filter: blur(8px);
}

.aksa-filter-panel,
.erp-filter-panel,
.document-filter-panel,
.sales-filter-panel,
.purchase-filter-panel,
.stock-filter-panel {
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius);
    background: var(--aksa-surface);
}

.aksa-document-sheet,
.erp-document-sheet,
.sales-sheet,
.purchase-document-sheet,
.stock-document-sheet {
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius-lg);
    background: var(--aksa-surface);
    box-shadow: var(--aksa-shadow-sm);
}

.aksa-summary-panel,
.erp-summary-panel,
.document-summary,
.sales-summary,
.purchase-summary,
.stock-summary {
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius);
    background: var(--aksa-surface-muted);
}

@media (max-width: 991.98px) {
    .aksa-page-toolbar,
    .erp-page-toolbar,
    .document-toolbar,
    .sales-list-controlbar,
    .purchase-list-controlbar,
    .stock-list-controlbar {
        position: static;
        border-radius: var(--aksa-radius);
    }
}


/* Settings pages: compact, consistent admin forms without page-specific inline spacing. */
.aksa-settings-page {
    --aksa-settings-row-gap: .625rem;
}

.aksa-settings-page .card-header,
.aksa-settings-header,
.cs-header {
    min-height: 4rem;
    gap: .75rem;
}

.aksa-settings-page .card-body,
.aksa-settings-body,
.cs-body {
    padding: 1rem 1.25rem;
}

.aksa-settings-page .rz-tabview-panels,
.aksa-settings-page .rz-tabview-panel {
    background: transparent;
}

.aksa-settings-page .rz-fieldset,
.aksa-settings-page .rz-card,
.aksa-settings-card {
    width: 100%;
    border-color: var(--aksa-border);
    border-radius: var(--aksa-radius);
    background: var(--aksa-surface);
    box-shadow: none;
}

.aksa-settings-page .aksa-setting-row {
    margin-inline: 0;
}

.aksa-settings-page .row > .col-3 {
    color: var(--aksa-text-muted);
    font-weight: 600;
}

.aksa-settings-page .row > .col-9,
.aksa-settings-page .adminData.wide {
    min-width: 0;
}

.aksa-settings-page .admin-config-group,
.aksa-settings-page .admin-config-group .title,
.aksa-settings-page .admin-config-group .card-title {
    margin: 0;
}

.aksa-settings-page .admin-config-group .title,
.aksa-settings-page .admin-config-group .card-title {
    padding: .45rem .75rem;
    border-radius: var(--aksa-radius-sm);
    background: var(--aksa-surface-muted);
    color: var(--aksa-text);
    font-weight: 700;
}

.aksa-settings-page .rz-form-field,
.aksa-settings-page .rz-form-field-content,
.aksa-settings-page .rz-dropdown,
.aksa-settings-page .rz-numeric,
.aksa-settings-page .rz-datepicker,
.aksa-settings-page .rz-inputtext,
.aksa-settings-page .rz-textarea,
.aksa-settings-page .rz-spinner,
.aksa-settings-page .rz-multiselect {
    width: 100%;
}

@media (max-width: 991.98px) {
    .aksa-settings-page .row > .col-3,
    .aksa-settings-page .row > .col-9 {
        width: 100%;
    }
}

/* Sales/Purchases routed list pages: centralize duplicated list CSS and keep page CSS isolation light. */
.sales-invoice-list-view,
.sales-order-list-view,
.sales-return-list-view,
.purchase-list-shell {
    min-width: 0;
}

.sales-invoice-list-view,
.sales-order-list-view,
.sales-return-list-view {
    display: flex;
    flex-direction: column;
    gap: .75rem;
}

.sales-list-controlbar,
.sales-order-list-controlbar,
.sales-return-list-controlbar,
.purchase-list-control {
    position: sticky;
    top: var(--aksa-sticky-header-offset, 0px);
    z-index: 20;
    display: grid;
    grid-template-columns: minmax(13rem, .85fr) minmax(18rem, 30rem) minmax(18rem, auto);
    grid-template-areas: "title search actions";
    align-items: center;
    gap: .625rem;
    min-height: 3.45rem;
    padding: .625rem .75rem;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius);
    background: var(--aksa-surface);
    box-shadow: var(--aksa-shadow-sm);
}

.purchase-list-control {
    border-radius: var(--aksa-radius) var(--aksa-radius) 0 0;
    border-inline: 0;
    border-top: 0;
}

.sales-list-title-block,
.sales-order-list-title-block,
.sales-return-list-title-block,
.purchase-list-title {
    grid-area: title;
    min-width: 0;
}

.sales-list-search,
.sales-order-list-search,
.sales-return-list-search,
.purchase-list-search {
    grid-area: search;
    position: relative;
    min-width: 0;
    width: 100%;
}

.purchase-list-search--scoped {
    display: grid;
    grid-template-columns: minmax(8.5rem, 10.5rem) minmax(12rem, 1fr);
    align-items: center;
    gap: .375rem;
}

.purchase-list-search-input {
    position: relative;
    min-width: 0;
}

.purchase-list-search-scope,
.purchase-list-search-scope.rz-dropdown {
    width: 100% !important;
    min-height: var(--aksa-control-height);
}


.sales-list-actions,
.sales-order-list-actions,
.sales-return-list-actions,
.purchase-list-actions {
    grid-area: actions;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: .375rem;
    min-width: 0;
    max-width: 100%;
    flex-wrap: wrap;
}

.sales-list-app-label,
.sales-order-list-app-label,
.sales-return-list-app-label,
.purchase-list-title-text span,
.purchase-list-meta {
    color: var(--aksa-text-muted);
    font-size: .72rem;
    font-weight: 700;
    line-height: 1.2;
}

.sales-list-title-row,
.sales-order-list-title-row,
.sales-return-list-title-row,
.purchase-list-title {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}

.sales-list-title-row h1,
.sales-order-list-title-row h1,
.sales-return-list-title-row h1,
.purchase-list-title-text h3 {
    margin: 0;
    color: var(--aksa-text);
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1.15;
    white-space: nowrap;
}

.sales-list-counter,
.sales-order-list-counter,
.sales-return-list-counter,
.sales-list-facet,
.sales-order-list-facet,
.sales-return-list-facet,
.sales-status-chip,
.sales-payment-chip,
.sales-order-status,
.sales-return-status,
.purchase-list-meta,
.purchase-list-grid .badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    min-height: 1.45rem;
    padding: .12rem .5rem;
    border: 1px solid var(--aksa-border);
    border-radius: 999px;
    background: var(--aksa-surface-muted);
    color: var(--aksa-text);
    font-size: .72rem;
    font-weight: 750;
    white-space: nowrap;
}

.sales-list-counter,
.sales-order-list-counter,
.sales-return-list-counter {
    color: var(--aksa-primary);
    background: var(--aksa-primary-soft);
}

.sales-list-search .form-control,
.sales-order-list-search .rz-inputtext,
.sales-return-list-search .rz-inputtext,
.purchase-list-search .rz-textbox,
.purchase-list-search .form-control {
    width: 100%;
    min-height: var(--aksa-control-height);
    border-radius: var(--aksa-radius-sm);
    font-size: .825rem;
}

.sales-list-search .form-control {
    padding-inline-end: 2rem;
}

.purchase-list-search > i {
    position: absolute;
    inset-inline-start: .7rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--aksa-text-muted);
    pointer-events: none;
}

.purchase-list-search .rz-textbox,
.purchase-list-search .form-control {
    padding-inline-start: 2.1rem;
}

.sales-list-search__clear {
    position: absolute;
    inset-inline-end: .3rem;
    top: 50%;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.55rem;
    height: 1.55rem;
    border: 0;
    border-radius: var(--aksa-radius-sm);
    background: transparent;
    color: var(--aksa-text-muted);
    line-height: 1;
}

.sales-list-search__clear:hover:not(:disabled) {
    background: var(--aksa-surface-muted);
    color: var(--aksa-text);
}

.sales-list-primary-action,
.sales-list-secondary-action,
.sales-order-list-primary-action,
.sales-order-list-secondary-action,
.sales-return-list-primary-action,
.sales-return-list-secondary-action,
.sales-order-icon-action,
.sales-return-icon-action,
.purchase-row-actions .rz-button,
.purchase-row-actions .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.15rem;
    border-radius: var(--aksa-radius-sm);
    font-weight: 750;
    white-space: nowrap;
}

.sales-list-primary-action,
.sales-order-list-primary-action,
.sales-return-list-primary-action {
    gap: .35rem;
}

.purchase-list-actions .btn,
.purchase-list-actions .rz-button,
.purchase-list-actions .rz-dropdown {
    min-height: var(--aksa-control-height);
}

.purchase-list-actions .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    border-radius: var(--aksa-radius-sm);
    font-weight: 750;
    white-space: nowrap;
}


.sales-list-sheet,
.sales-order-list-sheet,
.sales-return-list-sheet,
.purchase-list-shell,
.purchase-list-grid {
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius);
    background: var(--aksa-surface);
    box-shadow: var(--aksa-shadow-sm);
    overflow: hidden;
}

.sales-list-sheet,
.sales-order-list-sheet,
.sales-return-list-sheet {
    min-width: 0;
}

.purchase-list-shell {
    display: flex;
    flex-direction: column;
}

.purchase-list-grid {
    border: 0;
    border-radius: 0 0 var(--aksa-radius) var(--aksa-radius);
    box-shadow: none;
    min-width: 0;
}

.purchase-list-filters,
.sales-list-filter-sheet {
    padding: .75rem;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius);
    background: var(--aksa-surface);
    box-shadow: var(--aksa-shadow-sm);
}

.purchase-list-filters {
    border-inline: 0;
    border-radius: 0;
    box-shadow: none;
}

.sales-list-filter-grid,
.purchase-list-filter-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(8.5rem, 1fr));
    gap: .625rem;
}

.sales-list-field,
.purchase-list-field,
.purchase-list-filters .row > [class*="col-"] {
    min-width: 0;
}

.sales-list-field--party,
.purchase-list-field--wide {
    grid-column: span 2;
}

.sales-list-field--type,
.purchase-list-field--long {
    grid-column: span 2;
}

.sales-list-field .form-label,
.purchase-list-field .form-label,
.purchase-list-filters .form-label {
    margin-bottom: .25rem;
    color: var(--aksa-text-muted);
    font-size: .72rem;
    font-weight: 750;
}

.sales-list-field .form-control,
.sales-list-field .form-select,
.purchase-list-field .form-control,
.purchase-list-field .form-select,
.purchase-list-filters .form-control,
.purchase-list-filters .form-select,
.purchase-list-filters .rz-inputtext,
.purchase-list-filters .rz-numeric,
.purchase-list-filters .rz-datepicker {
    min-height: 2.1rem;
    font-size: .8rem;
    border-radius: var(--aksa-radius-sm);
}

.sales-list-filter-actions,
.purchase-list-filter-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .45rem;
    margin-top: .75rem;
}

.sales-list-facets,
.sales-order-list-facets,
.sales-return-list-facets {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: .375rem;
    flex-wrap: wrap;
    min-width: 0;
}

.sales-list-grid,
.sales-order-list-grid,
.sales-return-list-grid,
.purchase-list-grid .rz-data-grid,
.purchase-list-grid .rz-datatable {
    width: 100%;
    border: 0;
    background: transparent;
    font-size: .825rem;
}

.sales-list-grid .rz-grid-table thead th,
.sales-order-list-grid .rz-grid-table thead th,
.sales-return-list-grid .rz-grid-table thead th,
.purchase-list-grid .rz-grid-table thead th {
    height: 2.5rem;
    background: var(--aksa-surface-muted);
    color: var(--aksa-text-muted);
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
    vertical-align: middle;
}

.sales-list-grid .rz-grid-table tbody td,
.sales-order-list-grid .rz-grid-table tbody td,
.sales-return-list-grid .rz-grid-table tbody td,
.purchase-list-grid .rz-grid-table tbody td {
    height: var(--aksa-grid-row-height);
    padding-block: .35rem;
    vertical-align: middle;
}

.sales-list-grid .rz-grid-table tbody tr:hover,
.sales-order-list-grid .rz-grid-table tbody tr:hover,
.sales-return-list-grid .rz-grid-table tbody tr:hover,
.purchase-list-grid .rz-grid-table tbody tr:hover {
    background: var(--aksa-surface-muted);
}

.sales-document-link,
.sales-order-document-link,
.sales-return-document-link {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .1rem;
    max-width: 100%;
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--aksa-primary);
    text-align: start;
    font-weight: 800;
}

.sales-document-number,
.sales-order-document-number,
.sales-return-document-number,
.sales-order-main-text,
.sales-return-main-text {
    color: var(--aksa-text);
    font-weight: 800;
}

.sales-document-subnumber,
.sales-order-document-subline,
.sales-return-document-subline,
.sales-muted-cell,
.sales-party-cell span,
.sales-muted-money {
    color: var(--aksa-text-muted);
    font-size: .74rem;
    font-weight: 600;
}

.sales-party-cell {
    display: flex;
    flex-direction: column;
    gap: .1rem;
    min-width: 0;
}

.sales-money-cell,
.sales-muted-money,
.sales-order-amount,
.sales-return-amount {
    font-variant-numeric: tabular-nums;
    font-weight: 800;
    white-space: nowrap;
}

.sales-invoice-list-view .sales-money-cell,
.sales-invoice-list-view .sales-muted-money {
    display: block;
    direction: ltr;
    unicode-bidi: isolate;
    text-align: right;
    font-size: 1rem;
    font-weight: 600;
}

.sales-invoice-list-view .sales-money-cell--total {
    font-weight: 800;
}

.sales-invoice-list-view .sales-status-stack {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .15rem;
    min-width: 0;
    max-width: 100%;
}

.sales-invoice-list-view .sales-status-stack .sales-status-chip {
    display: block;
    max-width: 100%;
    min-height: 20px;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
}

.sales-status-chip--posted,
.sales-order-status--converted {
    color: var(--bs-success);
    background: rgba(var(--bs-success-rgb), .1);
    border-color: rgba(var(--bs-success-rgb), .25);
}

.sales-status-chip--danger,
.sales-return-icon-action--danger,
.sales-order-status--closed {
    color: var(--bs-danger);
    background: rgba(var(--bs-danger-rgb), .1);
    border-color: rgba(var(--bs-danger-rgb), .25);
}

.sales-status-chip--draft,
.sales-order-status--open,
.sales-return-status,
.sales-payment-chip {
    color: var(--bs-warning);
    background: rgba(var(--bs-warning-rgb), .12);
    border-color: rgba(var(--bs-warning-rgb), .25);
}

.sales-row-actions,
.sales-order-row-actions,
.sales-return-row-actions,
.purchase-row-actions {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    white-space: nowrap;
}

.sales-row-action-btn,
.sales-order-icon-action,
.sales-return-icon-action,
.purchase-row-actions .rz-button,
.purchase-row-actions .btn {
    width: 2.05rem;
    height: 2.05rem;
    padding: 0;
}

@media (max-width: 1199.98px) {
    .sales-list-controlbar,
    .sales-order-list-controlbar,
    .sales-return-list-controlbar,
    .purchase-list-control {
        grid-template-columns: 1fr;
        grid-template-areas:
            "title"
            "search"
            "actions";
    }

    .sales-list-actions,
    .sales-order-list-actions,
    .sales-return-list-actions,
    .purchase-list-actions {
        justify-content: flex-start;
        flex-wrap: wrap;
    }

    .sales-list-filter-grid,
    .purchase-list-filter-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sales-list-field--party,
    .sales-list-field--type,
    .purchase-list-field--wide,
    .purchase-list-field--long {
        grid-column: span 1;
    }
}

@media (max-width: 767.98px) {
    .sales-list-filter-grid,
    .purchase-list-filter-grid {
        grid-template-columns: 1fr;
    }

    .purchase-list-search--scoped {
        grid-template-columns: 1fr;
    }
}

/* AksaErp v8 - grid row actions must be visible, compact and fixed like SaleMasterList. */
.sales-row-actions,
.sales-order-row-actions,
.sales-return-row-actions,
.purchase-row-actions {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    opacity: 1 !important;
    visibility: visible !important;
    white-space: nowrap;
}

.sales-row-actions > *,
.sales-order-row-actions > *,
.sales-return-row-actions > *,
.purchase-row-actions > * {
    opacity: 1 !important;
    visibility: visible !important;
}

.sales-row-action-btn,
.sales-order-icon-action,
.sales-return-icon-action,
.purchase-row-action-btn,
.purchase-row-actions .purchase-row-action-btn,
.purchase-row-actions .rz-button.purchase-row-action-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 2.05rem;
    min-width: 2.05rem;
    height: 2.05rem;
    min-height: 2.05rem;
    padding: 0 !important;
    border: 0;
    border-radius: var(--aksa-radius-sm);
    opacity: 1 !important;
    visibility: visible !important;
    box-shadow: none;
}

.sales-order-icon-action,
.sales-return-icon-action,
.purchase-row-action-btn--edit,
.purchase-row-actions .purchase-row-action-btn--edit {
    color: var(--aksa-primary) !important;
    background: color-mix(in srgb, var(--aksa-primary) 11%, transparent) !important;
}

.sales-order-icon-action:hover,
.sales-return-icon-action:hover,
.purchase-row-action-btn--edit:hover,
.purchase-row-actions .purchase-row-action-btn--edit:hover {
    color: #fff !important;
    background: var(--aksa-primary) !important;
}

.sales-return-icon-action--danger,
.purchase-row-action-btn--delete,
.purchase-row-actions .purchase-row-action-btn--delete {
    color: var(--bs-danger) !important;
    background: rgba(var(--bs-danger-rgb), .1) !important;
}

.sales-return-icon-action--danger:hover:not(:disabled),
.purchase-row-action-btn--delete:hover:not(:disabled),
.purchase-row-actions .purchase-row-action-btn--delete:hover:not(:disabled) {
    color: #fff !important;
    background: var(--bs-danger) !important;
}

.sales-row-action-btn:disabled,
.sales-order-icon-action:disabled,
.sales-return-icon-action:disabled,
.purchase-row-action-btn:disabled,
.purchase-row-actions .purchase-row-action-btn:disabled,
.purchase-row-actions .rz-button.purchase-row-action-btn:disabled,
.purchase-row-actions .rz-button.purchase-row-action-btn.rz-state-disabled {
    opacity: .45 !important;
    cursor: not-allowed;
}

.purchase-row-actions .rz-button-box,
.purchase-row-actions .rz-button-icon {
    margin: 0 !important;
    line-height: 1;
}

.rz-grid-table td:has(.sales-row-actions),
.rz-grid-table td:has(.sales-order-row-actions),
.rz-grid-table td:has(.sales-return-row-actions),
.rz-grid-table td:has(.purchase-row-actions),
.rz-datatable-table td:has(.sales-row-actions),
.rz-datatable-table td:has(.sales-order-row-actions),
.rz-datatable-table td:has(.sales-return-row-actions),
.rz-datatable-table td:has(.purchase-row-actions) {
    overflow: visible;
}

/* AksaErp v9 - action column must stay in the visible edge of horizontally scrollable grids. */
.sales-list-grid .aksa-list-action-cell,
.sales-order-list-grid .aksa-list-action-cell,
.sales-return-list-grid .aksa-list-action-cell,
.purchase-list-grid .aksa-list-action-cell {
    background: var(--aksa-surface) !important;
    z-index: 8;
}

.sales-list-grid th.aksa-list-action-cell,
.sales-order-list-grid th.aksa-list-action-cell,
.sales-return-list-grid th.aksa-list-action-cell,
.purchase-list-grid th.aksa-list-action-cell {
    z-index: 9;
}

[dir="rtl"] .sales-list-grid .aksa-list-action-cell,
[dir="rtl"] .sales-order-list-grid .aksa-list-action-cell,
[dir="rtl"] .sales-return-list-grid .aksa-list-action-cell,
[dir="rtl"] .purchase-list-grid .aksa-list-action-cell {
    box-shadow: 1px 0 0 var(--aksa-border), 10px 0 18px rgba(15, 23, 42, .04);
}

[dir="ltr"] .sales-list-grid .aksa-list-action-cell,
[dir="ltr"] .sales-order-list-grid .aksa-list-action-cell,
[dir="ltr"] .sales-return-list-grid .aksa-list-action-cell,
[dir="ltr"] .purchase-list-grid .aksa-list-action-cell {
    box-shadow: -1px 0 0 var(--aksa-border), -10px 0 18px rgba(15, 23, 42, .04);
}

/* AksaErp v11 - Purchase invoice list fallback: keep row action column visible even when Radzen frozen column is neutralized by grid width/RTL scroll state. */
.purchase-list-grid .rz-grid-table th.aksa-list-action-cell,
.purchase-list-grid .rz-grid-table td.aksa-list-action-cell,
.purchase-list-grid .rz-datatable-table th.aksa-list-action-cell,
.purchase-list-grid .rz-datatable-table td.aksa-list-action-cell {
    position: sticky !important;
    left: 0 !important;
    right: auto !important;
    width: 92px !important;
    min-width: 92px !important;
    max-width: 92px !important;
    background: var(--aksa-surface) !important;
    z-index: 14 !important;
    box-shadow: 1px 0 0 var(--aksa-border), 10px 0 18px rgba(15, 23, 42, .05) !important;
}

.purchase-list-grid .rz-grid-table thead th.aksa-list-action-cell,
.purchase-list-grid .rz-datatable-table thead th.aksa-list-action-cell {
    background: var(--aksa-surface-muted) !important;
    z-index: 15 !important;
}

[dir="ltr"] .purchase-list-grid .rz-grid-table th.aksa-list-action-cell,
[dir="ltr"] .purchase-list-grid .rz-grid-table td.aksa-list-action-cell,
[dir="ltr"] .purchase-list-grid .rz-datatable-table th.aksa-list-action-cell,
[dir="ltr"] .purchase-list-grid .rz-datatable-table td.aksa-list-action-cell {
    left: auto !important;
    right: 0 !important;
    box-shadow: -1px 0 0 var(--aksa-border), -10px 0 18px rgba(15, 23, 42, .05) !important;
}

/* ===== v21: Radzen DataGrid page-size dropdown only =====
   Keep normal Radzen DropDown/DropDownList untouched.  The DataGrid
   pager page-size selector must not inherit full-row input behavior. */
.rz-paginator,
.rz-pager,
.rz-datatable .rz-paginator,
.rz-grid .rz-paginator {
    align-items: center;
    row-gap: .35rem;
}

.rz-paginator :where(.rz-dropdown, .rz-multiselect),
.rz-pager :where(.rz-dropdown, .rz-multiselect),
.rz-datatable .rz-paginator :where(.rz-dropdown, .rz-multiselect),
.rz-grid .rz-paginator :where(.rz-dropdown, .rz-multiselect),
.rz-datatable .rz-pager :where(.rz-dropdown, .rz-multiselect),
.rz-grid .rz-pager :where(.rz-dropdown, .rz-multiselect) {
    flex: 0 0 5.25rem !important;
    width: 5.25rem !important;
    min-width: 5.25rem !important;
    max-width: 5.25rem !important;
    align-self: center;
}

.rz-paginator :where(.rz-dropdown-label, .rz-multiselect-label),
.rz-pager :where(.rz-dropdown-label, .rz-multiselect-label),
.rz-datatable .rz-paginator :where(.rz-dropdown-label, .rz-multiselect-label),
.rz-grid .rz-paginator :where(.rz-dropdown-label, .rz-multiselect-label),
.rz-datatable .rz-pager :where(.rz-dropdown-label, .rz-multiselect-label),
.rz-grid .rz-pager :where(.rz-dropdown-label, .rz-multiselect-label) {
    min-height: 1.85rem;
    line-height: 1.85rem;
    padding-block: 0;
    font-size: .78rem;
    text-align: center;
}

.rz-paginator :where(.rz-dropdown-trigger, .rz-multiselect-trigger),
.rz-pager :where(.rz-dropdown-trigger, .rz-multiselect-trigger),
.rz-datatable .rz-paginator :where(.rz-dropdown-trigger, .rz-multiselect-trigger),
.rz-grid .rz-paginator :where(.rz-dropdown-trigger, .rz-multiselect-trigger),
.rz-datatable .rz-pager :where(.rz-dropdown-trigger, .rz-multiselect-trigger),
.rz-grid .rz-pager :where(.rz-dropdown-trigger, .rz-multiselect-trigger) {
    width: 1.55rem;
    min-width: 1.55rem;
}

.rz-paginator :where(.rz-dropdown[style], .rz-multiselect[style]),
.rz-pager :where(.rz-dropdown[style], .rz-multiselect[style]),
.rz-datatable .rz-paginator :where(.rz-dropdown[style], .rz-multiselect[style]),
.rz-grid .rz-paginator :where(.rz-dropdown[style], .rz-multiselect[style]),
.rz-datatable .rz-pager :where(.rz-dropdown[style], .rz-multiselect[style]),
.rz-grid .rz-pager :where(.rz-dropdown[style], .rz-multiselect[style]) {
    inline-size: 5.25rem !important;
}

/* ============================================================================
   v22 — global premium polish.
   Purely additive on top of the token system: font smoothing, a single shared
   focus ring, restrained motion, primary-action depth, themed scrollbars and
   reduced-motion support. No page structure is altered.
   ============================================================================ */

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

::selection {
    background: var(--aksa-primary-soft);
    color: var(--aksa-primary-hover);
}

/* one consistent focus ring for keyboard navigation */
.btn:focus-visible,
.rz-button:focus-visible,
.menu .menu-link:focus-visible,
a:focus-visible {
    outline: none;
    box-shadow: var(--aksa-ring);
}

/* align field focus to the shared ring token (overrides the earlier rule) */
.form-control:focus,
.form-select:focus,
.rz-inputtext:focus,
.rz-dropdown:focus-within,
.rz-numeric:focus-within,
.rz-datepicker:focus-within,
.rz-multiselect:focus-within,
.rz-textarea:focus {
    border-color: var(--aksa-primary);
    box-shadow: var(--aksa-ring);
}

/* restrained motion on interactive surfaces */
.btn,
.rz-button,
.form-control,
.form-select,
.rz-inputtext,
.rz-dropdown,
.rz-numeric,
.rz-datepicker,
.rz-multiselect,
.rz-textarea,
.menu .menu-link,
.card,
.rz-card {
    transition: background-color .15s ease, border-color .15s ease,
                color .15s ease, box-shadow .15s ease;
}

/* gentle depth + lift on the primary action */
.btn-primary,
.rz-button.rz-primary {
    box-shadow: 0 1px 2px color-mix(in srgb, var(--aksa-primary) 35%, transparent);
}

.btn-primary:hover,
.rz-button.rz-primary:hover {
    box-shadow: 0 2px 7px color-mix(in srgb, var(--aksa-primary) 32%, transparent);
}

/* smoother data-grid row feedback */
.rz-datatable-data tr,
.rz-grid-table tbody tr {
    transition: background-color .12s ease;
}

/* elevated popovers / dialogs use the deepest shadow */
.rz-dialog,
.rz-popup,
.rz-dropdown-panel,
.rz-multiselect-panel,
.menu-sub-dropdown {
    box-shadow: var(--aksa-shadow-lg);
}

/* themed, slim scrollbars */
* {
    scrollbar-width: thin;
    scrollbar-color: var(--aksa-border-strong) transparent;
}

*::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

*::-webkit-scrollbar-thumb {
    background: var(--aksa-border-strong);
    border: 2px solid transparent;
    background-clip: padding-box;
    border-radius: 999px;
}

*::-webkit-scrollbar-thumb:hover {
    background: var(--aksa-text-muted);
    background-clip: padding-box;
}

*::-webkit-scrollbar-track {
    background: transparent;
}

@media (prefers-reduced-motion: reduce) {
    * {
        transition: none !important;
        scroll-behavior: auto !important;
        animation-duration: .001ms !important;
    }
}

/* ============================================================================
   v23 — Document editor (shared across Sales + Purchases process pages).
   One source of truth for the editor look. Two layers:
     1) a Bootstrap->aksa colour bridge for pages still painted with --bs-*,
        so they follow the theme + dark mode (defined here once, not per page);
     2) the shared "document chrome" (sheet, number, totals hero, workflow,
        banner) keyed to the common class contract used by every editor
        (sales-* and purchase-*), so new pages inherit the look for free.
   Per-page scoped CSS only needs page-specific layout from here on.
   ============================================================================ */

/* 1 — colour bridge for --bs-* based editor pages (Purchases + wizard) */
.purchase-editor-header,
.purchase-editor-workspace,
.pdn-page {
    --bs-body-color: var(--aksa-text);
    --bs-heading-color: var(--aksa-text);
    --bs-card-bg: var(--aksa-surface);
    --bs-body-bg: var(--aksa-surface);
    --bs-border-color: var(--aksa-border);
    --bs-border-color-translucent: var(--aksa-border);
    --bs-primary: var(--aksa-primary);
    --bs-primary-rgb: 29, 78, 216;            /* rgb of --aksa-primary (#1d4ed8) */
    --bs-gray-100: var(--aksa-surface-muted);
    --bs-gray-200: var(--aksa-border);
    --bs-gray-300: var(--aksa-border-strong);
    --bs-gray-400: var(--aksa-border-strong);
    --bs-gray-500: var(--aksa-text-muted);
    --bs-gray-600: var(--aksa-text-muted);
    --bs-gray-700: var(--aksa-text);
    --bs-gray-800: var(--aksa-text);
    --bs-gray-900: var(--aksa-text);
}

/* 2 — shared document chrome (applies to any editor using the class contract) */
.aksa-doc-sheet,
.sales-sheet,
.purchase-sheet {
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius-lg);
    background: var(--aksa-surface);
    box-shadow: var(--aksa-shadow-sm);
}

.aksa-doc-type,
.sales-doc-type,
.purchase-doc-type {
    color: var(--aksa-primary);
    font-size: .82rem;
    font-weight: 700;
    line-height: 1.1;
}

.aksa-doc-number,
.sales-doc-number,
.purchase-doc-number {
    margin: 0;
    color: var(--aksa-text);
    font-size: clamp(1.6rem, 2.3vw, 2.5rem);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -.015em;
    font-variant-numeric: tabular-nums;
    overflow-wrap: anywhere;
}

/* grand total as the hero figure */
.aksa-summary-row-total,
.sales-summary-row-total,
.purchase-summary-row-total {
    border-top: 2px solid color-mix(in srgb, var(--aksa-primary) 35%, var(--aksa-border));
}

.aksa-summary-row-total strong,
.sales-summary-row-total strong,
.purchase-summary-row-total strong {
    color: var(--aksa-primary);
    font-size: 1.4rem;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}

/* workflow ribbon: active = primary, done = success tint */
.sales-workflow-step.is-active,
.purchase-workflow-step.is-active {
    background: var(--aksa-primary);
    color: var(--aksa-on-primary);
}

.sales-workflow-step.is-done,
.purchase-workflow-step.is-done {
    background: rgba(var(--bs-success-rgb), .14);
    color: var(--bs-success);
}

/* Optional document slots share the admin header's existing circuit. */
.aksa-header-document-title { display: flex; align-items: center; min-width: 0; margin-inline-end: auto; padding-inline: .75rem; }
.aksa-header-document-title:empty, .aksa-header-document-facts:empty { display: none; }
.aksa-header-document-tools { display: contents; }
.aksa-header-document-facts { display: flex; align-self: center; align-items: center; flex-wrap: wrap; gap: .25rem; max-width: 20rem; font-size: .75rem; color: var(--aksa-text-muted); }
#kt_app_header_wrapper:has(.sales-header-document-number) .aksa-header-page-context { flex: 0 1 auto; }
#kt_app_header_wrapper:has(.sales-header-document-number) .app-navbar { margin-inline-start: 0; }
.aksa-header-document-facts > span { overflow-wrap: anywhere; }
.sales-header-document-number { margin: 0; font-size: 1rem; font-weight: 750; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* Invoice-only layout: retain the shared field components and their bindings. */
.sales-invoice-workbench .sales-master-layout.sales-master-layout--compact {
    direction: inherit;
    grid-template-areas: none;
    grid-template-columns: minmax(0, 1.8fr) repeat(3, minmax(0, 1fr));
    gap: .65rem .85rem;
    align-items: start;
}
.sales-invoice-workbench .sales-master-layout--compact .sales-inline-field {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: .35rem;
    align-content: start;
}
.sales-invoice-workbench .sales-master-layout--compact .form-label { line-height: 1.3; margin: 0; }
.sales-invoice-workbench .sales-master-layout--compact .rz-form-field {
    margin: 0;
    width: 100%;
}
.sales-invoice-workbench .sales-master-layout--compact .sales-inline-field--phone { grid-column: 1; }
.sales-invoice-workbench .sales-master-layout--compact .sales-inline-field--address { grid-column: 2 / -1; }
.sales-invoice-workbench .sales-master-representative { grid-column: 1 / -1; min-width: 0; }
.sales-invoice-workbench .sales-master-representative:empty { display: none; }
.sales-invoice-workbench .sales-lines-section { margin-block-start: .65rem; padding-block-start: .35rem; }
.sales-invoice-workbench .warehouse-lines-panel__head { display: block; padding: .35rem .5rem; }
.sales-invoice-workbench .warehouse-lines-toolbar { display: flex; align-items: center; flex-wrap: wrap; width: 100%; gap: .4rem; }
.sales-invoice-workbench .warehouse-density-toggle { margin-inline-end: auto; }
.sales-invoice-workbench .warehouse-inline-total-value,
.sales-invoice-workbench .warehouse-grid-foot-total { color: var(--aksa-text) !important; }
.sales-invoice-workbench .warehouse-grid-foot-total--strong { color: var(--aksa-primary) !important; }
.sales-invoice-workbench .warehouse-lines-board-wrap tr.warehouse-line-card--active > td.rz-cell-data {
    box-shadow: none !important;
    background: color-mix(in srgb, var(--aksa-primary) 5%, var(--aksa-surface)) !important;
}
.sales-invoice-workbench .warehouse-lines-board-wrap tr.warehouse-line-card--active > td.rz-cell-data:first-child { border-inline-start: .18rem solid var(--aksa-primary) !important; }

@media (max-width: 1199.98px) {
    .sales-invoice-workbench .sales-master-layout.sales-master-layout--compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sales-invoice-workbench .sales-master-layout--compact .sales-inline-field--address { grid-column: 2; }
}
@media (max-width: 767.98px) {
    .aksa-header-document-title { padding-inline: .35rem; }
    .sales-header-document-number { font-size: .85rem; max-width: 12rem; }
    .aksa-header-document-tools { gap: .25rem; }
    .aksa-header-document-facts { max-width: 7rem; font-size: .65rem; gap: .1rem .2rem; }
    .sales-invoice-workbench .sales-controlpanel { gap: .35rem; }
    .sales-invoice-workbench .sales-controlpanel-actions { width: auto; flex: 1 1 auto; }
    .sales-invoice-workbench .sales-controlpanel-status { width: auto; margin-inline-start: auto; }
}
@media (max-width: 575.98px) {
    .sales-invoice-workbench .sales-master-layout.sales-master-layout--compact { grid-template-columns: minmax(0, 1fr); }
    .sales-invoice-workbench .sales-master-layout--compact .sales-inline-field--phone,
    .sales-invoice-workbench .sales-master-layout--compact .sales-inline-field--address { grid-column: 1; }
}

/* Compact sales invoice identity and optional audit history. */
.sales-invoice-workbench .sales-doc-heading {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .4rem .75rem;
    min-width: 0;
}
.sales-invoice-workbench .sales-doc-facts { flex-basis: 100%; }
.sales-invoice-workbench .sales-invoice-statuses {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}
.sales-invoice-workbench .sales-invoice-status {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    padding: .25rem .55rem;
    border-radius: .4rem;
    background: var(--aksa-surface-muted, var(--bs-gray-100));
    color: var(--aksa-text-muted, var(--bs-gray-600));
    font-size: .8rem;
    font-weight: 600;
}
.sales-invoice-workbench .sales-odoo-layout .sales-invoice-history {
    position: static;
    flex: 0 0 auto;
    width: 100%;
    max-height: none;
    border: 1px solid var(--aksa-border, var(--bs-border-color));
    border-radius: .5rem;
    overflow: hidden;
}
.sales-invoice-workbench .sales-invoice-history > summary {
    padding: .65rem .85rem;
    cursor: pointer;
    font-size: .85rem;
    font-weight: 600;
}
.sales-invoice-workbench .sales-invoice-history > summary .sales-chatter-count { margin-inline-start: .5rem; }
.sales-invoice-workbench .sales-invoice-history .sales-chatter-body { max-height: 24rem; }
.sales-invoice-workbench .sales-invoice-history .sales-chatter-entry-head {
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: .4rem .75rem;
}
.sales-invoice-workbench .sales-invoice-history .sales-chatter-entry-head > span { overflow-wrap: anywhere; }
.sales-invoice-workbench .sales-invoice-history .sales-chatter-empty { min-height: 5rem; padding: 1rem; }

/* document banners */
.sales-banner-warning,
.purchase-banner-warning {
    border: 1px solid rgba(var(--bs-warning-rgb), .35);
    background: rgba(var(--bs-warning-rgb), .12);
    color: var(--bs-warning-text-emphasis, var(--bs-warning));
}

.purchase-banner-info {
    border: 1px solid rgba(var(--bs-info-rgb), .35);
    background: rgba(var(--bs-info-rgb), .12);
    color: var(--bs-info-text-emphasis, var(--bs-info));
}

/* Shared operation-editor structure. Page CSS owns business-specific sections;
   this contract keeps the document chrome and responsive rhythm identical. */
.aksa-operation-editor,
.aksa-operation-workspace {
    min-width: 0;
    color: var(--aksa-text);
    font-variant-numeric: tabular-nums;
}

.aksa-operation-workspace {
    display: grid;
    gap: .75rem;
}

.aksa-operation-header,
.sales-document-header.aksa-operation-header,
.purchase-editor-header.aksa-operation-header {
    position: sticky;
    top: var(--aksa-sticky-header-offset, 0px);
    z-index: 12;
    min-width: 0;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius);
    background: var(--aksa-surface);
    box-shadow: var(--aksa-shadow-sm);
    padding: .45rem .65rem;
}

.aksa-operation-controlpanel {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: .45rem .65rem;
    min-width: 0;
}

.aksa-operation-actions,
.aksa-operation-status {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .35rem;
    min-width: 0;
}

.aksa-operation-status {
    justify-content: flex-end;
    margin-inline-start: auto;
}

.aksa-operation-header .rz-button,
.aksa-operation-header .btn {
    min-height: 1.8rem;
    padding-block: .25rem !important;
    padding-inline: .55rem !important;
    font-size: .75rem;
    font-weight: 700;
    line-height: 1.1;
}

.aksa-operation-sheet,
.sales-sheet.aksa-operation-sheet,
.purchase-sheet.aksa-operation-sheet {
    --aksa-operation-sheet-pad: clamp(.75rem, 1.25vw, 1.25rem);
    min-width: 0;
    padding: var(--aksa-operation-sheet-pad);
}

.aksa-operation-identity {
    min-width: 0;
    margin-block-end: .75rem;
    padding-block-end: .65rem;
    border-block-end: 1px solid var(--aksa-border);
}

@media (max-width: 991.98px) {
    .aksa-operation-controlpanel {
        align-items: stretch;
    }

    .aksa-operation-actions,
    .aksa-operation-status {
        width: 100%;
        justify-content: flex-start;
        margin-inline-start: 0;
    }
}

@media (max-width: 767.98px) {
    .aksa-operation-header,
    .sales-document-header.aksa-operation-header,
    .purchase-editor-header.aksa-operation-header {
        position: static;
        padding: .5rem .6rem;
    }

    .aksa-operation-sheet,
    .sales-sheet.aksa-operation-sheet,
    .purchase-sheet.aksa-operation-sheet {
        --aksa-operation-sheet-pad: .75rem;
    }

    .aksa-operation-identity {
        margin-block-end: .6rem;
        padding-block-end: .55rem;
    }
}

@media (max-width: 575.98px) {
    .aksa-operation-actions .rz-button,
    .aksa-operation-actions .btn {
        width: auto !important;
        flex: 0 1 auto;
    }
}

/* =====================================================================
   AKSA ERP — POS Terminal UI
   A cashier-first skin for the POS terminal components.

   Design intent
   - Tactile "register" feel: pressable controls, crisp active states.
   - Calm cool-slate surfaces so product imagery + the green CTA pop.
   - Deep teal is the ONE interaction accent. Green means "money confirmed".
   - Tabular numerals everywhere money appears (prices, totals, keypad).
   - Finger-first: 48px minimum touch targets, generous hit areas.
   - RTL-native via CSS logical properties.

   Layers on top of Bootstrap/Metronic + Radzen without fighting them.
   Scope: everything is namespaced under .pos-terminal.
   ===================================================================== */

.pos-terminal {
    /* ---- palette ---------------------------------------------------- */
    --pos-bg: #eef1f6;
    --pos-surface: #ffffff;
    --pos-surface-2: #f5f8fb;
    --pos-surface-3: #eef2f7;
    --pos-ink: #16202e;
    --pos-ink-soft: #3a4757;
    --pos-muted: #5c6b7a;
    --pos-faint: #8b97a5;
    --pos-line: #dde4ec;
    --pos-line-strong: #c7d1dd;
    --pos-brand: #0e7c86; /* teal — interaction, selection, focus */
    --pos-brand-strong: #0a5c64;
    --pos-brand-tint: #e2f1f2;
    --pos-brand-ring: rgba(14, 124, 134, .32);
    --pos-success: #1e8e5a; /* money confirmed / complete sale only */
    --pos-success-strong: #16744a;
    --pos-success-tint: #e5f3ea;
    --pos-danger: #d2483f;
    --pos-danger-tint: #fbe9e7;
    --pos-warn: #b8730f;
    --pos-warn-tint: #fbf0db;
    /* ---- shape & depth ---------------------------------------------- */
    --pos-radius: 14px;
    --pos-radius-sm: 10px;
    --pos-radius-lg: 18px;
    --pos-radius-pill: 999px;
    --pos-shadow-sm: 0 1px 2px rgba(16,32,46,.06), 0 1px 1px rgba(16,32,46,.04);
    --pos-shadow: 0 6px 18px -8px rgba(16,32,46,.20);
    --pos-shadow-lg: 0 18px 42px -16px rgba(16,32,46,.30);
    --pos-touch: 48px;
    --pos-gap: 12px;
    /* tune this if the page chrome above the panels changes height */
    --pos-panel-offset: 248px;
    --pos-ease: cubic-bezier(.2, .7, .3, 1);
    color: var(--pos-ink);
}

    /* Tabular figures wherever money or quantities are shown */
    .pos-terminal .pos-product-price,
    .pos-terminal .pos-cart-line,
    .pos-terminal .pos-left-footer,
    .pos-terminal .pos-keypad-grid,
    .pos-terminal .pos-keypad-value,
    .pos-terminal .pos-terminal-cashier-card {
        font-variant-numeric: tabular-nums;
        font-feature-settings: "tnum" 1, "lnum" 1;
    }

    /* ---- shared card chrome inside the terminal ---------------------- */
    .pos-terminal .card {
        border: 1px solid var(--pos-line);
        border-radius: var(--pos-radius-lg);
        background: var(--pos-surface);
        box-shadow: var(--pos-shadow-sm);
    }

/* =====================================================================
   HEADER
   ===================================================================== */
.pos-terminal-header-card {
    overflow: hidden;
}

.pos-terminal-header-card__header {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    padding: 18px 20px;
    border-bottom: 1px solid var(--pos-line);
    background: linear-gradient(180deg, var(--pos-surface) 0%, var(--pos-surface-2) 100%);
}

    .pos-terminal-header-card__header .card-title {
        gap: 2px;
    }

    .pos-terminal-header-card__header h3 {
        font-size: 1.5rem;
        font-weight: 750;
        letter-spacing: -.01em;
        color: var(--pos-ink);
        display: flex;
        align-items: center;
        gap: 10px;
    }

.pos-header-icon {
    display: inline-grid;
    place-items: center;
    inline-size: 34px;
    block-size: 34px;
    border-radius: 10px;
    background: var(--pos-brand-tint);
    color: var(--pos-brand-strong);
    font-size: 1.05rem;
}

.pos-terminal-header-card__header .text-muted {
    color: var(--pos-muted) !important;
}

/* nav toolbar buttons (Radzen Light) */
.pos-terminal-header-card .card-toolbar {
    align-items: center;
}

    .pos-terminal-header-card .card-toolbar .rz-button {
        border-radius: var(--pos-radius-sm);
        min-block-size: 42px;
        font-weight: 600;
    }

.pos-terminal-header-card__body {
    padding: 18px 20px;
}

/* search + cashier grid */
.pos-terminal-search-grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1.4fr) minmax(190px, auto);
    gap: 16px;
    align-items: end;
}

    .pos-terminal-search-grid .form-label {
        color: var(--pos-ink-soft);
        font-size: .82rem;
        margin-bottom: 6px;
    }

    /* unified, tall, touch-friendly search fields */
    .pos-terminal-search-grid .input-group {
        border: 1px solid var(--pos-line-strong);
        border-radius: var(--pos-radius);
        background: var(--pos-surface);
        overflow: hidden;
        transition: border-color .15s var(--pos-ease), box-shadow .15s var(--pos-ease);
    }

        .pos-terminal-search-grid .input-group:focus-within {
            border-color: var(--pos-brand);
            box-shadow: 0 0 0 4px var(--pos-brand-ring);
        }

    .pos-terminal-search-grid .input-group-text {
        border: 0;
        background: var(--pos-surface-2);
        color: var(--pos-brand-strong);
        font-size: 1.05rem;
        padding-inline: 14px;
    }

    .pos-terminal-search-grid .form-control {
        border: 0;
        background: transparent;
        min-block-size: var(--pos-touch);
        font-size: 1rem;
        box-shadow: none !important;
    }

        .pos-terminal-search-grid .form-control::placeholder {
            color: var(--pos-faint);
        }

/* cashier card */
.pos-terminal-cashier-card {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    column-gap: 12px;
    align-items: center;
    padding: 10px 14px;
    border-radius: var(--pos-radius);
    background: var(--pos-brand-tint);
    border: 1px solid color-mix(in srgb, var(--pos-brand) 18%, transparent);
}

.pos-cashier-avatar {
    grid-row: 1 / span 2;
    inline-size: 40px;
    block-size: 40px;
    border-radius: var(--pos-radius-pill);
    display: grid;
    place-items: center;
    background: var(--pos-brand);
    color: #fff;
    font-size: 1.2rem;
}

.pos-terminal-cashier-card .pos-cashier-label {
    font-size: .72rem;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--pos-brand-strong);
}

.pos-terminal-cashier-card .pos-cashier-name {
    font-weight: 700;
    color: var(--pos-ink);
    line-height: 1.1;
}

.pos-terminal-cashier-card .pos-cashier-time {
    grid-column: 2;
    font-size: .82rem;
    color: var(--pos-ink-soft);
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

/* =====================================================================
   PRODUCTS PANEL
   ===================================================================== */
.pos-products-panel > .card {
    height: 100%;
}

.pos-products-panel .card-body {
    padding: 16px;
    min-height: 0;
}

@media (min-width: 992px) {
    .pos-products-panel > .card,
    .pos-cart-panel > .card {
        block-size: clamp(540px, calc(100vh - var(--pos-panel-offset)), 1040px);
    }
}

/* category tabs — horizontal scroll strip of pills */
.pos-category-tabs {
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 4px;
    scrollbar-width: thin;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
}

    .pos-category-tabs::-webkit-scrollbar {
        height: 6px;
    }

    .pos-category-tabs::-webkit-scrollbar-thumb {
        background: var(--pos-line-strong);
        border-radius: 999px;
    }

.pos-category-tab {
    flex: 0 0 auto;
    scroll-snap-align: start;
    min-block-size: 42px;
    padding: 8px 18px;
    border-radius: var(--pos-radius-pill);
    border: 1px solid var(--pos-line-strong);
    background: var(--pos-surface);
    color: var(--pos-ink-soft);
    font-weight: 600;
    white-space: nowrap;
    cursor: pointer;
    transition: transform .12s var(--pos-ease), background .15s var(--pos-ease), color .15s var(--pos-ease), border-color .15s var(--pos-ease);
}

    .pos-category-tab:hover {
        border-color: var(--pos-brand);
        color: var(--pos-brand-strong);
    }

    .pos-category-tab:active {
        transform: translateY(1px);
    }

    .pos-category-tab.active {
        background: var(--pos-brand);
        border-color: var(--pos-brand);
        color: #fff;
        box-shadow: var(--pos-shadow-sm);
    }

/* product grid — scrolls independently under the pinned tabs */
.pos-products-grid {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    align-content: start;
    padding: 2px 4px 4px;
    margin: 0 -4px -4px;
    scrollbar-width: thin;
}

    .pos-products-grid::-webkit-scrollbar {
        width: 8px;
    }

    .pos-products-grid::-webkit-scrollbar-thumb {
        background: var(--pos-line-strong);
        border-radius: 999px;
    }

/* product card — the tactile tap target */
.pos-product-card {
    display: flex;
    flex-direction: column;
    block-size: 100%;
    padding: 12px;
    border: 1px solid var(--pos-line);
    border-radius: var(--pos-radius);
    background: var(--pos-surface);
    cursor: pointer;
    position: relative;
    transition: transform .12s var(--pos-ease), border-color .15s var(--pos-ease), box-shadow .15s var(--pos-ease);
}

    .pos-product-card:hover {
        border-color: var(--pos-brand);
        box-shadow: var(--pos-shadow);
        transform: translateY(-2px);
    }

    .pos-product-card:active {
        transform: translateY(0);
        box-shadow: var(--pos-shadow-sm);
    }

.pos-product-icon {
    aspect-ratio: 1 / 1;
    display: grid;
    place-items: center;
    border-radius: var(--pos-radius-sm);
    background: var(--pos-surface-2);
    overflow: hidden;
    color: var(--pos-faint);
    font-size: 2rem;
}

.pos-product-image {
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
}

.pos-product-name {
    color: var(--pos-ink);
    font-size: .95rem;
    line-height: 1.25;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    white-space: normal !important; /* override .text-truncate to allow 2 lines */
    min-block-size: 2.4em;
}

.pos-product-price {
    margin-top: 2px;
    font-size: 1.1rem;
    font-weight: 750;
    color: var(--pos-brand-strong);
}

    .pos-product-price .icon-saudi_riyal {
        color: var(--pos-faint);
        font-weight: 400;
    }

.pos-product-stock {
    color: var(--pos-muted) !important;
}

/* out-of-stock chip (display only — does not block adding) */
.pos-product-flag {
    position: absolute;
    inset-block-start: 8px;
    inset-inline-end: 8px;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .02em;
    padding: 3px 8px;
    border-radius: var(--pos-radius-pill);
    background: var(--pos-warn-tint);
    color: var(--pos-warn);
}

/* empty state */
.pos-products-grid-empty,
.pos-cart-empty {
    display: grid;
    place-items: center;
    text-align: center;
    gap: 8px;
    min-block-size: 220px;
    padding: 32px;
    color: var(--pos-muted);
    border: 1.5px dashed var(--pos-line-strong);
    border-radius: var(--pos-radius);
    background: var(--pos-surface-2);
}

.pos-empty-icon {
    font-size: 2.4rem;
    color: var(--pos-faint);
}

/* =====================================================================
   CART PANEL
   ===================================================================== */
.pos-cart-panel > .card {
    height: 100%;
}

.pos-left-card {
    overflow: hidden;
}

.pos-left-body {
    padding: 16px;
    gap: 4px;
    height: 100%;
    min-height: 0;
}

/* compact cart header */
.pos-cart-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}

    .pos-cart-head .pos-cart-title {
        font-weight: 700;
        font-size: 1.05rem;
        color: var(--pos-ink);
        display: inline-flex;
        align-items: center;
        gap: 8px;
    }

.pos-cart-count {
    font-variant-numeric: tabular-nums;
    font-size: .78rem;
    font-weight: 700;
    padding: 2px 9px;
    border-radius: var(--pos-radius-pill);
    background: var(--pos-brand-tint);
    color: var(--pos-brand-strong);
}

/* scrollable line list */
.pos-cart-list {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-inline-end: 2px;
    scrollbar-width: thin;
}

    .pos-cart-list::-webkit-scrollbar {
        width: 8px;
    }

    .pos-cart-list::-webkit-scrollbar-thumb {
        background: var(--pos-line-strong);
        border-radius: 999px;
    }

.pos-cart-empty {
    min-block-size: 160px;
}

/* a single cart line */
.pos-cart-line {
    position: relative;
    padding: 12px;
    border: 1px solid var(--pos-line);
    border-radius: var(--pos-radius);
    background: var(--pos-surface);
    cursor: pointer;
    transition: border-color .15s var(--pos-ease), background .15s var(--pos-ease), box-shadow .15s var(--pos-ease);
}

    .pos-cart-line:hover {
        border-color: var(--pos-line-strong);
    }

    .pos-cart-line.selected {
        border-color: var(--pos-brand);
        background: var(--pos-brand-tint);
        box-shadow: inset 0 0 0 1px var(--pos-brand);
    }
        /* inline-start accent bar on the selected line (RTL-safe) */
        .pos-cart-line.selected::before {
            content: "";
            position: absolute;
            inset-block: 10px;
            inset-inline-start: 0;
            inline-size: 3px;
            border-radius: 999px;
            background: var(--pos-brand);
        }

    .pos-cart-line .fw-semibold {
        color: var(--pos-ink);
    }

    .pos-cart-line .fw-bold {
        color: var(--pos-ink);
        font-size: 1.02rem;
    }

    /* line remove button → proper icon button */
    .pos-cart-line .btn-link.text-danger {
        display: inline-grid;
        place-items: center;
        inline-size: 32px;
        block-size: 32px;
        border-radius: var(--pos-radius-sm);
        color: var(--pos-danger) !important;
        text-decoration: none;
        transition: background .15s var(--pos-ease);
    }

        .pos-cart-line .btn-link.text-danger:hover {
            background: var(--pos-danger-tint);
        }

    /* segmented controls (qty stepper + discount/price) */
    .pos-cart-line .btn-group .btn {
        min-block-size: 40px;
        min-inline-size: 40px;
        font-weight: 600;
        border-color: var(--pos-line-strong);
        --bs-btn-active-bg: var(--pos-brand);
    }

        .pos-cart-line .btn-group .btn.btn-light {
            background: var(--pos-surface-2);
            color: var(--pos-ink);
        }

            .pos-cart-line .btn-group .btn.btn-light:hover {
                background: var(--pos-surface-3);
            }

        .pos-cart-line .btn-group .btn.btn-outline-secondary {
            color: var(--pos-ink-soft);
            background: var(--pos-surface);
        }

            .pos-cart-line .btn-group .btn.btn-outline-secondary:hover {
                background: var(--pos-surface-2);
                border-color: var(--pos-brand);
                color: var(--pos-brand-strong);
            }

        .pos-cart-line .btn-group .btn:active {
            transform: translateY(1px);
        }

        .pos-cart-line .btn-group .btn:disabled {
            opacity: .5;
        }

/* =====================================================================
   FOOTER — register display (totals, payment, actions)
   ===================================================================== */
.pos-left-footer {
    flex: 0 0 auto;
    margin-top: 12px;
    padding-top: 14px;
    border-top: 1px solid var(--pos-line);
}

    .pos-left-footer .text-muted {
        color: var(--pos-muted) !important;
    }

    .pos-left-footer > .d-flex.small {
        padding-block: 2px;
    }

    .pos-left-footer hr {
        border-color: var(--pos-line);
        opacity: 1;
    }

/* grand total — the loudest number on the screen */
.pos-grand-total .fw-bold {
    color: var(--pos-ink);
}

.pos-grand-total .fs-4 {
    font-size: 1.9rem !important;
    font-weight: 800;
    letter-spacing: -.02em;
    color: var(--pos-ink);
}

.pos-grand-total .icon-saudi_riyal {
    color: var(--pos-faint);
}

/* inline error */
.pos-left-footer .alert-danger {
    border: 1px solid color-mix(in srgb, var(--pos-danger) 30%, transparent);
    background: var(--pos-danger-tint);
    color: var(--pos-danger);
    border-radius: var(--pos-radius-sm);
    font-size: .88rem;
}

/* payments trigger panel */
.pos-pay-wrap {
    border: 1px solid var(--pos-line) !important;
    border-radius: var(--pos-radius) !important;
    background: var(--pos-surface-2);
    padding: 10px !important;
}

.pos-pay-trigger {
    border: 1px solid var(--pos-line-strong) !important;
    border-radius: var(--pos-radius-sm) !important;
    background: var(--pos-surface) !important;
    min-block-size: 60px;
    transition: border-color .15s var(--pos-ease), box-shadow .15s var(--pos-ease);
}

    .pos-pay-trigger:hover:not(:disabled) {
        border-color: var(--pos-brand) !important;
        box-shadow: var(--pos-shadow-sm);
    }

    .pos-pay-trigger:disabled {
        opacity: .55;
    }

    .pos-pay-trigger .bi {
        display: inline-grid;
        place-items: center;
        inline-size: 38px;
        block-size: 38px;
        border-radius: var(--pos-radius-sm);
        background: var(--pos-brand-tint);
        color: var(--pos-brand-strong);
    }

    .pos-pay-trigger .fw-bold {
        font-variant-numeric: tabular-nums;
        color: var(--pos-ink);
    }

.pos-left-footer .badge.bg-success {
    background: var(--pos-success) !important;
}

.pos-left-footer .badge.bg-secondary {
    background: var(--pos-warn) !important; /* "incomplete" reads as a warning */
}

/* primary action buttons (Radzen) — beat Radzen's own theme deliberately */
.pos-terminal .pos-btn .rz-button,
.pos-terminal button.pos-btn {
    min-block-size: 56px !important;
    border-radius: var(--pos-radius) !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    box-shadow: var(--pos-shadow-sm);
    transition: transform .12s var(--pos-ease), filter .15s var(--pos-ease);
}

.pos-terminal .pos-btn:active {
    transform: translateY(1px);
}

.pos-terminal .pos-btn--complete.rz-button,
.pos-terminal button.pos-btn--complete {
    background: var(--pos-success) !important;
    border-color: var(--pos-success) !important;
    color: #fff !important;
}

.pos-terminal .pos-btn--complete:hover {
    filter: brightness(.96);
}

.pos-terminal .pos-btn--draft.rz-button,
.pos-terminal button.pos-btn--draft {
    background: var(--pos-surface) !important;
    border: 1px solid var(--pos-line-strong) !important;
    color: var(--pos-ink-soft) !important;
    box-shadow: none;
}

.pos-terminal .pos-btn--draft:hover {
    background: var(--pos-surface-2) !important;
}

/* =====================================================================
   KEYPAD
   ===================================================================== */
.pos-keypad {
    padding: 12px;
    border: 1px solid var(--pos-line-strong);
    border-radius: var(--pos-radius);
    background: var(--pos-surface-2);
    box-shadow: var(--pos-shadow-sm);
}

.pos-keypad-label {
    color: var(--pos-muted);
    font-size: .85rem;
}

.pos-keypad-value {
    font-size: 1.35rem;
    font-weight: 800;
    color: var(--pos-ink);
    letter-spacing: -.01em;
}

.pos-keypad-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin-top: 8px;
}

    .pos-keypad-grid .btn {
        min-block-size: 54px;
        font-size: 1.25rem;
        font-weight: 600;
        border: 1px solid var(--pos-line-strong);
        background: var(--pos-surface);
        color: var(--pos-ink);
        border-radius: var(--pos-radius-sm);
        transition: transform .1s var(--pos-ease), background .12s var(--pos-ease);
    }

        .pos-keypad-grid .btn:hover {
            background: var(--pos-surface-3);
        }

        .pos-keypad-grid .btn:active {
            transform: translateY(1px);
            background: var(--pos-brand-tint);
        }

.pos-keypad-actions .btn {
    min-block-size: 46px;
    border-radius: var(--pos-radius-sm);
    font-weight: 600;
}

.pos-keypad-actions .btn-primary {
    background: var(--pos-brand);
    border-color: var(--pos-brand);
}

    .pos-keypad-actions .btn-primary:hover {
        background: var(--pos-brand-strong);
        border-color: var(--pos-brand-strong);
    }

.pos-keypad-actions .btn-outline-secondary {
    color: var(--pos-ink-soft);
    border-color: var(--pos-line-strong);
}

/* =====================================================================
   BLOCKED PANEL
   ===================================================================== */
.pos-blocked-card .card-body {
    display: grid;
    place-items: center;
    text-align: center;
    gap: 6px;
    padding: 40px 24px;
}

.pos-blocked-icon {
    inline-size: 64px;
    block-size: 64px;
    display: grid;
    place-items: center;
    border-radius: var(--pos-radius-pill);
    background: var(--pos-warn-tint);
    color: var(--pos-warn);
    font-size: 1.9rem;
    margin-bottom: 6px;
}

.pos-blocked-card h5 {
    font-weight: 750;
    color: var(--pos-ink);
    margin: 0;
}

.pos-blocked-card .pos-blocked-reason {
    color: var(--pos-muted);
    max-inline-size: 46ch;
    margin: 2px auto 0;
}

.pos-blocked-actions {
    margin-top: 18px;
}

    .pos-blocked-actions .rz-button {
        min-block-size: 48px;
        border-radius: var(--pos-radius-sm);
        font-weight: 600;
    }

/* =====================================================================
   RESPONSIVE
   ===================================================================== */
@media (max-width: 991.98px) {
    .pos-terminal-search-grid {
        grid-template-columns: 1fr;
    }

    .pos-terminal-cashier-card {
        grid-template-columns: auto 1fr auto;
    }

    .pos-products-panel > .card,
    .pos-cart-panel > .card {
        block-size: auto;
    }

    .pos-products-grid {
        overflow: visible;
        max-block-size: none;
    }
}

@media (max-width: 575.98px) {
    .pos-terminal-header-card__header {
        padding: 14px;
    }

    .pos-terminal-header-card__body {
        padding: 14px;
    }

    .pos-grand-total .fs-4 {
        font-size: 1.6rem !important;
    }
}

/* =====================================================================
   ACCESSIBILITY — focus + reduced motion
   ===================================================================== */
.pos-terminal :is(button, a, .pos-cart-line):focus-visible {
    outline: 3px solid var(--pos-brand-ring);
    outline-offset: 2px;
    border-radius: var(--pos-radius-sm);
}

.pos-terminal .pos-product-card:focus-visible,
.pos-terminal .pos-category-tab:focus-visible {
    outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
    .pos-terminal * {
        transition: none !important;
    }

        .pos-terminal *:active {
            transform: none !important;
        }
}

/* ===== Unified page stacking contract =====
   App header (Metronic) stays at z-index 100. Page-local sticky surfaces stay
   below it and above DataGrid frozen/header cells. Picker suggestions use the
   browser top layer through aksa-overlays.css and are intentionally outside
   this numeric stack. */
.aksa-page-toolbar,
.erp-page-toolbar,
.document-toolbar,
.sales-list-controlbar,
.sales-order-list-controlbar,
.sales-return-list-controlbar,
.purchase-list-controlbar,
.stock-list-controlbar,
.purchase-list-control,
.aksa-operation-header,
.sales-document-header.aksa-operation-header,
.purchase-editor-header.aksa-operation-header,
.aksa-journal-modern-header,
.aksa-report-titlebar {
    z-index: var(--aksa-z-page-sticky, 80) !important;
    overflow: visible;
}

/* ===== AKSA ERP PROFESSIONAL THEME REFINEMENT v20260708_8 =====
   Visual-only pass: token refinement, surfaces, controls, grids, dialogs, and
   dashboard/report chrome. Does not change Sidebar/KTMenu behavior or page data flows. */
:root {
    --aksa-brand: #1d4ed8;
    --aksa-brand-600: #2563eb;
    --aksa-brand-700: #1d4ed8;
    --aksa-brand-800: #1e40af;
    --aksa-accent: #f97316;
    --aksa-accent-soft: #fff3e8;
    --aksa-info: #2563eb;
    --aksa-info-soft: #eaf2ff;
    --aksa-success: #12805c;
    --aksa-success-soft: #e8f7f0;
    --aksa-warning: #b7791f;
    --aksa-warning-soft: #fff7e6;
    --aksa-danger: #c24135;
    --aksa-danger-soft: #fff0ef;
    --aksa-page-bg: #f3f6fb;
    --aksa-surface: #ffffff;
    --aksa-surface-raised: #ffffff;
    --aksa-surface-muted: #f8fafc;
    --aksa-surface-soft: #f1f5f9;
    --aksa-border: #e2e8f0;
    --aksa-border-strong: #cbd5e1;
    --aksa-text: #0f172a;
    --aksa-text-muted: #64748b;
    --aksa-text-soft: #94a3b8;
    --aksa-shadow-xs: 0 1px 2px rgba(15, 23, 42, .035);
    --aksa-shadow-sm: 0 1px 2px rgba(15, 23, 42, .05), 0 1px 3px rgba(15, 23, 42, .055);
    --aksa-shadow-md: 0 10px 28px rgba(15, 23, 42, .075);
    --aksa-shadow-popover: 0 18px 48px rgba(15, 23, 42, .16);
    --aksa-ring: 0 0 0 3px color-mix(in srgb, var(--aksa-brand) 18%, transparent);
    --aksa-radius-xs: .375rem;
    --aksa-radius-sm: .55rem;
    --aksa-radius: .75rem;
    --aksa-radius-lg: 1rem;
    --aksa-radius-xl: 1.25rem;
    --aksa-control-height: 2.5rem;
    --aksa-grid-row-height: 2.65rem;
    --aksa-toolbar-height: 3.35rem;
    --aksa-density-gap: .75rem;
    --aksa-transition: 160ms cubic-bezier(.2, .8, .2, 1);
    --aksa-tree-hover-bg: color-mix(in srgb, var(--aksa-brand) 7%, var(--aksa-surface));
    --aksa-tree-selected-bg: color-mix(in srgb, var(--aksa-brand) 12%, var(--aksa-surface));
    --aksa-tree-line: var(--aksa-border-strong);
    --aksa-tree-success: var(--aksa-success);
    --aksa-tree-danger: var(--aksa-danger);
    --aksa-tree-surface: var(--aksa-surface);
    --border-radius-md: var(--aksa-radius-sm);
    --drawer-bg-soft: var(--aksa-surface-muted);
}

[data-bs-theme="dark"] {
    --aksa-page-bg: #0f141b;
    --aksa-surface: #161c24;
    --aksa-surface-raised: #1b222c;
    --aksa-surface-muted: #202834;
    --aksa-surface-soft: #111820;
    --aksa-border: #293241;
    --aksa-border-strong: #3a4657;
    --aksa-text: #f8fafc;
    --aksa-text-muted: #a8b3c2;
    --aksa-text-soft: #7f8b9a;
    --aksa-accent-soft: rgba(249, 115, 22, .16);
    --aksa-info-soft: rgba(37, 99, 235, .18);
    --aksa-success-soft: rgba(18, 128, 92, .2);
    --aksa-warning-soft: rgba(183, 121, 31, .2);
    --aksa-danger-soft: rgba(194, 65, 53, .2);
    --aksa-shadow-xs: 0 1px 2px rgba(0, 0, 0, .28);
    --aksa-shadow-sm: 0 1px 3px rgba(0, 0, 0, .32);
    --aksa-shadow-md: 0 14px 36px rgba(0, 0, 0, .38);
    --aksa-shadow-popover: 0 18px 48px rgba(0, 0, 0, .52);
    --aksa-ring: 0 0 0 3px color-mix(in srgb, var(--aksa-brand-600) 34%, transparent);
}

html {
    background: var(--aksa-page-bg);
    color-scheme: light dark;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

body {
    background:
        radial-gradient(circle at top inline-start, color-mix(in srgb, var(--aksa-brand) 5%, transparent) 0, transparent 24rem),
        linear-gradient(180deg, color-mix(in srgb, var(--aksa-page-bg) 90%, #fff 10%), var(--aksa-page-bg) 18rem);
    color: var(--aksa-text);
}

[data-bs-theme="dark"] body {
    background:
        radial-gradient(circle at top inline-start, color-mix(in srgb, var(--aksa-brand-600) 11%, transparent) 0, transparent 24rem),
        linear-gradient(180deg, color-mix(in srgb, var(--aksa-page-bg) 88%, #000 12%), var(--aksa-page-bg) 18rem);
}

::selection {
    background: color-mix(in srgb, var(--aksa-brand) 22%, transparent);
    color: var(--aksa-text);
}

[data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container,
.aksa-customer-portal .aksa-customer-main {
    isolation: isolate;
}

.card,
.card-flush,
.rz-card,
.aksa-card,
.aksa-page-card,
.kt-portlet,
.aksa-panel,
.erp-card,
.dashboard-card,
.portal-card {
    border-color: var(--aksa-border) !important;
    border-radius: var(--aksa-radius-lg) !important;
    background: var(--aksa-surface-raised) !important;
    box-shadow: var(--aksa-shadow-xs) !important;
}

.card:hover,
.rz-card:hover,
.aksa-card:hover,
.dashboard-card:hover,
.portal-card:hover {
    box-shadow: var(--aksa-shadow-sm) !important;
}

.card .card-header,
.rz-card .rz-card-header,
.aksa-page-header,
.aksa-section-header,
.section-header,
.kt_js_header {
    min-height: var(--aksa-toolbar-height);
    border-bottom-color: var(--aksa-border) !important;
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--aksa-surface-raised) 96%, #fff 4%), var(--aksa-surface-muted)) !important;
}

.aksa-page-title,
.card .card-title,
.section-header h1,
.section-header h2,
.section-header h3,
.rz-dialog-title {
    color: var(--aksa-text) !important;
    font-weight: 800;
    letter-spacing: -.018em;
}

.aksa-page-subtitle,
.card .card-subtitle,
.text-muted,
.rz-grid-filter-label,
.rz-column-title,
.small.text-muted {
    color: var(--aksa-text-muted) !important;
}

.btn,
.rz-button,
.form-control,
.form-select,
.rz-inputtext,
.rz-dropdown,
.rz-numeric,
.rz-datepicker,
.rz-multiselect,
.rz-textarea,
.rz-spinner input {
    transition:
        border-color var(--aksa-transition),
        background-color var(--aksa-transition),
        color var(--aksa-transition),
        box-shadow var(--aksa-transition),
        transform var(--aksa-transition);
}

.form-control,
.form-select,
.rz-inputtext,
.rz-dropdown,
.rz-numeric,
.rz-datepicker,
.rz-multiselect,
.rz-textarea,
.rz-spinner input {
    border-color: var(--aksa-border-strong) !important;
    background: var(--aksa-surface) !important;
    color: var(--aksa-text) !important;
    min-height: var(--aksa-control-height);
}

.form-control:hover,
.form-select:hover,
.rz-inputtext:hover,
.rz-dropdown:hover,
.rz-numeric:hover,
.rz-datepicker:hover,
.rz-multiselect:hover,
.rz-textarea:hover {
    border-color: color-mix(in srgb, var(--aksa-brand) 42%, var(--aksa-border-strong)) !important;
}

.form-control:focus,
.form-select:focus,
.rz-inputtext:focus,
.rz-dropdown:focus-within,
.rz-numeric:focus-within,
.rz-datepicker:focus-within,
.rz-multiselect:focus-within,
.rz-textarea:focus-within {
    border-color: var(--aksa-brand-600) !important;
    box-shadow: var(--aksa-ring) !important;
}

.rz-dropdown-panel,
.rz-multiselect-panel,
.rz-datepicker-calendar-container,
.rz-context-menu,
.rz-menu-popup,
.dropdown-menu {
    border: 1px solid var(--aksa-border) !important;
    border-radius: var(--aksa-radius) !important;
    background: var(--aksa-surface-raised) !important;
    color: var(--aksa-text) !important;
    box-shadow: var(--aksa-shadow-popover) !important;
}

.btn-primary,
.rz-button.rz-primary,
.rz-button-md.rz-primary,
.rz-primary.rz-button {
    border-color: var(--aksa-brand-700) !important;
    background: linear-gradient(180deg, var(--aksa-brand-600), var(--aksa-brand-800)) !important;
    color: #fff !important;
    box-shadow: 0 1px 2px rgba(29, 78, 216, .18) !important;
}

.btn-primary:hover,
.rz-button.rz-primary:hover,
.rz-primary.rz-button:hover {
    filter: brightness(1.03);
    transform: translateY(-1px);
    box-shadow: 0 9px 18px rgba(29, 78, 216, .18) !important;
}

.btn-light,
.btn-secondary,
.rz-button.rz-secondary,
.rz-button.rz-light {
    border-color: var(--aksa-border) !important;
    background: var(--aksa-surface-muted) !important;
    color: var(--aksa-text) !important;
    box-shadow: none !important;
}

.btn-light:hover,
.btn-secondary:hover,
.rz-button.rz-secondary:hover,
.rz-button.rz-light:hover {
    background: color-mix(in srgb, var(--aksa-brand) 7%, var(--aksa-surface-muted)) !important;
    border-color: color-mix(in srgb, var(--aksa-brand) 30%, var(--aksa-border)) !important;
}

.badge,
.rz-badge,
.aksa-chip,
.aksa-filter-chip,
.rz-chip,
.label,
.status-badge {
    border-radius: 999px !important;
    font-weight: 700;
    letter-spacing: -.01em;
}

.aksa-status-success,
.badge-light-success,
.rz-badge-success {
    background: var(--aksa-success-soft) !important;
    color: var(--aksa-success) !important;
}

.aksa-status-warning,
.badge-light-warning,
.rz-badge-warning {
    background: var(--aksa-warning-soft) !important;
    color: var(--aksa-warning) !important;
}

.aksa-status-danger,
.badge-light-danger,
.rz-badge-danger {
    background: var(--aksa-danger-soft) !important;
    color: var(--aksa-danger) !important;
}

.rz-grid,
.rz-data-grid,
.aksa-grid,
.aksa-report-grid {
    border-color: var(--aksa-border) !important;
    border-radius: var(--aksa-radius-lg) !important;
    background: var(--aksa-surface-raised) !important;
    overflow: clip;
    box-shadow: var(--aksa-shadow-xs);
}

.rz-grid-table thead th,
.rz-grid-table .rz-column-title-content,
.rz-datatable-thead th,
.aksa-report-grid thead th {
    color: var(--aksa-text-muted) !important;
    font-size: .77rem;
    font-weight: 800;
    text-transform: none;
    background: var(--aksa-surface-muted) !important;
}

.rz-grid-table tbody td,
.rz-datatable-data td,
.aksa-report-grid tbody td {
    border-color: var(--aksa-border) !important;
    color: var(--aksa-text);
}

.rz-grid-table tbody tr:hover > td,
.rz-datatable-data tr:hover > td,
.aksa-report-grid tbody tr:hover > td {
    background: color-mix(in srgb, var(--aksa-brand) 5%, var(--aksa-surface)) !important;
}

.rz-paginator,
.rz-pager,
.aksa-pager {
    border-top-color: var(--aksa-border) !important;
    background: var(--aksa-surface-muted) !important;
}

.rz-dialog-wrapper .rz-dialog,
.rz-dialog,
.modal-content,
.offcanvas {
    border: 1px solid var(--aksa-border) !important;
    border-radius: var(--aksa-radius-xl) !important;
    background: var(--aksa-surface-raised) !important;
    color: var(--aksa-text) !important;
    box-shadow: var(--aksa-shadow-popover) !important;
}

.rz-dialog-titlebar,
.modal-header,
.offcanvas-header {
    border-bottom: 1px solid var(--aksa-border) !important;
    background: linear-gradient(180deg, var(--aksa-surface-raised), var(--aksa-surface-muted)) !important;
}

.aksa-page-toolbar,
.erp-page-toolbar,
.document-toolbar,
.aksa-operation-header,
.sales-document-header.aksa-operation-header,
.purchase-editor-header.aksa-operation-header,
.aksa-journal-modern-header,
.aksa-report-titlebar,
.aksa-report-control-panel,
.aksa-report-toolbar,
.sales-list-controlbar,
.purchase-list-controlbar,
.stock-list-controlbar {
    border: 1px solid var(--aksa-border) !important;
    border-radius: var(--aksa-radius-lg) !important;
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--aksa-surface-raised) 96%, #fff 4%), var(--aksa-surface-raised)) !important;
    box-shadow: var(--aksa-shadow-xs) !important;
}

.aksa-page-toolbar .btn,
.erp-page-toolbar .btn,
.document-toolbar .btn,
.aksa-operation-header .btn,
.aksa-report-control-panel .btn,
.aksa-report-toolbar .btn,
.sales-list-controlbar .btn,
.purchase-list-controlbar .btn,
.stock-list-controlbar .btn {
    min-height: 2.25rem;
    font-weight: 750;
}

.aksa-empty-state,
.empty-state,
.rz-empty-message,
.aksa-no-data,
.report-empty-state {
    color: var(--aksa-text-muted) !important;
}

.aksa-empty-state,
.empty-state,
.aksa-no-data,
.report-empty-state {
    border: 1px dashed var(--aksa-border-strong);
    border-radius: var(--aksa-radius-xl);
    background: color-mix(in srgb, var(--aksa-surface-muted) 78%, transparent);
}

.aksa-kpi-card,
.aksa-metric-card,
.dashboard-widget,
.portal-kpi-card,
.widget-card,
.stat-card {
    position: relative;
    border: 1px solid var(--aksa-border) !important;
    border-radius: var(--aksa-radius-xl) !important;
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--aksa-surface-raised) 97%, var(--aksa-brand) 3%), var(--aksa-surface-raised)) !important;
    box-shadow: var(--aksa-shadow-xs) !important;
    overflow: hidden;
}

.aksa-kpi-card::before,
.aksa-metric-card::before,
.dashboard-widget::before,
.portal-kpi-card::before,
.widget-card::before,
.stat-card::before {
    content: "";
    position: absolute;
    inset-block-start: 0;
    inset-inline: 0;
    block-size: 3px;
    background: linear-gradient(90deg, var(--aksa-brand-600), var(--aksa-accent));
    opacity: .85;
}

.aksa-customer-portal,
[data-aksa-layout="customer-portal"] {
    --aksa-page-bg: #f4f7fb;
    --aksa-customer-sidebar-bg: #0f2d4a;
    --aksa-customer-sidebar-bg-2: #123a5f;
    --aksa-customer-sidebar-active: rgba(255, 255, 255, .12);
}

[data-bs-theme="dark"] .aksa-customer-portal,
[data-bs-theme="dark"] [data-aksa-layout="customer-portal"] {
    --aksa-page-bg: #101820;
    --aksa-customer-sidebar-bg: #0b1724;
    --aksa-customer-sidebar-bg-2: #102134;
    --aksa-customer-sidebar-active: rgba(96, 165, 250, .18);
}

.aksa-customer-portal .aksa-customer-shell,
[data-aksa-layout="customer-portal"] .aksa-customer-shell {
    background:
        radial-gradient(circle at top inline-end, rgba(249, 115, 22, .12), transparent 22rem),
        var(--aksa-page-bg);
}

.aksa-customer-portal .aksa-customer-sidebar,
[data-aksa-layout="customer-portal"] .aksa-customer-sidebar {
    background:
        linear-gradient(180deg, var(--aksa-customer-sidebar-bg-2), var(--aksa-customer-sidebar-bg)) !important;
    box-shadow: 0 18px 48px rgba(15, 23, 42, .22);
}

.aksa-customer-portal .aksa-customer-topbar,
[data-aksa-layout="customer-portal"] .aksa-customer-topbar {
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius-xl);
    background: color-mix(in srgb, var(--aksa-surface-raised) 92%, transparent);
    box-shadow: var(--aksa-shadow-xs);
    backdrop-filter: blur(12px);
}

.aksa-customer-portal .aksa-customer-content,
[data-aksa-layout="customer-portal"] .aksa-customer-content {
    padding: clamp(.85rem, 1.25vw, 1.25rem);
}

@media (max-width: 767.98px) {
    :root {
        --aksa-control-height: 2.75rem;
        --aksa-toolbar-height: auto;
    }

    [data-aksa-layout="admin"] #kt_app_content_container.aksa-app-content-container {
        padding-inline: .75rem !important;
    }

    .aksa-page-toolbar,
    .erp-page-toolbar,
    .document-toolbar,
    .aksa-operation-header,
    .aksa-report-control-panel,
    .aksa-report-toolbar {
        border-radius: var(--aksa-radius) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
    }
}

@media print {
    :root,
    [data-bs-theme="dark"] {
        --aksa-page-bg: #ffffff;
        --aksa-surface: #ffffff;
        --aksa-surface-raised: #ffffff;
        --aksa-surface-muted: #ffffff;
        --aksa-border: #d0d5dd;
        --aksa-border-strong: #98a2b3;
        --aksa-text: #111827;
        --aksa-text-muted: #475467;
    }

    html,
    body,
    .app-main,
    .app-content,
    #kt_app_content,
    #kt_app_content_container,
    .card,
    .rz-card,
    .aksa-card,
    .aksa-page-card,
    .aksa-report-grid,
    .rz-grid {
        background: #fff !important;
        color: #111827 !important;
        box-shadow: none !important;
    }
}


/* =====================================================================
   AKSA ERP BUTTON COLOR CONTRACT FIX v20260708_9
   Visual-only correction after the global polish pass.
   Scope: Bootstrap/Radzen action colors, disabled/read-only actions, POS
   settings toolbars, and tabs. No layout, Sidebar, KTMenu, or JS behavior.
   ===================================================================== */
:root {
    --aksa-action-primary: #2563eb;
    --aksa-action-primary-hover: #1d4ed8;
    --aksa-action-primary-border: #1d4ed8;
    --aksa-action-primary-text: #ffffff;

    --aksa-action-neutral-bg: #ffffff;
    --aksa-action-neutral-hover: #f8fafc;
    --aksa-action-neutral-border: #cbd5e1;
    --aksa-action-neutral-text: #334155;

    --aksa-action-muted-bg: #f8fafc;
    --aksa-action-muted-border: #e2e8f0;
    --aksa-action-muted-text: #64748b;

    --aksa-action-info-bg: #eff6ff;
    --aksa-action-info-border: #bfdbfe;
    --aksa-action-info-text: #1d4ed8;

    --aksa-action-success-bg: #ecfdf5;
    --aksa-action-success-border: #bbf7d0;
    --aksa-action-success-text: #047857;

    --aksa-action-warning-bg: #fff7ed;
    --aksa-action-warning-border: #fed7aa;
    --aksa-action-warning-text: #c2410c;

    --aksa-action-danger-bg: #fef2f2;
    --aksa-action-danger-border: #fecaca;
    --aksa-action-danger-text: #b91c1c;
}

[data-bs-theme="dark"] {
    --aksa-action-neutral-bg: #1f2937;
    --aksa-action-neutral-hover: #273244;
    --aksa-action-neutral-border: #3b4758;
    --aksa-action-neutral-text: #e5edf7;

    --aksa-action-muted-bg: #18202b;
    --aksa-action-muted-border: #2b3646;
    --aksa-action-muted-text: #9aa8ba;

    --aksa-action-info-bg: rgba(37, 99, 235, .18);
    --aksa-action-info-border: rgba(96, 165, 250, .32);
    --aksa-action-info-text: #93c5fd;

    --aksa-action-success-bg: rgba(4, 120, 87, .18);
    --aksa-action-success-border: rgba(52, 211, 153, .28);
    --aksa-action-success-text: #86efac;

    --aksa-action-warning-bg: rgba(194, 65, 12, .18);
    --aksa-action-warning-border: rgba(251, 146, 60, .3);
    --aksa-action-warning-text: #fdba74;

    --aksa-action-danger-bg: rgba(185, 28, 28, .18);
    --aksa-action-danger-border: rgba(248, 113, 113, .3);
    --aksa-action-danger-text: #fca5a5;
}

.btn,
.rz-button {
    border-radius: var(--aksa-radius-sm) !important;
    font-weight: 700 !important;
    letter-spacing: -.01em;
}

.btn .svg-icon,
.btn i,
.btn .ki-duotone,
.rz-button .rz-button-icon,
.rz-button .rz-button-text,
.rz-button .rz-button-box {
    color: inherit !important;
}

.btn-primary,
.btn.btn-primary,
.rz-button.rz-primary,
.rz-button.rz-button-md.rz-primary,
.rz-primary.rz-button {
    border-color: var(--aksa-action-primary-border) !important;
    background: var(--aksa-action-primary) !important;
    color: var(--aksa-action-primary-text) !important;
    box-shadow: 0 1px 2px rgba(37, 99, 235, .18) !important;
    filter: none !important;
}

.btn-primary:hover:not(:disabled),
.btn.btn-primary:hover:not(:disabled),
.rz-button.rz-primary:hover:not(:disabled),
.rz-primary.rz-button:hover:not(:disabled) {
    border-color: var(--aksa-action-primary-hover) !important;
    background: var(--aksa-action-primary-hover) !important;
    color: var(--aksa-action-primary-text) !important;
    box-shadow: 0 6px 14px rgba(37, 99, 235, .18) !important;
    transform: none !important;
}

.btn-light,
.btn-secondary,
.btn.btn-light,
.btn.btn-secondary,
.btn-outline-secondary,
.rz-button,
.rz-button.rz-secondary,
.rz-button.rz-light,
.rz-button.rz-button-md.rz-secondary,
.rz-secondary.rz-button,
.rz-light.rz-button {
    border-color: var(--aksa-action-neutral-border) !important;
    background: var(--aksa-action-neutral-bg) !important;
    color: var(--aksa-action-neutral-text) !important;
    box-shadow: none !important;
}

.btn-light:hover:not(:disabled),
.btn-secondary:hover:not(:disabled),
.btn.btn-light:hover:not(:disabled),
.btn.btn-secondary:hover:not(:disabled),
.btn-outline-secondary:hover:not(:disabled),
.rz-button:hover:not(:disabled):not(.rz-primary):not(.rz-success):not(.rz-danger):not(.rz-warning):not(.rz-info),
.rz-button.rz-secondary:hover:not(:disabled),
.rz-button.rz-light:hover:not(:disabled),
.rz-secondary.rz-button:hover:not(:disabled),
.rz-light.rz-button:hover:not(:disabled) {
    border-color: color-mix(in srgb, var(--aksa-action-primary) 24%, var(--aksa-action-neutral-border)) !important;
    background: var(--aksa-action-neutral-hover) !important;
    color: var(--aksa-text) !important;
    transform: none !important;
}

.btn-info,
.btn-outline-info,
.rz-button.rz-info,
.rz-info.rz-button {
    border-color: var(--aksa-action-info-border) !important;
    background: var(--aksa-action-info-bg) !important;
    color: var(--aksa-action-info-text) !important;
    box-shadow: none !important;
}

.btn-success,
.btn-outline-success,
.rz-button.rz-success,
.rz-success.rz-button {
    border-color: var(--aksa-action-success-border) !important;
    background: var(--aksa-action-success-bg) !important;
    color: var(--aksa-action-success-text) !important;
    box-shadow: none !important;
}

.btn-warning,
.btn-outline-warning,
.rz-button.rz-warning,
.rz-warning.rz-button {
    border-color: var(--aksa-action-warning-border) !important;
    background: var(--aksa-action-warning-bg) !important;
    color: var(--aksa-action-warning-text) !important;
    box-shadow: none !important;
}

.btn-danger,
.btn-outline-danger,
.rz-button.rz-danger,
.rz-danger.rz-button {
    border-color: var(--aksa-action-danger-border) !important;
    background: var(--aksa-action-danger-bg) !important;
    color: var(--aksa-action-danger-text) !important;
    box-shadow: none !important;
}

.btn-info:hover:not(:disabled),
.btn-outline-info:hover:not(:disabled),
.rz-button.rz-info:hover:not(:disabled),
.btn-success:hover:not(:disabled),
.btn-outline-success:hover:not(:disabled),
.rz-button.rz-success:hover:not(:disabled),
.btn-warning:hover:not(:disabled),
.btn-outline-warning:hover:not(:disabled),
.rz-button.rz-warning:hover:not(:disabled),
.btn-danger:hover:not(:disabled),
.btn-outline-danger:hover:not(:disabled),
.rz-button.rz-danger:hover:not(:disabled) {
    filter: brightness(.98);
    transform: none !important;
}

.btn-link,
.rz-button.rz-button-link {
    border-color: transparent !important;
    background: transparent !important;
    color: var(--aksa-action-info-text) !important;
    box-shadow: none !important;
}

.btn:disabled,
.btn.disabled,
fieldset:disabled .btn,
.rz-button:disabled,
.rz-button[disabled],
.rz-button.rz-state-disabled,
.rz-state-disabled.rz-button {
    opacity: 1 !important;
    border-color: var(--aksa-action-muted-border) !important;
    background: var(--aksa-action-muted-bg) !important;
    color: var(--aksa-action-muted-text) !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
    cursor: not-allowed !important;
}

.btn:disabled .svg-icon,
.btn.disabled .svg-icon,
.btn:disabled i,
.btn.disabled i,
.btn:disabled .ki-duotone,
.btn.disabled .ki-duotone,
.rz-button:disabled .rz-button-icon,
.rz-button[disabled] .rz-button-icon,
.rz-button.rz-state-disabled .rz-button-icon,
.rz-button:disabled .rz-button-text,
.rz-button[disabled] .rz-button-text,
.rz-button.rz-state-disabled .rz-button-text {
    color: inherit !important;
    opacity: .9 !important;
}

.rz-tabview .rz-tabview-nav li a,
.rz-tabview .rz-tabview-nav .rz-tabview-title,
.nav-tabs .nav-link {
    color: var(--aksa-action-neutral-text) !important;
    font-weight: 700;
}

.rz-tabview .rz-tabview-nav li.rz-tabview-selected a,
.rz-tabview .rz-tabview-nav li.rz-state-active a,
.nav-tabs .nav-link.active {
    color: var(--aksa-action-primary) !important;
}

/* POS settings pages should not inherit the POS terminal teal/yellow action palette. */
.pos-terminal-settings,
.pos-sale-settings,
.pos-settings-shell,
.pos-admin-settings,
.aksa-pos-settings {
    --pos-brand: var(--aksa-action-primary);
    --pos-brand-strong: var(--aksa-action-primary-hover);
    --pos-brand-tint: var(--aksa-action-info-bg);
    --pos-warn: var(--aksa-action-warning-text);
    --pos-warn-tint: var(--aksa-action-warning-bg);
    --pos-success: var(--aksa-action-success-text);
    --pos-success-tint: var(--aksa-action-success-bg);
    --pos-danger: var(--aksa-action-danger-text);
    --pos-danger-tint: var(--aksa-action-danger-bg);
}

/* =====================================================================
   AKSA ERP — Inventory document/list contract v20260726
   Reuses the existing operation editor/list chrome used by sales and
   purchases. Business behavior remains owned by the current Razor pages
   and warehouse services; this section only standardizes hierarchy,
   spacing, states, responsive behavior, and line-workspace presentation.
   ===================================================================== */
.aksa-inventory-document,
.aksa-inventory-list {
    --aksa-inventory-accent-rgb: 37, 99, 235;
    min-width: 0;
    color: var(--aksa-text);
    font-variant-numeric: tabular-nums;
}

.aksa-inventory-document--stock-in,
.aksa-inventory-list--stock-in {
    --aksa-inventory-accent-rgb: 18, 128, 92;
}

.aksa-inventory-document--stock-out,
.aksa-inventory-list--stock-out {
    --aksa-inventory-accent-rgb: 194, 65, 53;
}

.aksa-inventory-document--transfer,
.aksa-inventory-list--transfer {
    --aksa-inventory-accent-rgb: 37, 99, 235;
}

.aksa-inventory-document .aksa-operation-header {
    border-block-start: 3px solid rgba(var(--aksa-inventory-accent-rgb), .78) !important;
}

.aksa-inventory-document .aksa-operation-controlpanel,
.aksa-inventory-document .st-process-controlbar {
    min-width: 0;
}

.aksa-inventory-document .aksa-operation-actions,
.aksa-inventory-document .aksa-operation-status {
    min-width: 0;
}

.aksa-inventory-document .aksa-operation-status {
    padding-inline: .15rem;
}

.aksa-inventory-document .aksa-operation-sheet {
    position: relative;
    border: 1px solid var(--aksa-border) !important;
    border-radius: var(--aksa-radius-xl) !important;
    background: var(--aksa-surface-raised) !important;
    box-shadow: var(--aksa-shadow-sm) !important;
}

.aksa-inventory-sheet-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem 1.5rem;
    min-width: 0;
}

.aksa-inventory-sheet-heading {
    min-width: 0;
}

.aksa-inventory-sheet-kicker {
    display: block;
    margin-block-end: .18rem;
    color: rgba(var(--aksa-inventory-accent-rgb), .94);
    font-size: .69rem;
    font-weight: 850;
    letter-spacing: .035em;
    line-height: 1.2;
    text-transform: uppercase;
}

.aksa-inventory-sheet-heading h1 {
    overflow: hidden;
    margin: 0;
    color: var(--aksa-text);
    font-size: clamp(1.15rem, 1.65vw, 1.55rem);
    font-weight: 880;
    letter-spacing: -.022em;
    line-height: 1.18;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aksa-inventory-sheet-facts {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .3rem .5rem;
    margin-block-start: .42rem;
    color: var(--aksa-text-muted);
    font-size: .72rem;
    font-weight: 650;
    line-height: 1.35;
}

.aksa-inventory-sheet-facts strong {
    color: var(--aksa-text);
    font-weight: 800;
}

.aksa-inventory-fact-dot {
    width: .24rem;
    height: .24rem;
    flex: 0 0 .24rem;
    border-radius: 999px;
    background: var(--aksa-border-strong);
}

.aksa-inventory-sheet-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(5.5rem, auto));
    gap: .4rem;
    min-width: 0;
}

.aksa-inventory-metric {
    display: grid;
    align-content: center;
    gap: .1rem;
    min-height: 3.45rem;
    padding: .5rem .65rem;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius-lg);
    background: var(--aksa-surface-muted);
    text-align: start;
}

.aksa-inventory-metric > span {
    color: var(--aksa-text-muted);
    font-size: .65rem;
    font-weight: 760;
    line-height: 1.2;
}

.aksa-inventory-metric > strong {
    color: var(--aksa-text);
    font-size: .91rem;
    font-weight: 870;
    line-height: 1.2;
}

.aksa-inventory-metric--status {
    min-width: 7rem;
}

.aksa-inventory-metric--status > strong.badge {
    width: max-content;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aksa-inventory-document .aksa-warehouse-form-columns,
.aksa-inventory-document .st-form-groups {
    margin-block-start: .15rem;
}

.aksa-inventory-document .aksa-warehouse-form-row,
.aksa-inventory-document .st-form-cell {
    min-height: 2.5rem;
}

.aksa-inventory-document .aksa-warehouse-owner-toggle,
.aksa-inventory-document .st-owner-switch {
    border-color: var(--aksa-border-strong);
    background: var(--aksa-surface-muted);
}

.aksa-inventory-document .aksa-warehouse-owner-toggle .btn-primary,
.aksa-inventory-document .st-owner-switch__btn.is-active {
    border-color: rgba(var(--aksa-inventory-accent-rgb), .22) !important;
    background: rgba(var(--aksa-inventory-accent-rgb), .1) !important;
    color: rgb(var(--aksa-inventory-accent-rgb)) !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .06) !important;
}

.aksa-inventory-lines {
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius-xl);
    background: var(--aksa-surface-raised);
    box-shadow: var(--aksa-shadow-xs);
}

.aksa-inventory-lines .warehouse-component-shell,
.aksa-inventory-lines .warehouse-lines-panel,
.aksa-inventory-lines .warehouse-lines-board {
    border-radius: inherit;
}

.aksa-inventory-document details.aksa-warehouse-secondary-section,
.aksa-inventory-document details.st-secondary-section,
.aksa-inventory-document details.aksa-warehouse-audit-details,
.aksa-inventory-document details.st-audit-details {
    border-color: var(--aksa-border) !important;
    border-radius: var(--aksa-radius-lg) !important;
    background: var(--aksa-surface-raised) !important;
    box-shadow: var(--aksa-shadow-xs);
}

.aksa-inventory-document details > summary {
    min-height: 2.6rem;
    color: var(--aksa-text-muted);
    font-weight: 780;
}

/* Inventory list pages: same toolbar rhythm as sales/purchases, with a
   restrained process-specific accent rather than three unrelated designs. */
.aksa-inventory-list {
    display: grid;
    gap: .75rem;
}

.aksa-inventory-list__toolbar {
    border-block-start: 3px solid rgba(var(--aksa-inventory-accent-rgb), .78) !important;
}

.aksa-inventory-list .inventory-list-filterstrip {
    display: flex;
    align-items: end;
    flex-wrap: wrap;
    gap: .6rem .75rem;
    padding: .65rem .75rem;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius-lg);
    background: var(--aksa-surface-raised);
    box-shadow: var(--aksa-shadow-xs);
}

.aksa-inventory-list .inventory-list-filterstrip__field {
    display: grid;
    gap: .25rem;
    min-width: 10.5rem;
}

.aksa-inventory-list .inventory-list-filterstrip__field label {
    margin: 0;
    color: var(--aksa-text-muted);
    font-size: .68rem;
    font-weight: 780;
}

.aksa-inventory-list .inventory-list-filterstrip__actions {
    display: flex;
    align-items: center;
    gap: .35rem;
    margin-inline-start: auto;
}

.aksa-inventory-list__grid {
    border-color: var(--aksa-border) !important;
    border-radius: var(--aksa-radius-xl) !important;
    background: var(--aksa-surface-raised) !important;
    box-shadow: var(--aksa-shadow-xs);
}

.aksa-inventory-list__grid .rz-grid-table thead th,
.aksa-inventory-list__grid .rz-datatable-thead th {
    background: linear-gradient(180deg, var(--aksa-surface-muted), var(--aksa-surface-soft)) !important;
    color: var(--aksa-text-muted) !important;
}

.aksa-inventory-list__grid .rz-grid-table tbody tr:hover td,
.aksa-inventory-list__grid .rz-datatable-data tr:hover td {
    background: rgba(var(--aksa-inventory-accent-rgb), .045) !important;
}

.aksa-inventory-list .aksa-stock-primary-cell__main {
    color: rgb(var(--aksa-inventory-accent-rgb));
}

.aksa-inventory-list .aksa-stock-document-link:focus-visible {
    border-radius: .3rem;
    outline: 2px solid rgba(var(--aksa-inventory-accent-rgb), .35);
    outline-offset: .18rem;
}

@media (max-width: 1199.98px) {
    .aksa-inventory-sheet-header {
        align-items: stretch;
        flex-direction: column;
    }

    .aksa-inventory-sheet-metrics {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        width: 100%;
    }
}

@media (max-width: 991.98px) {
    .aksa-inventory-list__toolbar {
        grid-template-columns: 1fr !important;
        align-items: stretch !important;
    }

    .aksa-inventory-list__toolbar > * {
        width: 100%;
    }
}

@media (max-width: 767.98px) {
    .aksa-inventory-sheet-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aksa-inventory-metric--status {
        grid-column: 1 / -1;
    }

    .aksa-inventory-document .aksa-warehouse-form-columns,
    .aksa-inventory-document .st-form-groups {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .aksa-inventory-document .aksa-warehouse-form-group + .aksa-warehouse-form-group,
    .aksa-inventory-document .st-form-group--document {
        padding-inline-start: 0 !important;
        padding-block-start: .75rem;
        border-inline-start: 0 !important;
        border-block-start: 1px solid var(--aksa-border);
    }

    .aksa-inventory-list .inventory-list-filterstrip__field {
        flex: 1 1 10rem;
    }

    .aksa-inventory-list .inventory-list-filterstrip__actions {
        width: 100%;
        margin-inline-start: 0;
    }
}

@media (max-width: 575.98px) {
    .aksa-inventory-sheet-heading h1 {
        white-space: normal;
    }

    .aksa-inventory-sheet-facts {
        align-items: flex-start;
        flex-direction: column;
        gap: .22rem;
    }

    .aksa-inventory-fact-dot {
        display: none;
    }

    .aksa-inventory-sheet-metrics {
        grid-template-columns: minmax(0, 1fr);
    }

    .aksa-inventory-metric--status {
        grid-column: auto;
    }

    .aksa-inventory-document .aksa-warehouse-form-row,
    .aksa-inventory-document .st-form-cell,
    .aksa-inventory-document .st-form-group--party,
    .aksa-inventory-document .st-form-group--delivery,
    .aksa-inventory-document .st-form-group--source-reference {
        grid-template-columns: minmax(0, 1fr) !important;
        align-items: stretch !important;
        gap: .28rem !important;
    }

    .aksa-inventory-list .inventory-list-filterstrip__field,
    .aksa-inventory-list .inventory-list-filterstrip__actions {
        width: 100%;
        flex-basis: 100%;
    }

    .aksa-inventory-list .inventory-list-filterstrip__actions .btn {
        flex: 1 1 0;
    }
}

/* ============================================================================
   Purchase receiving editor — master-input composition
   Global owner: the current project does not rely on component-scoped Razor
   CSS for production UI fixes. This block is intentionally page-scoped by
   .purchase-receiving-process and only changes presentation/layout.
   ============================================================================ */

.purchase-receiving-process {
    --purchase-receiving-control-height: 38px;
    --purchase-receiving-gap: .75rem;
    min-width: 0;
}

.purchase-receiving-process .purchase-receiving-titlebar {
    align-items: center;
    margin-block-end: .75rem;
}

.purchase-receiving-process .purchase-receiving-titlebar .purchase-doc-facts {
    justify-content: flex-end;
    margin-top: 0;
}

.purchase-receiving-process .purchase-receiving-master-surface {
    display: grid;
    gap: .72rem;
    min-width: 0;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius);
    background: var(--aksa-surface);
    padding: .78rem .85rem;
}

.purchase-receiving-process .purchase-receiving-input-section {
    display: grid;
    gap: 0;
    min-width: 0;
}

.purchase-receiving-process .purchase-receiving-input-section + .purchase-receiving-input-section {
    border-block-start: 1px solid var(--aksa-border);
    padding-block-start: .8rem;
}


.purchase-receiving-process .purchase-receiving-party-grid,
.purchase-receiving-process .purchase-receiving-document-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: .6rem .72rem;
    min-width: 0;
}

.purchase-receiving-process .purchase-receiving-input {
    display: grid;
    align-content: start;
    gap: .26rem;
    min-width: 0;
}

.purchase-receiving-process .purchase-receiving-input--vendor {
    grid-column: span 7;
}

.purchase-receiving-process .purchase-receiving-input--recipient {
    grid-column: span 5;
}

.purchase-receiving-process .purchase-receiving-input--order-type,
.purchase-receiving-process .purchase-receiving-input--warehouse {
    grid-column: span 3;
}

.purchase-receiving-process .purchase-receiving-input--date,
.purchase-receiving-process .purchase-receiving-input--reference {
    grid-column: span 2;
}

.purchase-receiving-process .purchase-receiving-input > .form-label {
    margin: 0;
    color: var(--aksa-text-muted);
    font-size: .72rem;
    font-weight: 750;
    line-height: 1.25;
}

.purchase-receiving-process .purchase-receiving-input-control,
.purchase-receiving-process .purchase-receiving-input-control > * {
    min-width: 0;
    width: 100%;
}

.purchase-receiving-process .purchase-receiving-input-control .rz-textbox,
.purchase-receiving-process .purchase-receiving-input-control .rz-dropdown,
.purchase-receiving-process .purchase-receiving-input-control .rz-datepicker,
.purchase-receiving-process .purchase-receiving-input-control .rz-numeric,
.purchase-receiving-process .purchase-receiving-input-control .rz-form-field,
.purchase-receiving-process .purchase-receiving-input-control .form-control,
.purchase-receiving-process .purchase-receiving-input-control .form-select,
.purchase-receiving-process .purchase-receiving-input-control .warehouse-store-picker,
.purchase-receiving-process .purchase-receiving-input-control .aksa-account-detail-picker-field {
    width: 100%;
    min-height: var(--purchase-receiving-control-height);
    margin: 0;
}

.purchase-receiving-process .purchase-receiving-input-control .rz-textbox,
.purchase-receiving-process .purchase-receiving-input-control .rz-dropdown,
.purchase-receiving-process .purchase-receiving-input-control .rz-datepicker,
.purchase-receiving-process .purchase-receiving-input-control .rz-numeric,
.purchase-receiving-process .purchase-receiving-input-control .form-control,
.purchase-receiving-process .purchase-receiving-input-control .form-select,
.purchase-receiving-process .purchase-receiving-input-control .warehouse-store-picker__input,
.purchase-receiving-process .purchase-receiving-input-control .aksa-account-detail-picker-input {
    min-height: var(--purchase-receiving-control-height);
    font-size: .82rem;
}

/* The vendor header uses the dedicated account-detail picker constrained to
   supplier account types; keep it visually aligned with the other master fields. */
.purchase-receiving-process .purchase-receiving-vendor-picker .aksa-account-detail-picker-field,
.purchase-receiving-process .purchase-receiving-vendor-picker .aksa-account-detail-picker-input {
    width: 100%;
    min-height: var(--purchase-receiving-control-height);
    margin: 0;
}

.purchase-receiving-process .purchase-receiving-vendor-facts {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .18rem .55rem;
    min-width: 0;
    margin-top: .22rem;
    color: var(--aksa-text-muted);
    font-size: .69rem;
    line-height: 1.35;
}

.purchase-receiving-process .purchase-receiving-vendor-facts > * + *::before {
    content: "•";
    margin-inline-end: .55rem;
    color: var(--aksa-border-strong);
}

.purchase-receiving-process .purchase-receiving-vendor-facts strong {
    color: var(--aksa-text);
    font-weight: 750;
}

.purchase-receiving-process .purchase-receiving-vendor-address {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Payments are already rich controls. Avoid wrapping each row inside a one-
   column data-grid whose header and cell chrome add no information. */
.purchase-receiving-process .purchase-receiving-payment-list {
    display: grid;
    gap: 0;
    min-width: 0;
}

.purchase-receiving-process .purchase-payments-panel > fieldset {
    padding: 0 !important;
}

.purchase-receiving-process .purchase-receiving-payment-row {
    min-width: 0;
    padding: .55rem .65rem;
}

.purchase-receiving-process .purchase-receiving-payment-row + .purchase-receiving-payment-row {
    border-block-start: 1px solid var(--aksa-border);
}

.purchase-receiving-process .purchase-receiving-payment-row .payment-inline-shell {
    gap: .55rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    padding: 0;
}

.purchase-receiving-process .purchase-receiving-payment-row .payment-inline-row {
    gap: .55rem;
}

/* Secondary information keeps notes dominant and operational flags compact. */
.purchase-receiving-process .purchase-receiving-secondary-grid {
    grid-template-columns: minmax(0, 1.35fr) minmax(22rem, .65fr);
    gap: .72rem;
}

.purchase-receiving-process .purchase-receiving-notes-panel,
.purchase-receiving-process .purchase-receiving-advanced-panel {
    border-color: var(--aksa-border);
    background: var(--aksa-surface);
    box-shadow: none;
}

.purchase-receiving-process .purchase-receiving-advanced-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .55rem;
}

.purchase-receiving-process .purchase-receiving-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .65rem;
    min-height: 42px;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius-sm, .375rem);
    background: var(--aksa-surface-muted);
    padding: .4rem .55rem;
}

.purchase-receiving-process .purchase-receiving-toggle > .form-label {
    margin: 0;
    color: var(--aksa-text);
    font-size: .74rem;
    font-weight: 700;
}

.purchase-receiving-process .purchase-receiving-toggle .purchase-field-control {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-height: 0;
}

.purchase-receiving-process .purchase-receiving-advanced-field {
    grid-template-columns: 1fr;
    align-items: start;
    row-gap: .28rem;
}

.purchase-receiving-process .purchase-receiving-advanced-field > .form-label {
    padding-top: 0;
}

.purchase-receiving-process .purchase-receiving-notes-panel .purchase-field-description {
    grid-template-columns: 1fr;
    row-gap: .28rem;
}

.purchase-receiving-process .purchase-receiving-notes-panel .purchase-field-description > .form-label {
    padding-top: 0;
}

.purchase-receiving-process .purchase-receiving-notes-panel .rz-textarea {
    min-height: 6.75rem;
    resize: vertical;
}

@media (max-width: 1199.98px) {
    .purchase-receiving-process .purchase-receiving-input--order-type,
    .purchase-receiving-process .purchase-receiving-input--warehouse {
        grid-column: span 6;
    }

    .purchase-receiving-process .purchase-receiving-input--date,
    .purchase-receiving-process .purchase-receiving-input--reference {
        grid-column: span 4;
    }

    .purchase-receiving-process .purchase-receiving-secondary-grid {
        grid-template-columns: minmax(0, 1fr) minmax(18rem, .75fr);
    }
}

@media (max-width: 991.98px) {
    .purchase-receiving-process .purchase-receiving-titlebar {
        align-items: flex-start;
    }

    .purchase-receiving-process .purchase-receiving-titlebar .purchase-doc-facts {
        justify-content: flex-start;
    }

    .purchase-receiving-process .purchase-receiving-input--vendor,
    .purchase-receiving-process .purchase-receiving-input--recipient {
        grid-column: span 12;
    }

    .purchase-receiving-process .purchase-receiving-secondary-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .purchase-receiving-process .purchase-receiving-master-surface {
        padding: .7rem;
    }

    .purchase-receiving-process .purchase-receiving-input--vendor,
    .purchase-receiving-process .purchase-receiving-input--recipient,
    .purchase-receiving-process .purchase-receiving-input--order-type,
    .purchase-receiving-process .purchase-receiving-input--warehouse,
    .purchase-receiving-process .purchase-receiving-input--date,
    .purchase-receiving-process .purchase-receiving-input--reference {
        grid-column: 1 / -1;
    }

    .purchase-receiving-process .purchase-receiving-advanced-grid {
        grid-template-columns: 1fr;
    }

    .purchase-receiving-process .purchase-receiving-vendor-facts > * + *::before {
        content: none;
        margin: 0;
    }
}


/* ===== Header messaging notifications =====
   Global shell-owned styling. This component intentionally does not depend on
   Razor CSS isolation so the header tray stays consistent with the active theme. */
.messaging-notifications {
    position: relative;
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
}

.messaging-notifications .messaging-notifications__toggle {
    border-radius: 10px;
}

.messaging-notifications .messaging-notifications__toggle-badge {
    position: absolute;
    inset-block-start: -5px;
    inset-inline-end: -6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding-inline: 4px;
    border: 2px solid var(--aksa-surface-raised, var(--aksa-surface));
    border-radius: 999px;
    font-size: .62rem;
    font-weight: 800;
    line-height: 1;
}

.messaging-notifications .messaging-notifications__menu {
    width: min(24rem, calc(100vw - 1rem)) !important;
    max-width: calc(100vw - 1rem) !important;
    overflow: hidden;
    border: 1px solid var(--aksa-border) !important;
    border-radius: .85rem !important;
    background: var(--aksa-surface-raised, var(--aksa-surface)) !important;
    color: var(--aksa-text) !important;
    box-shadow: var(--aksa-shadow-popover, var(--aksa-shadow-lg)) !important;
    text-align: start;
}

.messaging-notifications .messaging-notifications__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .7rem;
    padding: .78rem .85rem .68rem;
    border-bottom: 1px solid var(--aksa-border);
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--aksa-surface-raised, var(--aksa-surface)) 96%, #fff 4%),
        var(--aksa-surface-raised, var(--aksa-surface)));
}

.messaging-notifications .messaging-notifications__heading {
    flex: 1 1 auto;
    min-width: 0;
}

.messaging-notifications .messaging-notifications__title {
    color: var(--aksa-text) !important;
    font-size: .94rem;
    font-weight: 800;
    line-height: 1.35;
}

.messaging-notifications .messaging-notifications__hint {
    max-width: 20rem;
    margin-block-start: .15rem;
    color: var(--aksa-text-muted) !important;
    font-size: .69rem;
    font-weight: 550;
    line-height: 1.45;
}

.messaging-notifications .messaging-notifications__refresh-spinner {
    width: .8rem;
    height: .8rem;
    border-width: .12rem;
}

.messaging-notifications .messaging-notifications__mark-all {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .3rem;
    flex: 0 0 auto;
    min-height: 30px;
    padding: .28rem .5rem;
    border: 1px solid transparent;
    border-radius: .5rem;
    background: transparent;
    color: var(--aksa-brand-600, var(--aksa-primary));
    font-size: .69rem;
    font-weight: 750;
    line-height: 1.2;
    white-space: nowrap;
    transition: background-color var(--aksa-transition, .15s ease),
        border-color var(--aksa-transition, .15s ease),
        color var(--aksa-transition, .15s ease);
}

.messaging-notifications .messaging-notifications__mark-all:hover:not(:disabled),
.messaging-notifications .messaging-notifications__mark-all:focus-visible {
    border-color: color-mix(in srgb, var(--aksa-brand-600, var(--aksa-primary)) 18%, var(--aksa-border));
    background: color-mix(in srgb, var(--aksa-brand-600, var(--aksa-primary)) 8%, var(--aksa-surface));
}

.messaging-notifications .messaging-notifications__mark-all:disabled {
    opacity: .55;
    cursor: default;
}

.messaging-notifications .messaging-notifications__list {
    max-height: min(22rem, calc(100vh - 10rem));
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    background: var(--aksa-surface-raised, var(--aksa-surface));
}

.messaging-notifications .messaging-notifications__item-shell {
    position: relative;
    border-bottom: 1px solid var(--aksa-border);
    background: var(--aksa-surface-raised, var(--aksa-surface));
    transition: background-color var(--aksa-transition, .15s ease), opacity var(--aksa-transition, .15s ease);
}

.messaging-notifications .messaging-notifications__item-shell:last-child {
    border-bottom: 0;
}

.messaging-notifications .messaging-notifications__item-shell--unread {
    background: color-mix(in srgb, var(--aksa-brand-600, var(--aksa-primary)) 4%, var(--aksa-surface-raised, var(--aksa-surface)));
}

.messaging-notifications .messaging-notifications__item-shell--unseen {
    background: color-mix(in srgb, var(--aksa-brand-600, var(--aksa-primary)) 8%, var(--aksa-surface-raised, var(--aksa-surface)));
}

.messaging-notifications .messaging-notifications__item-shell:hover,
.messaging-notifications .messaging-notifications__item-shell:focus-within,
.messaging-notifications .messaging-notifications__item-shell--unread:hover,
.messaging-notifications .messaging-notifications__item-shell--unread:focus-within,
.messaging-notifications .messaging-notifications__item-shell--unseen:hover,
.messaging-notifications .messaging-notifications__item-shell--unseen:focus-within {
    background: color-mix(in srgb, var(--aksa-brand-600, var(--aksa-primary)) 7%, var(--aksa-surface-muted));
}

.messaging-notifications .messaging-notifications__item-shell--working {
    opacity: .68;
}

.messaging-notifications .messaging-notifications__item {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    width: 100%;
    min-height: 64px;
    padding: .68rem .78rem;
    padding-inline-end: 2.75rem;
    color: inherit;
    text-decoration: none !important;
    cursor: pointer;
}

.messaging-notifications .messaging-notifications__item-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
}

.messaging-notifications .messaging-notifications__item-icon--info,
.messaging-notifications .messaging-notifications__item-icon--action {
    color: var(--aksa-brand-600, var(--aksa-primary));
    background: var(--aksa-info-soft, var(--aksa-primary-soft));
}

.messaging-notifications .messaging-notifications__item-icon--warning {
    color: var(--aksa-warning, var(--bs-warning));
    background: var(--aksa-warning-soft, var(--bs-light-warning));
}

.messaging-notifications .messaging-notifications__item-icon--danger {
    color: var(--aksa-danger, var(--bs-danger));
    background: var(--aksa-danger-soft, var(--bs-light-danger));
}

.messaging-notifications .messaging-notifications__item-content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: .16rem;
    min-width: 0;
    overflow: hidden;
}

.messaging-notifications .messaging-notifications__item-title {
    display: -webkit-box;
    overflow: hidden;
    color: var(--aksa-text) !important;
    font-size: .78rem;
    font-weight: 800;
    line-height: 1.4;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.messaging-notifications .messaging-notifications__item-body {
    display: -webkit-box;
    overflow: hidden;
    color: var(--aksa-text-muted) !important;
    font-size: .7rem;
    font-weight: 500;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.messaging-notifications .messaging-notifications__item-meta {
    display: flex;
    align-items: center;
    gap: .28rem;
    min-width: 0;
    margin-block-start: .1rem;
    overflow: hidden;
    color: var(--aksa-text-soft, var(--aksa-text-muted)) !important;
    font-size: .64rem;
    font-weight: 650;
    line-height: 1.35;
    white-space: nowrap;
}

.messaging-notifications .messaging-notifications__item-meta > span,
.messaging-notifications .messaging-notifications__item-meta > time {
    overflow: hidden;
    text-overflow: ellipsis;
}

.messaging-notifications .messaging-notifications__meta-separator {
    flex: 0 0 auto;
    color: var(--aksa-border-strong);
}

.messaging-notifications .messaging-notifications__unread-dot {
    align-self: center;
    flex: 0 0 7px;
    width: 7px;
    height: 7px;
    margin-inline-start: .08rem;
    border-radius: 50%;
    background: var(--aksa-brand-600, var(--aksa-primary));
    opacity: .55;
}

.messaging-notifications .messaging-notifications__item-shell--unseen .messaging-notifications__unread-dot {
    opacity: 1;
}

.messaging-notifications .messaging-notifications__dismiss {
    position: absolute;
    z-index: 2;
    inset-block-start: .58rem;
    inset-inline-end: .5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 1px solid transparent;
    border-radius: 50%;
    background: var(--aksa-surface-raised, var(--aksa-surface));
    color: var(--aksa-text-muted);
    opacity: 0;
    transition: opacity var(--aksa-transition, .15s ease),
        color var(--aksa-transition, .15s ease),
        background-color var(--aksa-transition, .15s ease),
        border-color var(--aksa-transition, .15s ease);
}

.messaging-notifications .messaging-notifications__item-shell:hover .messaging-notifications__dismiss,
.messaging-notifications .messaging-notifications__item-shell:focus-within .messaging-notifications__dismiss,
.messaging-notifications .messaging-notifications__dismiss:focus-visible,
.messaging-notifications .messaging-notifications__item-shell--working .messaging-notifications__dismiss {
    opacity: 1;
}

.messaging-notifications .messaging-notifications__dismiss:hover:not(:disabled),
.messaging-notifications .messaging-notifications__dismiss:focus-visible {
    border-color: color-mix(in srgb, var(--aksa-danger, var(--bs-danger)) 18%, var(--aksa-border));
    background: var(--aksa-danger-soft, var(--bs-light-danger));
    color: var(--aksa-danger, var(--bs-danger));
}

.messaging-notifications .messaging-notifications__dismiss:disabled {
    cursor: default;
}

.messaging-notifications .messaging-notifications__empty {
    padding: 1.8rem 1rem 1.65rem;
    text-align: center;
}

.messaging-notifications .messaging-notifications__empty-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    margin-block-end: .65rem;
    border-radius: 50%;
    background: var(--aksa-surface-muted);
    color: var(--aksa-text-soft, var(--aksa-text-muted));
}

.messaging-notifications .messaging-notifications__footer {
    padding: .48rem .65rem;
    border-top: 1px solid var(--aksa-border);
    background: var(--aksa-surface-raised, var(--aksa-surface));
}

.messaging-notifications .messaging-notifications__view-all {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    min-height: 32px;
    border-radius: .5rem;
    color: var(--aksa-brand-600, var(--aksa-primary));
    font-size: .72rem;
    font-weight: 750;
    text-decoration: none !important;
    transition: background-color var(--aksa-transition, .15s ease);
}

.messaging-notifications .messaging-notifications__view-all:hover,
.messaging-notifications .messaging-notifications__view-all:focus-visible {
    background: color-mix(in srgb, var(--aksa-brand-600, var(--aksa-primary)) 8%, var(--aksa-surface));
    color: var(--aksa-brand-600, var(--aksa-primary));
}

.messaging-notifications .messaging-notifications__skeletons {
    display: flex;
    flex-direction: column;
}

.messaging-notifications .messaging-notifications__skeleton {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    padding: .72rem .8rem;
    border-bottom: 1px solid var(--aksa-border);
}

.messaging-notifications .messaging-notifications__skeleton:last-child {
    border-bottom: 0;
}

.messaging-notifications .messaging-notifications__skeleton-icon,
.messaging-notifications .messaging-notifications__skeleton-copy > span {
    background: linear-gradient(
        90deg,
        color-mix(in srgb, var(--aksa-text-muted) 8%, transparent) 25%,
        color-mix(in srgb, var(--aksa-text-muted) 16%, transparent) 37%,
        color-mix(in srgb, var(--aksa-text-muted) 8%, transparent) 63%);
    background-size: 400% 100%;
    animation: aksa-messaging-notifications-shimmer 1.3s ease infinite;
}

.messaging-notifications .messaging-notifications__skeleton-icon {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
}

.messaging-notifications .messaging-notifications__skeleton-copy {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: .38rem;
    padding-block-start: .12rem;
}

.messaging-notifications .messaging-notifications__skeleton-copy > span {
    height: 7px;
    border-radius: 999px;
}

.messaging-notifications .messaging-notifications__skeleton-copy > span:nth-child(1) {
    width: 62%;
}

.messaging-notifications .messaging-notifications__skeleton-copy > span:nth-child(2) {
    width: 88%;
}

.messaging-notifications .messaging-notifications__skeleton-copy > span:nth-child(3) {
    width: 40%;
}

@keyframes aksa-messaging-notifications-shimmer {
    0% { background-position: 100% 0; }
    100% { background-position: 0 0; }
}

@media (hover: none) {
    .messaging-notifications .messaging-notifications__dismiss {
        opacity: 1;
    }
}

@media (max-width: 575.98px) {
    .messaging-notifications .messaging-notifications__menu {
        width: min(22.5rem, calc(100vw - .75rem)) !important;
        max-width: calc(100vw - .75rem) !important;
        border-radius: .75rem !important;
    }

    .messaging-notifications .messaging-notifications__header {
        padding: .72rem .75rem .62rem;
    }

    .messaging-notifications .messaging-notifications__hint {
        max-width: 14rem;
    }

    .messaging-notifications .messaging-notifications__mark-all {
        width: 30px;
        min-width: 30px;
        padding: 0;
    }

    .messaging-notifications .messaging-notifications__mark-all > span:last-child {
        display: none;
    }

    .messaging-notifications .messaging-notifications__item {
        padding-block: .64rem;
        padding-inline-start: .72rem;
        padding-inline-end: 2.65rem;
    }

    .messaging-notifications .messaging-notifications__dismiss {
        inset-inline-end: .42rem;
    }

    .messaging-notifications .messaging-notifications__list {
        max-height: min(20rem, calc(100vh - 9rem));
    }
}

@media (prefers-reduced-motion: reduce) {
    .messaging-notifications .messaging-notifications__mark-all,
    .messaging-notifications .messaging-notifications__item-shell,
    .messaging-notifications .messaging-notifications__dismiss,
    .messaging-notifications .messaging-notifications__view-all,
    .messaging-notifications .messaging-notifications__skeleton-icon,
    .messaging-notifications .messaging-notifications__skeleton-copy > span {
        transition: none;
        animation: none;
    }
}

/* /admin: readable action workspace. This block belongs to the loaded global theme. */
.aksa-home {
    container: aksa-home / inline-size;
    --home-link: var(--aksa-primary);
    --home-danger: #b42318;
    --home-warning: #93600c;
    --home-muted: var(--aksa-text-muted);
    --home-accent: var(--aksa-primary);
    display: grid;
    gap: 18px;
    min-width: 0;
    padding-block-end: 20px;
    color: var(--aksa-text);
    font-size: 15px;
    line-height: 1.65;
}
.aksa-home *, .aksa-home *::before, .aksa-home *::after { box-sizing: border-box; }
.aksa-home h1, .aksa-home h2, .aksa-home h3, .aksa-home p { margin: 0; }
.aksa-home button, .aksa-home input { font: inherit; }
.aksa-home button { cursor: pointer; }
.aksa-home button:disabled { cursor: wait; opacity: .65; }
.aksa-home a { color: inherit; text-decoration: none; }
.aksa-home a:hover { color: var(--home-link); }
.aksa-home :is(a, button, summary, input):focus-visible { outline: 2px solid var(--home-link); outline-offset: 3px; }
.aksa-home .rzi { font-size: 20px; flex-shrink: 0; }
.aksa-home .tone-pm { --home-accent: #6941c6; }
.aksa-home .tone-finance { --home-accent: #2563eb; }
.aksa-home .tone-inventory { --home-accent: #087f70; }
.aksa-home .tone-hr { --home-accent: #a65e10; }
.aksa-home .tone-logistics { --home-accent: #0e7490; }
.aksa-home .tone-danger { --home-accent: var(--home-danger); }
.aksa-home__header, .aksa-home__header-actions, .aksa-home__context { display: flex; align-items: center; gap: 12px; }
.aksa-home__header { justify-content: space-between; padding-block: 2px 0; }
.aksa-home__welcome { min-width: 0; }
.aksa-home__welcome h1 { font-size: clamp(22px, 1.8vw, 28px); font-weight: 700; line-height: 1.6; overflow-wrap: anywhere; }
.aksa-home__context { gap: 8px; flex-wrap: wrap; color: var(--home-muted); font-size: 13px; }
.aksa-home__context > span + span::before { content: "·"; margin-inline-end: 8px; }
.aksa-home__header-actions { flex-shrink: 0; }
.aksa-home__date { color: var(--home-muted); font-size: 13px; }
.aksa-home__button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 40px; padding: 7px 13px; border: 1px solid var(--aksa-border-strong); border-radius: 8px; color: var(--aksa-text); background: var(--aksa-surface); font-size: 14px; font-weight: 600; line-height: 1.6; }
.aksa-home__button:hover { background: var(--aksa-surface-muted); }
.aksa-home .aksa-home__button--primary { border-color: var(--aksa-primary); background: var(--aksa-primary); color: var(--aksa-on-primary); white-space: nowrap; }
.aksa-home .aksa-home__button--primary:hover { background: var(--aksa-primary-hover); color: var(--aksa-on-primary); }
.aksa-home__modules { display: flex; align-items: stretch; flex-wrap: wrap; gap: 4px 16px; border-block-end: 1px solid var(--aksa-border); }
.aksa-home__module { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 45px; padding: 6px 3px 11px; border: 0; border-block-end: 2px solid transparent; border-radius: 0; background: transparent; color: var(--home-muted); font-size: 14px; line-height: 1.6; font-weight: 500; }
.aksa-home__module .rzi { font-size: 18px; }
.aksa-home__module.is-active { color: var(--home-link); border-block-end-color: var(--home-link); font-weight: 700; }
.aksa-home__module:hover { color: var(--home-link); }
.aksa-home__reports { min-width: 0; }
.aksa-home__metrics-toggle--mobile { display: none; }
.aksa-home__section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 17px 18px; }
.aksa-home__section-head h2 { font-size: 16px; font-weight: 700; line-height: 1.6; }
.aksa-home__section-head > .rzi { color: var(--home-muted); }
.aksa-home__section-head p { color: var(--home-muted); font-size: 13px; }
.aksa-home__section-head--plain { padding: 0 0 10px; }
.aksa-home__section-head--plain h2 { font-size: 14px; color: var(--home-muted); font-weight: 600; }
.aksa-home__text-button { display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 32px; padding: 3px 0; border: 0; border-radius: 4px; background: transparent; color: var(--home-link); font-size: 13px; font-weight: 600; }
.aksa-home__text-button .rzi { font-size: 17px; }
.aksa-home__metrics { display: flex; flex-wrap: wrap; gap: 12px; align-items: stretch; }
.aksa-home__metric { flex: 1 1 170px; min-width: 0; padding: 14px 16px 10px; background: var(--aksa-surface); border: 1px solid var(--aksa-border); border-radius: 10px; box-shadow: var(--aksa-shadow-sm); display: flex; flex-direction: column; }
.aksa-home__metric-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.aksa-home__metric-module { color: var(--home-muted); font-size: 13px; line-height: 1.7; }
.aksa-home__metric-icon { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 8px; background: color-mix(in srgb, var(--home-accent) 8%, var(--aksa-surface)); color: var(--home-accent); flex-shrink: 0; }
.aksa-home__metric-icon .rzi { font-size: 18px; }
.aksa-home__metric-reading { display: flex; align-items: baseline; flex-wrap: wrap; gap: 2px 6px; margin-block: 10px 5px; }
.aksa-home__metric-reading strong { font-family: var(--aksa-ui-font-family); font-size: 28px; font-weight: 700; line-height: 1.3; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; max-width: 100%; }
.aksa-home__metric-reading > span { font-size: 12px; color: var(--home-muted); }
.aksa-home__metric-title { display: flex; justify-content: space-between; align-items: center; gap: 8px; font-size: 14px; line-height: 1.75; font-weight: 600; overflow-wrap: anywhere; }
.aksa-home__metric-title .rzi { color: var(--home-muted); font-size: 16px; }
.aksa-home__metric-details { margin-block-start: auto; padding-block-start: 7px; }
.aksa-home__metric-details summary, .aksa-home__work-details summary { display: inline-flex; align-items: center; gap: 3px; color: var(--home-muted); font-size: 12px; line-height: 1.8; cursor: pointer; list-style: none; border-radius: 3px; padding-block: 3px; }
.aksa-home__metric-details summary::-webkit-details-marker, .aksa-home__work-details summary::-webkit-details-marker, .aksa-home__sources summary::-webkit-details-marker { display: none; }
.aksa-home__metric-details summary .rzi, .aksa-home__work-details summary .rzi { font-size: 16px; }
.aksa-home details[open] > summary > .rzi:last-child { transform: rotate(180deg); }
.aksa-home__metric-details > div, .aksa-home__work-details > div { padding-block: 5px; color: var(--home-muted); font-size: 13px; line-height: 1.85; overflow-wrap: anywhere; }
.aksa-home__metric-details p:empty, .aksa-home__work-details p:empty { display: none; }
.aksa-home__metric-details p + p, .aksa-home__work-details p + p { margin-block-start: 5px; }
.aksa-home__workspace { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 31%); gap: 18px; align-items: start; min-width: 0; }
.aksa-home__panel { min-width: 0; border: 1px solid var(--aksa-border); border-radius: 10px; background: var(--aksa-surface); box-shadow: var(--aksa-shadow-sm); }
.aksa-home__aside { display: grid; gap: 14px; min-width: 0; }
.aksa-home__heading { display: flex; align-items: center; gap: 10px; min-width: 0; }
.aksa-home__heading-icon { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 9px; background: var(--aksa-primary-soft); color: var(--home-link); flex-shrink: 0; }
.aksa-home__urgent { display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 36px; padding: 5px 8px; border: 1px solid color-mix(in srgb, var(--home-danger) 15%, var(--aksa-border)); background: var(--aksa-surface); border-radius: 7px; color: var(--home-danger); font-size: 13px; white-space: nowrap; }
.aksa-home__urgent .rzi { font-size: 16px; }
.aksa-home__urgent b { font-variant-numeric: tabular-nums; margin-inline-start: 3px; }
.aksa-home__urgent:hover, .aksa-home__urgent.is-active { background: color-mix(in srgb, var(--home-danger) 9%, var(--aksa-surface)); border-color: var(--home-danger); }
.aksa-home__toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; padding: 0 18px 14px; }
.aksa-home__focus { display: inline-flex; gap: 2px; align-items: center; padding: 3px; border-radius: 8px; background: var(--aksa-surface-muted); border: 1px solid var(--aksa-border); }
.aksa-home__focus button { display: inline-flex; justify-content: center; align-items: center; min-height: 34px; padding: 4px 9px; border-radius: 6px; border: 0; background: transparent; color: var(--home-muted); font-size: 13px; font-weight: 500; line-height: 1.7; }
.aksa-home__focus button.is-active { color: var(--aksa-text); background: var(--aksa-surface); box-shadow: var(--aksa-shadow-sm); font-weight: 700; }
.aksa-home__search { display: flex; align-items: center; gap: 6px; flex: 1 1 170px; min-width: 130px; max-width: 235px; padding: 5px 8px; border: 1px solid var(--aksa-border); border-radius: 7px; color: var(--home-muted); background: var(--aksa-surface); }
.aksa-home__search .rzi { font-size: 19px; }
.aksa-home__search input { min-width: 0; width: 100%; min-height: 28px; padding: 0; border: 0; outline: none; background: transparent; color: var(--aksa-text); font-size: 13px; }
.aksa-home__search input::placeholder { color: var(--home-muted); opacity: 1; }
.aksa-home__search:focus-within { border-color: var(--home-link); box-shadow: var(--aksa-ring); }
.aksa-home__filter-state { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; padding: 3px 18px 10px; color: var(--home-muted); font-size: 12px; }
.aksa-home__next { margin: 0 12px 6px; padding: 13px 15px 9px; border: 1px solid color-mix(in srgb, var(--aksa-primary) 18%, var(--aksa-border)); border-radius: 8px; background: color-mix(in srgb, var(--aksa-primary) 3%, var(--aksa-surface)); }
.aksa-home__next-top, .aksa-home__next-main { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.aksa-home__next-top { margin-block-end: 7px; }
.aksa-home__start { display: flex; align-items: center; gap: 6px; color: var(--home-link); font-size: 12px; font-weight: 600; }
.aksa-home__start .rzi { font-size: 16px; }
.aksa-home__badge { display: inline-flex; align-items: center; gap: 5px; padding: 2px 7px; border-radius: 5px; background: var(--aksa-primary-soft); color: var(--home-link); font-size: 12px; line-height: 1.6; font-weight: 600; }
.aksa-home__badge.is-danger { color: var(--home-danger); background: color-mix(in srgb, var(--home-danger) 8%, var(--aksa-surface)); }
.aksa-home__badge.is-warning { color: var(--home-warning); background: color-mix(in srgb, var(--home-warning) 8%, var(--aksa-surface)); }
.aksa-home__next-copy { min-width: 0; }
.aksa-home__next h3 { font-size: 16px; line-height: 1.9; font-weight: 700; overflow-wrap: anywhere; }
.aksa-home__next .aksa-home__button { flex-shrink: 0; min-height: 38px; font-size: 13px; padding-inline: 10px; }
.aksa-home__row-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 2px 9px; font-size: 12px; line-height: 1.9; color: var(--home-muted); }
.aksa-home__row-meta > span + span::before { content: "·"; color: var(--home-muted); margin-inline-end: 9px; }
.aksa-home__reason.is-danger { color: var(--home-danger); }
.aksa-home__reason.is-warning { color: var(--home-warning); }
.aksa-home__work-details { margin-block-start: 1px; }
.aksa-home__queue-row { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto auto; gap: 10px; align-items: start; padding: 12px 18px; border-block-end: 1px solid var(--aksa-border); }
.aksa-home__queue-row:last-child { border: 0; }
.aksa-home__queue-row:hover { background: var(--aksa-surface-muted); }
.aksa-home__queue-copy { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 10px; min-width: 0; }
.aksa-home__queue-copy > .aksa-home__work-title { flex: 1 0 100%; }
.aksa-home__queue-copy > .aksa-home__row-meta { flex: 1 1 auto; }
.aksa-home__queue-copy > .aksa-home__work-details[open] { flex-basis: 100%; }
.aksa-home__work-title { font-size: 15px; font-weight: 600; line-height: 1.9; overflow-wrap: anywhere; }
.aksa-home__icon { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 9px; color: var(--home-accent); background: color-mix(in srgb, var(--home-accent) 8%, var(--aksa-surface)); flex-shrink: 0; }
.aksa-home__icon .rzi { font-size: 19px; }
.aksa-home__queue-value { min-width: 30px; padding: 4px 6px; text-align: center; font-size: 17px; line-height: 1.6; font-weight: 700; font-variant-numeric: tabular-nums; }
.aksa-home__open { display: grid; place-items: center; min-width: 32px; min-height: 36px; border-radius: 7px; color: var(--home-muted); }
.aksa-home__open .rzi { font-size: 18px; }
.aksa-home__open:hover { background: var(--aksa-primary-soft); }
.aksa-home__more { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 6px; width: 100%; min-height: 44px; padding: 8px 14px; color: var(--home-link); font-size: 13px; font-weight: 600; border: 0; border-block-start: 1px solid var(--aksa-border); border-radius: 0 0 10px 10px; background: transparent; }
.aksa-home__more:hover { background: var(--aksa-surface-muted); }
.aksa-home__more .rzi { font-size: 18px; }
.aksa-home__panel-foot { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 6px; padding: 10px 16px; border-block-start: 1px solid var(--aksa-border); color: var(--home-muted); font-size: 12px; }
.aksa-home__panel-foot a { display: inline-flex; align-items: center; gap: 5px; color: var(--home-link); font-weight: 600; }
.aksa-home__panel-foot .rzi { font-size: 16px; }
.aksa-home__brief .aksa-home__section-head, .aksa-home__launch .aksa-home__section-head { padding-block: 14px 10px; }
.aksa-home__brief-items { padding-inline: 10px; }
.aksa-home__brief-item { display: flex; align-items: center; gap: 9px; width: 100%; min-height: 55px; padding: 8px; border: 0; border-radius: 7px; background: transparent; color: var(--aksa-text); text-align: start; font-size: 13px; line-height: 1.7; }
.aksa-home__brief-item:hover, .aksa-home__brief-item[aria-pressed="true"] { background: var(--aksa-surface-muted); }
.aksa-home__brief-item > span:nth-child(2) { flex: 1; }
.aksa-home__brief-item > b { font-size: 20px; font-weight: 700; font-variant-numeric: tabular-nums; }
.aksa-home__brief-item > .rzi { font-size: 17px; color: var(--home-muted); }
.aksa-home__brief-item .aksa-home__icon { width: 30px; height: 30px; border-radius: 7px; }
.aksa-home__basis { padding: 10px 18px 14px; color: var(--home-muted); font-size: 12px; line-height: 1.85; }
.aksa-home__links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 2px 10px 12px; gap: 4px; }
.aksa-home__links > a { display: flex; flex-direction: column; align-items: start; gap: 5px; border-radius: 8px; padding: 10px 8px; min-width: 0; }
.aksa-home__links > a:hover { background: var(--aksa-surface-muted); }
.aksa-home__links strong { font-size: 13px; font-weight: 600; line-height: 1.8; overflow-wrap: anywhere; }
.aksa-home__links small { color: var(--home-muted); font-size: 12px; line-height: 1.7; }
.aksa-home__links .aksa-home__icon { margin-block-end: 3px; }
.aksa-home__sources { min-width: 0; color: var(--home-muted); }
.aksa-home__sources > summary { display: flex; align-items: center; justify-content: space-between; gap: 7px; list-style: none; padding: 8px 4px; border-radius: 4px; cursor: pointer; font-size: 12px; }
.aksa-home__sources > summary > span { display: inline-flex; align-items: center; gap: 6px; flex: 1; }
.aksa-home__sources summary .rzi { font-size: 17px; }
.aksa-home__sources > div { padding: 8px 12px; border: 1px solid var(--aksa-border); border-radius: 8px; background: var(--aksa-surface); }
.aksa-home__sources article { padding: 9px 0; font-size: 12px; }
.aksa-home__sources article + article { border-block-start: 1px solid var(--aksa-border); }
.aksa-home__sources article > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.aksa-home__sources strong { color: var(--aksa-text); font-size: 13px; }
.aksa-home__sources article > p { margin-block: 4px; }
.aksa-home__sources small { font-size: 12px; }
.aksa-home__source-dot { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--aksa-border-strong); flex-shrink: 0; }
.aksa-home__source-dot.is-ready { background: #15803d; }
.aksa-home__source-dot.is-loading { background: var(--home-link); }
.aksa-home__source-dot.is-failed { background: var(--home-warning); }
.aksa-home__notice { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border: 1px solid color-mix(in srgb, var(--home-warning) 25%, var(--aksa-border)); border-radius: 8px; background: color-mix(in srgb, var(--home-warning) 4%, var(--aksa-surface)); color: var(--aksa-text); font-size: 13px; line-height: 1.85; }
.aksa-home__notice > span { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.aksa-home__notice > .rzi { color: var(--home-warning); }
.aksa-home__notice.is-danger { border-color: color-mix(in srgb, var(--home-danger) 25%, var(--aksa-border)); }
.aksa-home__notice.is-danger > .rzi { color: var(--home-danger); }
.aksa-home__empty { display: grid; justify-items: center; text-align: center; padding: 30px 22px; gap: 8px; }
.aksa-home__empty h3 { font-size: 16px; line-height: 1.8; }
.aksa-home__empty p { font-size: 13px; color: var(--home-muted); max-width: 480px; }
.aksa-home__empty-icon { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; color: var(--home-link); background: var(--aksa-primary-soft); margin-block-end: 4px; }
.aksa-home__empty-icon .rzi { font-size: 24px; }
.aksa-home__muted { padding: 10px; color: var(--home-muted); font-size: 13px; grid-column: 1 / -1; }
.aksa-home__skeleton { background: var(--aksa-surface-muted); border-radius: 6px; height: 15px; min-width: 100px; width: 75%; }
.aksa-home__metric--loading { min-height: 163px; gap: 15px; padding-block: 18px; }
.aksa-home__metric--loading .aksa-home__skeleton:nth-child(2) { height: 30px; width: 35%; min-width: 55px; }
.aksa-home[dir="rtl"] :is(.aksa-home__button--primary, .aksa-home__metric-title, .aksa-home__open, .aksa-home__brief-item, .aksa-home__panel-foot a) > .rzi { transform: scaleX(-1); }
[data-bs-theme="dark"] .aksa-home { --home-link: #9dc1ff; --home-danger: #ffb4ab; --home-warning: #f4cb80; }
[data-bs-theme="dark"] .aksa-home .tone-pm { --home-accent: #c4adff; }
[data-bs-theme="dark"] .aksa-home .tone-finance { --home-accent: #9dc1ff; }
[data-bs-theme="dark"] .aksa-home .tone-inventory { --home-accent: #71d6c4; }
[data-bs-theme="dark"] .aksa-home .tone-hr { --home-accent: #f4cb80; }
[data-bs-theme="dark"] .aksa-home .tone-logistics { --home-accent: #87d0e3; }
@media (max-width: 1199px) {
    .aksa-home__workspace { grid-template-columns: minmax(0, 1fr) 285px; gap: 14px; }
    .aksa-home__header-actions { flex-direction: column-reverse; align-items: flex-end; gap: 5px; }
    .aksa-home__date { font-size: 12px; }
    .aksa-home__toolbar { gap: 8px; }
    .aksa-home__search { max-width: none; }
    .aksa-home__next-main { flex-wrap: wrap; gap: 8px; }
}
@container aksa-home (max-width: 880px) {
    .aksa-home__workspace { grid-template-columns: minmax(0, 1fr); }
    .aksa-home__aside { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
    .aksa-home__sources { grid-column: 1 / -1; }
}
@media (max-width: 991px) {
    .aksa-home__workspace { grid-template-columns: minmax(0, 1fr); }
    .aksa-home__aside { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
    .aksa-home__sources { grid-column: 1 / -1; }
    .aksa-home__metric { flex-basis: 175px; }
}
@media (max-width: 599px) {
    .aksa-home { gap: 14px; }
    .aksa-home__header { align-items: flex-start; gap: 8px; }
    .aksa-home__header-actions { gap: 0; }
    .aksa-home__date { display: none; }
    .aksa-home__header-actions .aksa-home__button { min-width: 40px; padding: 7px 9px; font-size: 12px; }
    .aksa-home__welcome h1 { font-size: 21px; }
    .aksa-home__context { font-size: 12px; gap: 4px; }
    .aksa-home__context > span + span::before { margin-inline-end: 4px; }
    .aksa-home__modules { gap: 1px 12px; }
    .aksa-home__module { min-height: 42px; padding-block: 6px; font-size: 13px; }
    .aksa-home__module .rzi { font-size: 17px; }
    .aksa-home__metrics { gap: 10px; }
    .aksa-home__metric { flex-basis: calc(50% - 5px); padding: 12px; }
    .aksa-home__reports:not(.is-expanded) .aksa-home__metric:nth-child(n+3) { display: none; }
    .aksa-home__metrics-toggle--mobile { display: inline-flex; }
    .aksa-home__metric-reading strong { font-size: 26px; }
    .aksa-home__metric-title { font-size: 13px; }
    .aksa-home__metric-module { font-size: 12px; }
    .aksa-home__aside { grid-template-columns: minmax(0, 1fr); }
    .aksa-home__section-head { padding: 14px 12px; gap: 8px; }
    .aksa-home__section-head--plain { padding: 0 0 8px; }
    .aksa-home__heading { gap: 8px; }
    .aksa-home__heading-icon { display: none; }
    .aksa-home__urgent { padding: 5px 7px; font-size: 12px; }
    .aksa-home__urgent .rzi { display: none; }
    .aksa-home__toolbar { padding: 0 12px 12px; }
    .aksa-home__focus { width: 100%; }
    .aksa-home__focus button { flex: 1; padding-inline: 5px; font-size: 12px; min-height: 36px; }
    .aksa-home__search { flex-basis: 100%; }
    .aksa-home__search input { min-height: 32px; }
    .aksa-home__filter-state { padding-inline: 12px; }
    .aksa-home__next { margin-inline: 8px; padding: 11px; }
    .aksa-home__next h3 { font-size: 15px; }
    .aksa-home__queue-row { grid-template-columns: 30px minmax(0, 1fr) auto; gap: 8px; padding: 12px; }
    .aksa-home__queue-row > .aksa-home__icon { width: 30px; height: 32px; }
    .aksa-home__queue-row > .aksa-home__open { display: none; }
    .aksa-home__queue-value { min-width: 24px; font-size: 16px; padding-inline: 2px; }
    .aksa-home__row-meta { gap: 2px 6px; }
    .aksa-home__row-meta > span + span::before { margin-inline-end: 6px; }
    .aksa-home__panel-foot { padding: 10px 12px; }
    .aksa-home__notice { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: no-preference) {
    .aksa-home :is(.aksa-home__button, .aksa-home__module, .aksa-home__focus button, .aksa-home__urgent, .aksa-home__links > a) { transition: background-color 120ms ease, color 120ms ease, border-color 120ms ease; }
}

/* Purchasing editor layout: one action bar and a compact, responsive master form. */
.purchase-workbench .warehouse-component-shell--erp-lines .warehouse-grid-cell .aksa-picker-floating-popup[popover]:popover-open {
    /* Preserve shared viewport geometry over legacy row anchoring. */
    position: fixed !important;
    inset-inline: auto !important;
    inset-block: auto !important;
    left: var(--aksa-picker-left, 0px) !important;
    right: auto !important;
    top: var(--aksa-picker-top, 0px) !important;
    bottom: auto !important;
    width: var(--aksa-picker-width, auto) !important;
    min-width: 0 !important;
    max-width: var(--aksa-picker-max-width, calc(100vw - 1rem)) !important;
    max-height: var(--aksa-picker-max-height, calc(100dvh - 1rem)) !important;
    margin: 0 !important;
}
.purchase-workbench .purchase-toolbar-number {
    font-size: .95rem;
    font-weight: 700;
    white-space: nowrap;
}
.purchase-workbench .purchase-toolbar-identity {
    margin-inline-start: auto;
}
.purchase-workbench .purchase-odoo-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
}
.purchase-workbench .purchase-odoo-layout .purchase-chatter {
    display: block;
    position: static;
    width: 100%;
    max-height: none;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius);
    background: var(--aksa-surface);
    overflow: visible;
}
.purchase-workbench .purchase-history > summary {
    padding: .55rem .75rem;
    font-size: .8rem;
    font-weight: 600;
    cursor: pointer;
}
.purchase-workbench .purchase-history .purchase-chatter-body {
    max-height: 24rem;
    overflow: auto;
}
.purchase-workbench .rz-datepicker {
    display: inline-flex !important;
    align-items: center;
    position: relative;
}
.purchase-workbench .rz-datepicker > input {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
    padding-inline-end: 2rem;
}
.purchase-workbench .rz-datepicker > .rz-datepicker-trigger {
    position: absolute;
    inset-inline-start: auto;
    inset-inline-end: 0;
    top: 0;
    bottom: 0;
    transform: none;
    margin: 0;
    width: 2rem;
    height: auto;
}
.purchase-workbench .warehouse-component-shell--erp-lines .warehouse-grid-cell .rz-form-field-content {
    margin-block: 0 !important;
}
.purchase-workbench .warehouse-component-shell--erp-lines .warehouse-grid-cell :is(.rz-form-field, .rz-form-field-content, .warehouse-store-picker__input) {
    min-height: 1.55rem !important;
    height: 1.55rem !important;
}
.purchase-workbench .warehouse-component-shell--erp-lines .warehouse-grid-cell :is(.aksa-product-picker-field, .aksa-product-picker-anchor, .warehouse-store-picker) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
}
.purchase-workbench {
    min-width: 0;
    color: var(--aksa-text);
}
.purchase-workbench :is(.purchase-document-header, .purchase-editor-header) {
    position: sticky;
    top: 0;
    z-index: 12;
    padding: .45rem .65rem;
    margin-block-end: .5rem !important;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius);
    background: var(--aksa-surface);
}
.purchase-workbench :is(.purchase-controlpanel, .purchase-controlpanel-main, .purchase-controlpanel-actions, .purchase-primary-actions, .purchase-secondary-actions, .purchase-controlpanel-status, .purchase-status-cluster) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .4rem;
    min-width: 0;
}
.purchase-workbench .purchase-controlpanel {
    justify-content: space-between;
}
.purchase-workbench .purchase-controlpanel-main {
    flex: 1 1 auto;
    justify-content: flex-start;
}
.purchase-workbench .purchase-navigation-actions { order: 0; }
.purchase-workbench .purchase-primary-actions { order: 1; }
.purchase-workbench .purchase-secondary-actions { order: 2; }
.purchase-workbench .purchase-commit-action { order: 0; }
.purchase-workbench .purchase-confirm-action { order: 1; }
.purchase-workbench .purchase-save-action { order: 2; }
.purchase-workbench .purchase-actions-anchor .dropdown-menu .rz-button {
    display: flex;
    width: 100%;
    justify-content: flex-start;
    margin-block: .2rem;
}
.purchase-workbench .warehouse-component-shell--erp-lines .warehouse-grid-cell .rz-form-field input {
    height: 1.55rem !important;
    min-height: 1.55rem !important;
}
.purchase-workbench .purchase-flow-nav {
    position: relative;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}
.purchase-workbench .purchase-flow-groups {
    position: absolute;
    inset-inline-start: 0;
    top: 100%;
    width: min(38rem, 80vw);
    max-height: 50vh;
    overflow: auto;
    padding: .75rem;
    border: 1px solid var(--aksa-border);
    border-radius: var(--aksa-radius);
    background: var(--aksa-surface);
    box-shadow: var(--aksa-shadow-sm);
    z-index: 20;
}
.purchase-workbench :is(.purchase-document-workspace, .purchase-editor-workspace, .purchase-odoo-layout) {
    padding: 0;
    gap: .5rem;
}
.purchase-workbench .purchase-sheet {
    padding: .75rem;
    border-radius: var(--aksa-radius);
    box-shadow: none;
}
.purchase-workbench :is(.purchase-sheet-header, .purchase-identity) {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: .35rem .75rem;
    padding: 0 0 .5rem;
    margin: 0 0 .6rem;
    min-height: 0;
}
.purchase-workbench :is(.purchase-sheet-header > div:first-child, .purchase-identity__main, .purchase-identity__line, .purchase-title-line) {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .4rem .65rem;
}
.purchase-workbench :is(.purchase-doc-number, .purchase-identity__number) {
    font-size: 1.2rem;
    line-height: 1.4;
    margin: 0;
}
.purchase-workbench :is(.purchase-doc-type, .purchase-identity__eyebrow) {
    font-size: .8rem;
    margin: 0;
}
.purchase-workbench :is(.purchase-doc-facts, .purchase-identity__facts) {
    margin: 0;
    font-size: .75rem;
    gap: .5rem;
}
.purchase-workbench :is(.purchase-master-fields, .purchase-master-grid, .purchase-receiving-master-surface) {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: start;
    gap: .6rem .9rem;
    padding: 0;
    margin: 0 0 .75rem;
    border: 0;
    background: transparent;
}
.purchase-workbench .purchase-master-grid > .purchase-card,
.purchase-workbench .purchase-master-grid .purchase-card > .purchase-form-grid,
.purchase-workbench .purchase-receiving-master-surface > .purchase-receiving-input-section,
.purchase-workbench .purchase-receiving-input-section > :is(.purchase-receiving-party-grid, .purchase-receiving-document-grid) {
    display: contents;
}
.purchase-workbench :is(.purchase-master-fields, .purchase-master-grid, .purchase-receiving-master-surface) :is(.purchase-field, .purchase-receiving-input) {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: .25rem;
    grid-column: auto;
    min-width: 0;
    margin: 0;
}
.purchase-workbench :is(.purchase-master-fields, .purchase-master-grid, .purchase-receiving-master-surface) .form-label {
    margin: 0;
    padding: 0;
    font-size: .8rem;
    text-align: start;
    line-height: 1.4;
    min-height: 0;
}
.purchase-workbench .purchase-master-fields > .purchase-field:first-child,
.purchase-workbench .purchase-card--party > .purchase-form-grid > .purchase-field:first-child,
.purchase-workbench .purchase-receiving-master-surface .purchase-receiving-input--vendor {
    grid-column: span 2;
}
.purchase-workbench :is(.purchase-party-meta, .purchase-vendor-facts) {
    font-size: .72rem;
    margin: 0;
    padding: 0;
    gap: .35rem;
}
.purchase-workbench :is(.purchase-notebook, .purchase-section, .purchase-open-section, .purchase-source-card, .purchase-reason-card) {
    margin-block: .5rem 0;
}
.purchase-workbench :is(.purchase-section__head, .purchase-section-heading, .purchase-source-card__head) {
    padding: .4rem .55rem;
    margin: 0;
    min-height: 0;
}
.purchase-workbench :is(.purchase-source-card, .purchase-reason-card) > summary {
    cursor: pointer;
    font-size: .8rem;
    font-weight: 600;
}
.purchase-workbench .purchase-source-card:not([open]) {
    padding: .2rem .5rem;
    margin-block-end: .6rem;
}
.purchase-workbench .purchase-source-card > summary > div {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem;
}
.purchase-workbench .purchase-reason-card {
    padding: .4rem .55rem;
}
.purchase-workbench .purchase-reason-card[open] > summary {
    margin-block-end: .4rem;
}
@media (max-width: 1199.98px) {
    .purchase-workbench :is(.purchase-master-fields, .purchase-master-grid, .purchase-receiving-master-surface) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 575.98px) {
    .purchase-workbench :is(.purchase-master-fields, .purchase-master-grid, .purchase-receiving-master-surface) {
        grid-template-columns: minmax(0, 1fr);
    }
    .purchase-workbench .purchase-master-fields > .purchase-field:first-child,
    .purchase-workbench .purchase-card--party > .purchase-form-grid > .purchase-field:first-child,
    .purchase-workbench .purchase-receiving-input--vendor {
        grid-column: auto;
    }
    .purchase-workbench .purchase-flow-groups {
        position: static;
        width: 100%;
    }
    .purchase-workbench :is(.purchase-document-header, .purchase-editor-header) {
        position: static;
    }
}
