/* /Components/Layout/Drawer.razor.rz.scp.css */
.drawer-container[b-dxvwnjqjwv] {
    height: 100%;
}

.navigation-drawer-shading[b-dxvwnjqjwv] {
    height: 100%;
    position: absolute;
    transition: ease 300ms;
    transition-property: opacity, visibility;
    visibility: visible;
    width: 100%;
    z-index: 99;
    background-color: var(--dxds-color-surface-backdrop-default-rest);
}

.navigation-drawer.mobile.panel-closed .navigation-drawer-shading[b-dxvwnjqjwv] {
    opacity: 0;
    visibility: hidden;
}

[b-dxvwnjqjwv] .navigation-drawer > .dxbl-drawer-panel {
    display: flex;
}

[b-dxvwnjqjwv] .navigation-drawer.mobile > .dxbl-drawer-panel {
    display: none;
}

.navigation-drawer-shading[b-dxvwnjqjwv] {
    display: none;
}

[b-dxvwnjqjwv] .panel-open:not(.mobile) .nav-buttons-container .menu-button {
    display: none;
}

@media (max-width: 768px) {
    [b-dxvwnjqjwv] .navigation-drawer > .dxbl-drawer-panel {
        display: none;
    }

    [b-dxvwnjqjwv] .navigation-drawer.mobile > .dxbl-drawer-panel {
        display: flex;
    }

    .navigation-drawer-shading[b-dxvwnjqjwv] {
        display: block;
    }

    [b-dxvwnjqjwv] .panel-open:not(.mobile) .nav-buttons-container .menu-button {
        display: flex;
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* ============================================================
   SHELL LAYOUT
   ============================================================ */
.page[b-dsdnykrpt6] {
    position:       relative;
    display:        flex;
    flex-direction: column;
    min-height:     100vh;
}

/* ============================================================
   BURGER BUTTON
   ============================================================ */
.burger-btn[b-dsdnykrpt6] {
    background:    transparent;
    border:        none;
    color:         rgba(255, 255, 255, 0.65);
    font-size:     1.35rem;
    width:         36px;
    height:        36px;
    display:       flex;
    align-items:   center;
    justify-content: center;
    border-radius: 8px;
    cursor:        pointer;
    margin-right:  .5rem;
    transition:    background .18s, color .18s;
    flex-shrink:   0;
}

.burger-btn:hover[b-dsdnykrpt6] {
    background: rgba(255, 255, 255, 0.09);
    color:      #fff;
}

/* ============================================================
   LOGOUT BUTTON
   ============================================================ */
.logout-btn[b-dsdnykrpt6] {
    background:    transparent;
    border:        none;
    color:         rgba(255, 255, 255, 0.45);
    font-size:     1rem;
    width:         30px;
    height:        30px;
    display:       flex;
    align-items:   center;
    justify-content: center;
    border-radius: 6px;
    cursor:        pointer;
    transition:    background .18s, color .18s;
}

.logout-btn:hover[b-dsdnykrpt6] {
    background: rgba(255, 80, 80, 0.15);
    color:      #ff6b6b;
}

main[b-dsdnykrpt6] {
    flex:      1;
    overflow:  hidden;
    display:   flex;
    flex-direction: column;
    min-width: 0;
}

/* ============================================================
   SIDEBAR
   ============================================================ */
.sidebar[b-dsdnykrpt6] {
    background:   linear-gradient(127.09deg, rgba(6, 11, 40, 0.96) 19.41%, rgba(10, 14, 35, 0.52) 76.65%);
    border-right: 1px solid rgba(255, 255, 255, 0.08);
}

/* ============================================================
   TOP BAR
   ============================================================ */
.top-row[b-dsdnykrpt6] {
    background:        rgba(11, 20, 55, 0.72);
    backdrop-filter:   blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-bottom:     1px solid rgba(255, 255, 255, 0.07);
    height:            3.5rem;
    display:           flex;
    align-items:       center;
    justify-content:   space-between;
    flex-shrink:       0;
}

.top-row-left[b-dsdnykrpt6] {
    display:     flex;
    align-items: center;
}

.top-row-right[b-dsdnykrpt6] {
    display:     flex;
    align-items: center;
    gap:         .75rem;
}

.user-avatar[b-dsdnykrpt6] {
    width:           34px;
    height:          34px;
    border-radius:   50%;
    background:      linear-gradient(127deg, #4318FF 0%, #0075FF 100%);
    display:         flex;
    align-items:     center;
    justify-content: center;
    color:           white;
    font-size:       .95rem;
    cursor:          pointer;
    box-shadow:      0 2px 12px rgba(67, 24, 255, 0.40);
    transition:      box-shadow .2s;
}

.user-avatar:hover[b-dsdnykrpt6] {
    box-shadow: 0 4px 20px rgba(67, 24, 255, 0.60);
}

/* ============================================================
   CONTENT AREA
   ============================================================ */
article.content[b-dsdnykrpt6] {
    flex:        1;
    overflow-y:  auto;
    overflow-x:  hidden;
    min-width:   0;
}

/* ============================================================
   DESKTOP RESPONSIVE
   ============================================================ */
@media (min-width: 641px) {
    .page[b-dsdnykrpt6] {
        flex-direction: row;
    }

    .sidebar[b-dsdnykrpt6] {
        width:       260px;
        height:      100vh;
        position:    sticky;
        top:         0;
        flex-shrink: 0;
        transition:  width .25s ease;
        overflow:    hidden;
    }

    .sidebar-collapsed .sidebar[b-dsdnykrpt6] {
        width: 66px;
    }

    .top-row[b-dsdnykrpt6] {
        position:      sticky;
        top:           0;
        z-index:       10;
        padding-left:  1rem !important;
        padding-right: 1rem !important;
    }

    article[b-dsdnykrpt6] {
        padding-left:  1rem !important;
        padding-right: 1rem !important;
    }
}

/* ============================================================
   LOCATION SELECTOR
   ============================================================ */
.location-selector-wrap[b-dsdnykrpt6] {
    display:     flex;
    align-items: center;
    gap:         .4rem;
    background:  rgba(255,255,255,0.06);
    border:      1px solid rgba(255,255,255,0.12);
    border-radius: 8px;
    padding:     0 .6rem 0 .5rem;
    height:      34px;
}

.location-selector-icon[b-dsdnykrpt6] {
    color:     var(--accent-end, #4fc3f7);
    font-size: .85rem;
    flex-shrink: 0;
}

.location-selector-combo[b-dsdnykrpt6] {
    border: none !important;
    background: transparent !important;
    min-width: 160px;
    max-width: 220px;
}

@media (max-width: 640.98px) {
    .location-selector-combo[b-dsdnykrpt6] {
        min-width: 100px;
        max-width: 140px;
    }
}

.location-selector-input[b-dsdnykrpt6] {
    background: transparent !important;
    border: none !important;
    color: var(--text-primary, #fff) !important;
    font-size: .82rem !important;
    padding: 0 !important;
    height: auto !important;
    box-shadow: none !important;
}

/* ============================================================
   BLAZOR ERROR UI
   ============================================================ */
#blazor-error-ui[b-dsdnykrpt6] {
    background: lightyellow;
    bottom:     0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display:    none;
    left:       0;
    padding:    0.6rem 1.25rem 0.7rem 1.25rem;
    position:   fixed;
    width:      100%;
    z-index:    1000;
}

#blazor-error-ui .dismiss[b-dsdnykrpt6] {
    cursor:   pointer;
    position: absolute;
    right:    0.75rem;
    top:      0.5rem;
}

@@keyframes spin { to[b-dsdnykrpt6] { transform: rotate(360deg); } }.spin[b-dsdnykrpt6] { animation: spin .8s linear infinite; display: inline-block; }

/* ── Square sync result popup ───────────────────────────────────────────── */
.sq-sync-result[b-dsdnykrpt6] {
    position:      absolute;
    top:           calc(100% + 8px);
    right:         0;
    width:         220px;
    background:    var(--bg-card, #1a2035);
    border:        1px solid var(--border-subtle, rgba(255,255,255,.12));
    border-radius: 12px;
    padding:       .85rem 1rem;
    z-index:       2000;
    box-shadow:    0 8px 32px rgba(0,0,0,.45);
    cursor:        pointer;
    animation:     fadeInDown .2s ease;
}
@@keyframes fadeInDown {
    from[b-dsdnykrpt6] { opacity:0; transform:translateY(-6px); }
    to[b-dsdnykrpt6]   { opacity:1; transform:translateY(0);    }
}
.sq-sync-env[b-dsdnykrpt6] {
    font-size:     .7rem;
    font-weight:   700;
    letter-spacing:.06em;
    padding:       .25rem .6rem;
    border-radius: 6px;
    display:       inline-flex;
    align-items:   center;
    margin-bottom: .65rem;
}
.sq-env-prod[b-dsdnykrpt6]    { background:rgba(82,196,26,.15);  color:#52c41a; border:1px solid rgba(82,196,26,.3); }
.sq-env-sandbox[b-dsdnykrpt6] { background:rgba(250,173,20,.15); color:#faad14; border:1px solid rgba(250,173,20,.3); }
.sq-sync-rows[b-dsdnykrpt6]   { display:flex; flex-direction:column; gap:.28rem; }
.sq-sync-rows > div[b-dsdnykrpt6] { display:flex; justify-content:space-between; font-size:.8rem; }
.sq-sync-label[b-dsdnykrpt6]  { color:var(--text-secondary, rgba(255,255,255,.5)); }
.sq-sync-val[b-dsdnykrpt6]    { color:var(--text-primary, #fff); font-weight:600; }
.sq-sync-dismiss[b-dsdnykrpt6] { font-size:.65rem; color:var(--text-muted, rgba(255,255,255,.28)); text-align:center; margin-top:.55rem; }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* ============================================================
   MOBILE TOGGLE
   ============================================================ */
.navbar-toggler[b-seumh3pxl5] {
    appearance:    none;
    cursor:        pointer;
    width:         3.5rem;
    height:        2.5rem;
    color:         white;
    position:      absolute;
    top:           0.5rem;
    right:         1rem;
    border:        1px solid rgba(255, 255, 255, 0.15);
    border-radius: 0.4rem;
    background:    url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255%2C255%2C255%2C0.65%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.08);
}

.navbar-toggler:checked[b-seumh3pxl5] {
    background-color: rgba(0, 0, 0, 0.45);
}

/* ============================================================
   BRAND / LOGO
   ============================================================ */
.sidebar-brand[b-seumh3pxl5] {
    display:     flex;
    align-items: center;
    gap:         0.85rem;
    padding:     1.5rem 1.25rem 1.2rem;
}

.brand-icon[b-seumh3pxl5] {
    background: transparent;
    border-radius: 0;
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.brand-logo-img[b-seumh3pxl5] {
    width: 52px;
    height: 52px;
    object-fit: contain;
    border-radius: 50%;
    filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.4));
}

.brand-name[b-seumh3pxl5] {
    font-size:   1rem;
    font-weight: 700;
    color:       #ffffff;
    line-height: 1.2;
}

.brand-sub[b-seumh3pxl5] {
    font-size:      0.63rem;
    color:          rgba(255, 255, 255, 0.40);
    font-weight:    400;
    letter-spacing: .04em;
    margin-top:     1px;
}

/* ============================================================
   DIVIDER
   ============================================================ */
.sidebar-divider[b-seumh3pxl5] {
    height:     1px;
    background: rgba(255, 255, 255, 0.08);
    margin:     0 1.25rem 0.5rem;
}

/* ============================================================
   NAV CONTAINER
   ============================================================ */
.sidebar-nav[b-seumh3pxl5] {
    display:        flex;
    flex-direction: column;
    padding:        0 0.7rem 1rem;
}

/* ============================================================
   SECTION LABELS
   ============================================================ */
.nav-section-label[b-seumh3pxl5] {
    font-size:      0.62rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: .12em;
    color:          rgba(255, 255, 255, 0.32);
    padding:        0.5rem 0.6rem 0.2rem;
    margin-top:     0;
}

/* ============================================================
   NAV ITEMS & LINKS
   ============================================================ */
.nav-item[b-seumh3pxl5] {
    margin-bottom: 0.08rem;
}

.nav-item[b-seumh3pxl5]  .nav-link {
    display:         flex;
    align-items:     center;
    gap:             0.75rem;
    padding:         0.6rem 0.75rem;
    border-radius:   12px;
    color:           rgba(255, 255, 255, 0.55);
    font-size:       0.875rem;
    font-weight:     500;
    text-decoration: none;
    transition:      background .18s ease, color .18s ease, border-color .18s ease;
    border:          1px solid transparent;
    position:        relative;
    overflow:        hidden;
}

.nav-item[b-seumh3pxl5]  .nav-link:hover {
    background: rgba(255, 255, 255, 0.07);
    color:      rgba(255, 255, 255, 0.88);
}

/* Active state – gradient background + left accent bar */
.nav-item[b-seumh3pxl5]  .nav-link.active {
    background: linear-gradient(127deg,
        rgba(67, 24, 255, 0.30) 0%,
        rgba(0, 117, 255, 0.20) 100%);
    border-color: rgba(67, 24, 255, 0.38);
    color:        #ffffff;
    font-weight:  600;
}

.nav-item[b-seumh3pxl5]  .nav-link.active::before {
    content:       '';
    position:      absolute;
    left:          0;
    top:           18%;
    height:        64%;
    width:         3px;
    border-radius: 0 4px 4px 0;
    background:    linear-gradient(180deg, #4318FF, #0075FF);
}

/* ============================================================
   NAV ICON & TEXT
   ============================================================ */
.nav-icon[b-seumh3pxl5] {
    font-size:   1rem;
    flex-shrink: 0;
    width:       18px;
    text-align:  center;
}

.nav-text[b-seumh3pxl5] {
    white-space:   nowrap;
    overflow:      hidden;
    text-overflow: ellipsis;
}

/* ============================================================
   SCROLLABLE AREA
   ============================================================ */
.nav-scrollable[b-seumh3pxl5] {
    display:    block;
    height:     calc(100vh - 5.2rem);
    overflow-y: auto;
    overflow-x: hidden;
}

.nav-scrollable[b-seumh3pxl5]::-webkit-scrollbar       { width: 3px; }
.nav-scrollable[b-seumh3pxl5]::-webkit-scrollbar-track { background: transparent; }
.nav-scrollable[b-seumh3pxl5]::-webkit-scrollbar-thumb {
    background:    rgba(255, 255, 255, 0.15);
    border-radius: 2px;
}

/* ============================================================
   COLLAPSED SIDEBAR (icon-only mode)
   Applied via global site.css since parent class is outside this scope
   ============================================================ */
.brand-collapsed[b-seumh3pxl5] {
    padding:         1.2rem 0;
    justify-content: center;
}
/* /Components/Pages/Accounting/Expenses.razor.rz.scp.css */
.exp-kpi-card[b-7tgt2bhuu6] {
    background: var(--bg-card);
    border: var(--border-card);
    border-radius: 16px;
    padding: 1.25rem 1rem;
    text-align: center;
    box-shadow: var(--shadow-card);
    transition: transform .18s ease, box-shadow .18s ease;
    height: 100%;
}

.exp-kpi-card:hover[b-7tgt2bhuu6] {
    transform: translateY(-3px);
    box-shadow: 0 28px 64px rgba(0,0,0,.55);
}

.exp-kpi-icon[b-7tgt2bhuu6] {
    width: 46px;
    height: 46px;
    border-radius: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto .85rem;
    font-size: 1.25rem;
    color: #fff;
}

.exp-kpi-value[b-7tgt2bhuu6] {
    font-size: 1.65rem;
    font-weight: 800;
    color: var(--text-primary);
    line-height: 1.1;
}

.exp-kpi-label[b-7tgt2bhuu6] {
    font-size: .72rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: .07em;
    margin-top: .35rem;
}

/* MudDataGrid dark overrides */
[b-7tgt2bhuu6] .exp-mud-grid {
    background: transparent !important;
}

[b-7tgt2bhuu6] .exp-mud-grid .mud-table-head th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
}

[b-7tgt2bhuu6] .exp-mud-grid .mud-table-body td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .85rem;
}

[b-7tgt2bhuu6] .exp-mud-grid .mud-table-body tr:hover td {
    background: rgba(255,255,255,0.04) !important;
}

[b-7tgt2bhuu6] .exp-mud-grid .mud-toolbar {
    background: transparent !important;
    border-bottom: 1px solid var(--border-subtle);
    padding: .5rem .75rem;
}
/* /Components/Pages/Admin/Users.razor.rz.scp.css */
.usr-section-label[b-rcelqftpxo] {
    font-size: .8rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: .05em;
    margin-bottom: .5rem;
}

.usr-perm-section-label[b-rcelqftpxo] {
    font-size: .75rem;
    font-weight: 700;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: .08em;
    margin-top: 1rem;
    margin-bottom: .35rem;
}

/* MudTabs dark overrides */
[b-rcelqftpxo] .usr-tabs .mud-tabs-header {
    border-bottom: 1px solid var(--border-subtle);
    background: transparent;
}

[b-rcelqftpxo] .usr-tabs .mud-tab {
    color: var(--text-secondary) !important;
    font-size: .85rem;
    font-weight: 500;
}

[b-rcelqftpxo] .usr-tabs .mud-tab.mud-tab-active {
    color: var(--text-primary) !important;
}

[b-rcelqftpxo] .usr-tabs .mud-tab-slider {
    background: var(--accent-end) !important;
}

/* MudDataGrid dark overrides */
[b-rcelqftpxo] .usr-mud-grid {
    background: transparent !important;
}

[b-rcelqftpxo] .usr-mud-grid .mud-table-head th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
}

[b-rcelqftpxo] .usr-mud-grid .mud-table-body td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .85rem;
}

[b-rcelqftpxo] .usr-mud-grid .mud-table-body tr:hover td {
    background: rgba(255,255,255,0.04) !important;
}

[b-rcelqftpxo] .usr-mud-grid .mud-toolbar {
    background: transparent !important;
    border-bottom: 1px solid var(--border-subtle);
    padding: .5rem .75rem;
}
/* /Components/Pages/AI/AIAssistant.razor.rz.scp.css */
/* ── Outer card ───────────────────────────────────────────────────────── */
.ai-outer-card[b-sqi9n0te6u] {
    background: var(--bg-card);
    border: var(--border-card);
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 620px;
    box-shadow: var(--shadow-card);
}

.ai-chat-wrap[b-sqi9n0te6u] {
    flex: 1 1 auto;
    overflow: hidden;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

/* ── Override DxAIChat CSS variables (anchor: .ai-chat-wrap) ──────────── */

/* Root — set all custom props + full height */
.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root {
    --dx-chatui-messagelist-bg:                    transparent;
    --dx-chatui-message-assistant-bg:              rgba(255,255,255,0.07);
    --dx-chatui-message-color:                     var(--text-primary);
    --dx-chatui-message-user-bg:                   var(--accent-end);
    --dx-chatui-message-user-color:                #fff;
    --dx-chatui-submitarea-bg:                     rgba(255,255,255,0.04);
    --dx-chatui-submitarea-container-border-color: rgba(255,255,255,0.12);
    --dx-chatui-message-border-radius:             12px;
    height: 100%;
}

/* Main panel background — transparent so dark blue page bg shows through */
.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root .dxbl-chatui {
    background-color: transparent !important;
    height: 100%;
}

/* Message list area */
.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root .dxbl-chatui-scrollviewer,
.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root .dxbl-chatui-messages {
    background-color: transparent !important;
}

/* Outer message wrapper — transparent, reset padding/min-width
   so our MessageTemplate controls the bubble visuals */
.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root .dxbl-chatui-message {
    background: transparent !important;
    padding: 0 !important;
    min-width: unset !important;
    max-width: 80%;
}

.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root .dxbl-chatui-message.dxbl-chatui-message-user {
    align-self: flex-end;
}

.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root .dxbl-chatui-message.dxbl-chatui-message-assistant {
    align-self: flex-start;
    min-width: unset !important;
    max-width: 85%;
}

/* Submit / input area */
.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root .dxbl-chatui-submitarea {
    background: transparent !important;
    border-top: 1px solid var(--border-subtle) !important;
}

.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root .dxbl-chatui-submitarea-container {
    background: rgba(255,255,255,0.05) !important;
    border-color: rgba(255,255,255,0.15) !important;
    border-radius: 10px !important;
}

/* Textarea */
.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root .dxbl-chatui-input textarea,
.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root .dxbl-chatui-input input {
    background: transparent !important;
    color: var(--text-primary) !important;
    border: none !important;
}

.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root .dxbl-chatui-input textarea::placeholder,
.ai-chat-wrap[b-sqi9n0te6u]  .dxbl-chatui-root .dxbl-chatui-input input::placeholder {
    color: var(--text-muted) !important;
}

/* ── MessageTemplate inner bubble styles ──────────────────────────────── */
.ai-msg-bubble[b-sqi9n0te6u] {
    padding: .65rem 1rem;
    border-radius: 12px;
    font-size: .9rem;
    line-height: 1.5;
    white-space: pre-wrap;
    word-break: break-word;
}

.ai-msg-row--assistant .ai-msg-bubble[b-sqi9n0te6u] {
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.09);
    color: var(--text-primary);
}

.ai-msg-row--user .ai-msg-bubble[b-sqi9n0te6u] {
    background: linear-gradient(135deg, var(--accent-start), var(--accent-end));
    color: #fff;
}

/* ── Report download banner ───────────────────────────────────────────── */
.ai-report-banner[b-sqi9n0te6u] {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .65rem 1.25rem;
    background: linear-gradient(135deg, rgba(44,62,122,0.45), rgba(44,62,122,0.25));
    border-top: 1px solid rgba(100,130,255,0.3);
    animation: slideDown-b-sqi9n0te6u .25s ease;
}

@keyframes slideDown-b-sqi9n0te6u {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}

.ai-report-icon[b-sqi9n0te6u] { font-size: 1.1rem; }

.ai-report-name[b-sqi9n0te6u] {
    flex: 1;
    font-size: .82rem;
    font-weight: 500;
    color: var(--text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ai-report-btn[b-sqi9n0te6u] {
    flex: 0 0 auto;
    padding: .35rem 1rem;
    border-radius: 8px;
    border: none;
    background: linear-gradient(135deg, var(--accent-start), var(--accent-end));
    color: #fff;
    font-size: .82rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity .15s;
}

.ai-report-btn:hover[b-sqi9n0te6u] { opacity: .85; }

.ai-report-dismiss[b-sqi9n0te6u] {
    flex: 0 0 auto;
    background: none;
    border: none;
    color: var(--text-muted);
    font-size: .9rem;
    cursor: pointer;
    padding: .2rem .4rem;
    line-height: 1;
}

.ai-report-dismiss:hover[b-sqi9n0te6u] { color: var(--text-primary); }

/* ── Suggestion chips ─────────────────────────────────────────────────── */
.ai-chips-row[b-sqi9n0te6u] {
    flex: 0 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    padding: .75rem 1.25rem;
    border-top: 1px solid var(--border-subtle);
    background: rgba(255,255,255,0.02);
}

.ai-chip[b-sqi9n0te6u] {
    display: inline-flex;
    align-items: center;
    padding: .35rem .9rem;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.15);
    background: rgba(255,255,255,0.05);
    color: var(--text-secondary);
    font-size: .78rem;
    font-weight: 500;
    cursor: pointer;
    line-height: 1;
    transition: background .15s, border-color .15s, color .15s;
}

.ai-chip:hover[b-sqi9n0te6u] {
    background: rgba(255,255,255,0.11);
    border-color: rgba(255,255,255,0.28);
    color: var(--text-primary);
}

.ai-chip--danger[b-sqi9n0te6u] {
    border-color: rgba(239,68,68,0.35);
    color: rgba(239,68,68,0.8);
}

.ai-chip--danger:hover[b-sqi9n0te6u] {
    background: rgba(239,68,68,0.12);
    border-color: rgba(239,68,68,0.6);
    color: rgb(239,68,68);
}

.ai-chips-spacer[b-sqi9n0te6u] {
    flex: 1 1 auto;
}

.ai-history-badge[b-sqi9n0te6u] {
    display: inline-flex;
    align-items: center;
    font-size: .75rem;
    color: var(--text-muted);
    padding: .2rem .5rem;
    opacity: .7;
}
/* /Components/Pages/Chart.razor.rz.scp.css */
.chart-tooltip[b-58pw211f7h] {
    margin: 0.5rem;
}

.chart-tooltip-title[b-58pw211f7h] {
    text-align: center;
    font-weight: var(--dxds-font-weight-title-strong);
}
/* /Components/Pages/Counter.razor.rz.scp.css */
.counter-block[b-ka8qoddbhm] {
    align-items: center;
    border-radius: 1rem;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    height: 17rem;
    justify-content: center;
    padding: 2.5rem 1.5rem 1.5rem;
    width: 16.875rem;
    border: 1px solid var(--dxds-color-border-neutral-default-rest);
}

.counter-block .counter-content[b-ka8qoddbhm] {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.counter-block .counter-count[b-ka8qoddbhm] {
    font-size: 7.5rem;
    font-weight: 400;
    line-height: 7.75rem;
}
/* /Components/Pages/Dashboard.razor.rz.scp.css */
/* KPI Cards — same style as Campaign analytics tab */
.dash-kpi-card[b-blirh1oks3] {
    background: var(--bg-card);
    border: var(--border-card);
    border-radius: 16px;
    padding: 1.25rem 1rem;
    text-align: center;
    box-shadow: var(--shadow-card);
    transition: transform .18s ease, box-shadow .18s ease;
    height: 100%;
}

.dash-kpi-card:hover[b-blirh1oks3] {
    transform: translateY(-3px);
    box-shadow: 0 28px 64px rgba(0,0,0,.55);
}

.dash-kpi-icon[b-blirh1oks3] {
    width: 46px;
    height: 46px;
    border-radius: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto .85rem;
    font-size: 1.25rem;
    color: #fff;
}

.dash-kpi-value[b-blirh1oks3] {
    font-size: 1.65rem;
    font-weight: 800;
    color: var(--text-primary);
    line-height: 1.1;
}

.dash-kpi-label[b-blirh1oks3] {
    font-size: .72rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: .07em;
    margin-top: .35rem;
}

.dash-kpi-sub[b-blirh1oks3] {
    font-size: .7rem;
    color: var(--text-muted);
    margin-top: .2rem;
}

.dash-chart-panel[b-blirh1oks3] {
    padding: .85rem 1rem 1rem;
}

/* Period filter button group */
[b-blirh1oks3] .dash-period-group button {
    font-size: .8rem;
    padding: .3rem .75rem;
    border-color: var(--border-input) !important;
    color: var(--text-secondary) !important;
}

[b-blirh1oks3] .dash-period-group button.mud-button-filled-primary {
    background: var(--accent-gradient) !important;
    border-color: transparent !important;
    color: #fff !important;
}

/* MudSimpleTable override to match app dark style */
[b-blirh1oks3] .dash-mud-table {
    background: transparent !important;
}

[b-blirh1oks3] .dash-mud-table thead tr th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
    padding: .5rem .75rem;
}

[b-blirh1oks3] .dash-mud-table tbody tr td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .85rem;
    padding: .45rem .75rem;
}

[b-blirh1oks3] .dash-mud-table tbody tr:hover td {
    background: rgba(255,255,255,0.04) !important;
}

/* MudChart — override SVG text color */
[b-blirh1oks3] .mud-chart-legend text,
[b-blirh1oks3] .mud-charts-xaxis text,
[b-blirh1oks3] .mud-charts-yaxis text {
    fill: var(--text-secondary) !important;
    font-size: 11px !important;
}

/* MudSelect dense variant in chart header */
[b-blirh1oks3] .mud-input-outlined.mud-input-margin-dense .mud-notched-outline {
    border-color: var(--border-input) !important;
}

[b-blirh1oks3] .mud-input-label-outlined.mud-input-label-margin-dense {
    color: var(--text-muted) !important;
}
/* /Components/Pages/Index/Index.razor.rz.scp.css */
[b-qz8pmcwpa9] .index-gridlayout {
    container-type: inline-size;
    height: auto;
    margin-top: auto;
    margin-bottom: auto;
    padding-bottom: 9rem;
}

[b-qz8pmcwpa9] .title {
    padding-bottom: 3rem;
    text-align: center;
}

[b-qz8pmcwpa9] .tiles {
    --tile-column-count: 4;

    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(var(--tile-column-count), max-content);
    justify-content: center;

    @container (max-width: 60.5rem) {
        --tile-column-count: 3;
    }
    @container (max-width: 45.125rem) {
        --tile-column-count: 2;
    }
    @container (max-width: 29.75rem) {
        --tile-column-count: 1;
    }
}
/* /Components/Pages/Index/IndexTile.razor.rz.scp.css */
.tile[b-9xcb6rp2g6] {
    border-radius: 0.75rem;
    height: 7.5rem;
    transition: box-shadow 0.2s;
    width: 14.375rem;
    border: 1px solid var(--dxds-color-border-neutral-default-rest);
}

.tile:hover[b-9xcb6rp2g6] {
    box-shadow: 0 4px 8px 0 rgba(170, 170, 170, 0.24), 0 0 2px 0 rgba(170, 170, 170, 0.2);
}

.tile[b-9xcb6rp2g6]  > a {
    text-decoration: none;
}

[b-9xcb6rp2g6] .tile-content {
    padding: 1rem;
}

[b-9xcb6rp2g6] .tile-icon {
    border-radius: 0.375rem;
    height: 2.75rem;
    padding: 0.75rem;
    width: 2.75rem;
    border: 1px solid var(--dxds-color-border-neutral-default-rest);
}

[b-9xcb6rp2g6] .tile-title {
    align-self: center;
    color: var(--dxds-color-content-neutral-default-rest);
    font-size: var(--dxds-font-size-base-md);
    font-weight: var(--dxds-font-weight-base-strong);
    letter-spacing: var(--dxds-letter-spacing-base-md);
    line-height: var(--dxds-line-height-base-md);
}

[b-9xcb6rp2g6] .tile-description {
    color: var(--dxds-color-content-neutral-subdued-rest);
    font-size: var(--dxds-font-size-base-sm);
    font-weight: var(--dxds-font-weight-base-default);
    letter-spacing: var(--dxds-letter-spacing-base-sm);
    line-height: var(--dxds-line-height-base-sm);
}
/* /Components/Pages/Inventory/Products.razor.rz.scp.css */
/* ── Grid surface — force transparent over any MudPaper elevation ────────── */
[b-ru37ekhs5n] .prod-grid,
[b-ru37ekhs5n] .prod-grid .mud-paper,
[b-ru37ekhs5n] .prod-grid .mud-elevation-0,
[b-ru37ekhs5n] .prod-grid .mud-elevation-1,
[b-ru37ekhs5n] .prod-grid .mud-elevation-2,
[b-ru37ekhs5n] .prod-grid .mud-elevation-4 {
    background: transparent !important;
    box-shadow: none !important;
}

[b-ru37ekhs5n] .prod-grid .mud-table-root,
[b-ru37ekhs5n] .prod-grid .mud-table-container {
    background: transparent !important;
}

/* ── Header row ─────────────────────────────────────────────────────────── */
[b-ru37ekhs5n] .prod-grid .mud-table-head th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
}

/* ── Filter row ─────────────────────────────────────────────────────────── */
[b-ru37ekhs5n] .prod-grid .mud-table-row.mud-table-row-filter td {
    background: rgba(255,255,255,0.03) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    padding-top: .25rem !important;
    padding-bottom: .25rem !important;
}

[b-ru37ekhs5n] .prod-grid .mud-input-slot,
[b-ru37ekhs5n] .prod-grid .mud-input-outlined,
[b-ru37ekhs5n] .prod-grid .mud-input-outlined-border {
    background: rgba(255,255,255,0.05) !important;
    border-color: var(--border-subtle) !important;
    color: var(--text-primary) !important;
}

/* ── Data rows ──────────────────────────────────────────────────────────── */
[b-ru37ekhs5n] .prod-grid .mud-table-row td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .85rem;
}

[b-ru37ekhs5n] .prod-grid .mud-table-row:hover td {
    background: var(--bg-card-hover) !important;
}

/* ── Toolbar + pagination ───────────────────────────────────────────────── */
[b-ru37ekhs5n] .prod-grid .mud-toolbar,
[b-ru37ekhs5n] .prod-grid .mud-table-pagination {
    background: transparent !important;
    color: var(--text-secondary) !important;
}

[b-ru37ekhs5n] .prod-grid .mud-table-pagination .mud-select-input,
[b-ru37ekhs5n] .prod-grid .mud-table-pagination .mud-input {
    color: var(--text-primary) !important;
}

[b-ru37ekhs5n] .prod-grid .mud-input {
    color: var(--text-primary) !important;
}

.prod-search[b-ru37ekhs5n] {
    min-width: 280px;
}

/* ── Bulk action bar ─────────────────────────────────────────────────────── */
.prod-bulk-bar[b-ru37ekhs5n] {
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    padding:         .55rem 1.25rem;
    background:      rgba(99, 102, 241, 0.12);
    border-bottom:   1px solid rgba(99, 102, 241, 0.25);
    border-top:      1px solid rgba(99, 102, 241, 0.15);
    animation:       bulkBarIn .18s ease;
}

@@keyframes bulkBarIn {
    from[b-ru37ekhs5n] { opacity: 0; transform: translateY(-6px); }
    to[b-ru37ekhs5n]   { opacity: 1; transform: translateY(0);    }
}

.prod-bulk-count[b-ru37ekhs5n] {
    font-size:   .82rem;
    font-weight: 600;
    color:       var(--text-primary);
    white-space: nowrap;
}

.prod-bulk-actions[b-ru37ekhs5n] {
    display:     flex;
    align-items: center;
    gap:         .4rem;
}

.prod-bulk-btn[b-ru37ekhs5n] {
    font-size: .78rem !important;
}

/* ── Product image cells ─────────────────────────────────────────────────── */
.product-img-avatar[b-ru37ekhs5n] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    object-fit: cover;
    display: block;
    border: 1px solid rgba(255,255,255,0.1);
}

.product-img-placeholder[b-ru37ekhs5n] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-muted);
}

/* ── Stock chip ──────────────────────────────────────────────────────────── */
.prod-stock-chip[b-ru37ekhs5n] {
    min-width: 42px;
    justify-content: center;
}

/* ── Overlay dialog ──────────────────────────────────────────────────────── */
.prod-overlay-backdrop[b-ru37ekhs5n] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.65);
    z-index: 1300;
    display: flex;
    align-items: center;
    justify-content: center;
}

.prod-dialog-paper[b-ru37ekhs5n] {
    width: min(600px, 96vw);
    max-height: min(680px, 85vh);
    border-radius: 16px !important;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background: var(--bg-card) !important;
    border: var(--border-card) !important;
}

.prod-dialog-header[b-ru37ekhs5n] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.5rem;
    border-bottom: 1px solid var(--border-subtle);
    color: var(--text-primary);
    flex-shrink: 0;
}

.prod-dialog-body[b-ru37ekhs5n] {
    padding: .85rem 1.25rem;
    overflow-y: auto;
    flex: 1 1 auto;
}

.prod-dialog-footer[b-ru37ekhs5n] {
    display: flex;
    align-items: center;
    padding: .85rem 1.5rem;
    border-top: 1px solid var(--border-subtle);
    flex-shrink: 0;
}

/* ── Popup image previews ────────────────────────────────────────────────── */
.popup-img-preview[b-ru37ekhs5n] {
    width: 80px;
    height: 80px;
    border-radius: 10px;
    object-fit: cover;
    border: 1px solid rgba(255,255,255,0.12);
    flex-shrink: 0;
}

.popup-img-placeholder[b-ru37ekhs5n] {
    width: 80px;
    height: 80px;
    border-radius: 10px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-muted);
    font-size: 1.8rem;
    flex-shrink: 0;
}
/* /Components/Pages/Inventory/StockMovements.razor.rz.scp.css */
/* ── Grid surface — force transparent over any MudPaper elevation ────────── */
[b-5lgss270mv] .mov-grid,
[b-5lgss270mv] .mov-grid .mud-paper,
[b-5lgss270mv] .mov-grid .mud-elevation-0,
[b-5lgss270mv] .mov-grid .mud-elevation-1,
[b-5lgss270mv] .mov-grid .mud-elevation-2,
[b-5lgss270mv] .mov-grid .mud-elevation-4 {
    background: transparent !important;
    box-shadow: none !important;
}

[b-5lgss270mv] .mov-grid .mud-table-root,
[b-5lgss270mv] .mov-grid .mud-table-container {
    background: transparent !important;
}

/* ── Header row ─────────────────────────────────────────────────────────── */
[b-5lgss270mv] .mov-grid .mud-table-head th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
}

/* ── Data rows ──────────────────────────────────────────────────────────── */
[b-5lgss270mv] .mov-grid .mud-table-row td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .85rem;
}

[b-5lgss270mv] .mov-grid .mud-table-row:hover td {
    background: var(--bg-card-hover) !important;
}

/* ── Toolbar + pagination ───────────────────────────────────────────────── */
[b-5lgss270mv] .mov-grid .mud-toolbar,
[b-5lgss270mv] .mov-grid .mud-table-pagination {
    background: transparent !important;
    color: var(--text-secondary) !important;
}

[b-5lgss270mv] .mov-grid .mud-table-pagination .mud-select-input,
[b-5lgss270mv] .mov-grid .mud-table-pagination .mud-input {
    color: var(--text-primary) !important;
}

[b-5lgss270mv] .mov-grid .mud-input {
    color: var(--text-primary) !important;
}

.mov-search[b-5lgss270mv] {
    min-width: 260px;
}
/* /Components/Pages/Inventory/StockTransfers.razor.rz.scp.css */
/* ── Grid surface — force transparent over any MudPaper elevation ────────── */
[b-sj3wrtghme] .transfers-grid,
[b-sj3wrtghme] .transfers-grid .mud-paper,
[b-sj3wrtghme] .transfers-grid .mud-elevation-0,
[b-sj3wrtghme] .transfers-grid .mud-elevation-1,
[b-sj3wrtghme] .transfers-grid .mud-elevation-2,
[b-sj3wrtghme] .transfers-grid .mud-elevation-4 {
    background: transparent !important;
    box-shadow: none !important;
}

[b-sj3wrtghme] .transfers-grid .mud-table-root,
[b-sj3wrtghme] .transfers-grid .mud-table-container {
    background: transparent !important;
}

/* ── Header row ─────────────────────────────────────────────────────────── */
[b-sj3wrtghme] .transfers-grid .mud-table-head th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
}

/* ── Data rows ──────────────────────────────────────────────────────────── */
[b-sj3wrtghme] .transfers-grid .mud-table-row td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .85rem;
}

[b-sj3wrtghme] .transfers-grid .mud-table-row:hover td {
    background: var(--bg-card-hover) !important;
}

/* ── Toolbar + pagination ───────────────────────────────────────────────── */
[b-sj3wrtghme] .transfers-grid .mud-toolbar,
[b-sj3wrtghme] .transfers-grid .mud-table-pagination {
    background: transparent !important;
    color: var(--text-secondary) !important;
}

[b-sj3wrtghme] .transfers-grid .mud-table-pagination .mud-select-input,
[b-sj3wrtghme] .transfers-grid .mud-table-pagination .mud-input {
    color: var(--text-primary) !important;
}

[b-sj3wrtghme] .transfers-grid .mud-input {
    color: var(--text-primary) !important;
}

.transfers-search[b-sj3wrtghme] {
    min-width: 240px;
}
/* /Components/Pages/Locations/Locations.razor.rz.scp.css */
/* MudDataGrid dark overrides */
[b-atfy9awtf0] .loc-mud-grid {
    background: transparent !important;
}

[b-atfy9awtf0] .loc-mud-grid .mud-table-head th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
}

[b-atfy9awtf0] .loc-mud-grid .mud-table-body td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .85rem;
}

[b-atfy9awtf0] .loc-mud-grid .mud-table-body tr:hover td {
    background: rgba(255,255,255,0.04) !important;
}

[b-atfy9awtf0] .loc-mud-grid .mud-toolbar {
    background: transparent !important;
    border-bottom: 1px solid var(--border-subtle);
    padding: .5rem .75rem;
}
/* /Components/Pages/Marketing/Campaigns.razor.rz.scp.css */
/* Override MudBlazor tabs to match app glass-card style */
[b-saxy26c2eq] .mud-tabs-panels {
    background: transparent;
}

[b-saxy26c2eq] .mud-tab-panel {
    background: transparent;
    padding: 0;
}

[b-saxy26c2eq] .mud-tabs-header {
    background: transparent;
    border-bottom: 1px solid var(--border-subtle);
    margin-bottom: 1rem;
}

[b-saxy26c2eq] .mud-tab {
    color: var(--text-secondary) !important;
    font-weight: 500;
}

[b-saxy26c2eq] .mud-tab.mud-tab-active {
    color: var(--accent-end) !important;
}

[b-saxy26c2eq] .mud-tab-slider {
    background: var(--accent-gradient) !important;
}

/* MudDataGrid inside glass-card */
[b-saxy26c2eq] .mud-marketing-grid .mud-table-root {
    background: transparent !important;
}

[b-saxy26c2eq] .mud-marketing-grid .mud-table-head th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .78rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
}

[b-saxy26c2eq] .mud-marketing-grid .mud-table-row td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .88rem;
}

[b-saxy26c2eq] .mud-marketing-grid .mud-table-row:hover td {
    background: var(--bg-card-hover) !important;
}

/* KPI cards */
.kpi-card[b-saxy26c2eq] {
    background: var(--bg-card);
    border: var(--border-card);
    border-radius: 16px;
    padding: 1.25rem 1rem;
    text-align: center;
    box-shadow: var(--shadow-card);
    transition: transform .18s ease, box-shadow .18s ease;
}

.kpi-card:hover[b-saxy26c2eq] {
    transform: translateY(-2px);
    box-shadow: 0 24px 64px rgba(0,0,0,.5);
}

.kpi-icon[b-saxy26c2eq] {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto .75rem;
    font-size: 1.2rem;
    color: #fff;
}

.kpi-value[b-saxy26c2eq] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.1;
}

.kpi-label[b-saxy26c2eq] {
    font-size: .78rem;
    color: var(--text-secondary);
    margin-top: .2rem;
    text-transform: uppercase;
    letter-spacing: .04em;
}

/* MudChart colors */
[b-saxy26c2eq] .mud-chart-bar rect {
    fill: var(--accent-start);
}

/* MudTextField / MudSelect input overrides */
[b-saxy26c2eq] .mud-input-root {
    color: var(--text-primary) !important;
}

[b-saxy26c2eq] .mud-input-outlined .mud-notched-outline {
    border-color: var(--border-input) !important;
}

[b-saxy26c2eq] .mud-input-outlined:hover .mud-notched-outline {
    border-color: var(--accent-end) !important;
}

[b-saxy26c2eq] .mud-input-label {
    color: var(--text-secondary) !important;
}

[b-saxy26c2eq] .mud-dialog {
    background: var(--bg-card) !important;
    border: var(--border-card) !important;
    box-shadow: var(--shadow-card) !important;
}

[b-saxy26c2eq] .mud-dialog-title {
    color: var(--text-primary) !important;
}

/* MudChip */
[b-saxy26c2eq] .mud-chip {
    font-size: .75rem !important;
    height: 22px !important;
}
/* /Components/Pages/Marketing/CampaignWizard.razor.rz.scp.css */
/* MudStepper match app style */
[b-sfs35q1b1h] .mud-stepper .mud-step-label {
    color: var(--text-secondary) !important;
}

[b-sfs35q1b1h] .mud-stepper .mud-step-label-active {
    color: var(--text-primary) !important;
}

[b-sfs35q1b1h] .mud-stepper .mud-step-icon-root {
    background: var(--bg-card) !important;
    border: var(--border-input) !important;
}

[b-sfs35q1b1h] .mud-stepper .mud-step-icon-root.mud-step-icon-active {
    background: var(--accent-gradient) !important;
    border: none !important;
}

[b-sfs35q1b1h] .mud-stepper .mud-step-icon-root.mud-step-icon-completed {
    background: var(--color-success) !important;
    border: none !important;
}

/* Template selection cards */
.template-card[b-sfs35q1b1h] {
    background: var(--bg-card);
    border: var(--border-card);
    border-radius: 12px;
    padding: 1rem;
    cursor: pointer;
    transition: border-color .18s ease, background .18s ease;
}

.template-card:hover[b-sfs35q1b1h] {
    background: var(--bg-card-hover);
    border-color: rgba(255,255,255,0.22);
}

.template-card-selected[b-sfs35q1b1h] {
    border-color: var(--accent-end) !important;
    background: rgba(67,24,255,0.12) !important;
}

/* MudTextField / MudSelect inputs */
[b-sfs35q1b1h] .mud-input-root {
    color: var(--text-primary) !important;
}

[b-sfs35q1b1h] .mud-input-outlined .mud-notched-outline {
    border-color: var(--border-input) !important;
}

[b-sfs35q1b1h] .mud-input-outlined:hover .mud-notched-outline {
    border-color: var(--accent-end) !important;
}

[b-sfs35q1b1h] .mud-input-label {
    color: var(--text-secondary) !important;
}

/* MudAutocomplete list */
[b-sfs35q1b1h] .mud-list {
    background: #1a2040 !important;
    border: var(--border-card) !important;
}

[b-sfs35q1b1h] .mud-list-item:hover {
    background: rgba(255,255,255,0.08) !important;
}

/* MudRadio */
[b-sfs35q1b1h] .mud-radio .mud-typography {
    color: var(--text-primary) !important;
}
/* /Components/Pages/Purchasing/ScanReceipt.razor.rz.scp.css */
.scan-preview-wrap[b-lc0yl497ig] {
    position: relative;
    display: inline-block;
    max-width: 100%;
}

.scan-preview-img[b-lc0yl497ig] {
    max-width: 100%;
    max-height: 320px;
    border-radius: 10px;
    border: 1px solid var(--border-subtle);
    object-fit: contain;
    display: block;
}

.scan-remove-btn[b-lc0yl497ig] {
    position: absolute;
    top: -10px;
    right: -10px;
    background: var(--bg-card);
    border: none;
    color: var(--color-danger);
    font-size: 1.2rem;
    cursor: pointer;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    line-height: 1;
}

.scan-drop-zone[b-lc0yl497ig] {
    border: 2px dashed var(--border-subtle);
    border-radius: 12px;
    padding: 2rem 1rem;
    text-align: center;
    transition: border-color .2s;
}

.scan-drop-zone:hover[b-lc0yl497ig] {
    border-color: var(--accent-start);
}

.scan-file-upload[b-lc0yl497ig] {
    display: inline-flex;
}

/* Line items */
.scan-line-header[b-lc0yl497ig] {
    font-size: .72rem;
    color: var(--text-secondary);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    padding-bottom: .25rem;
    border-bottom: 1px solid var(--border-subtle);
    display: none; /* hidden on mobile, columns stack */
}

@media (min-width: 768px) {
    .scan-line-header[b-lc0yl497ig] {
        display: flex;
    }
}

.order-line-row[b-lc0yl497ig] {
    padding: .35rem .25rem;
    border-radius: 8px;
    border-bottom: 1px solid var(--border-subtle);
    margin-bottom: .25rem;
}

.order-line-row.line-unmapped[b-lc0yl497ig] {
    border-left: 3px solid rgba(200,130,0,0.5);
    padding-left: .5rem;
}

.scan-line-total[b-lc0yl497ig] {
    font-size: .85rem;
    color: var(--text-primary);
    padding-left: .5rem;
    display: flex;
    align-items: center;
}

.order-summary-row[b-lc0yl497ig] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .4rem .5rem;
    font-size: .85rem;
    color: var(--text-secondary);
}

.order-total-row[b-lc0yl497ig] {
    font-weight: 700;
    font-size: .95rem;
    color: var(--text-primary);
}
/* /Components/Pages/Reports/Reports.razor.rz.scp.css */
.rpt-filter-label[b-4j3bxe7g4s] {
    font-size: .82rem;
    font-weight: 600;
    color: var(--text-secondary);
}

/* Financial summary panel */
.rpt-fin-body[b-4j3bxe7g4s] {
    padding: .25rem 1.25rem 1.25rem;
}

.fin-row[b-4j3bxe7g4s] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .4rem 0;
}

.fin-row-label[b-4j3bxe7g4s] {
    font-size: .85rem;
    color: var(--text-secondary);
}

.fin-row-value[b-4j3bxe7g4s] {
    font-size: .95rem;
    font-weight: 600;
}

.fin-row-sep[b-4j3bxe7g4s] {
    padding-top: .65rem;
    margin-top: .25rem;
    border-top: 1px solid rgba(255,255,255,0.07);
}

.fin-row-total[b-4j3bxe7g4s] {
    padding-top: .75rem;
    margin-top: .25rem;
    border-top: 1px solid rgba(255,255,255,0.10);
}

/* MudSimpleTable dark overrides */
[b-4j3bxe7g4s] .rpt-mud-table {
    background: transparent !important;
}

[b-4j3bxe7g4s] .rpt-mud-table thead tr th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
    padding: .5rem .75rem;
}

[b-4j3bxe7g4s] .rpt-mud-table tbody tr td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .85rem;
    padding: .45rem .75rem;
}

[b-4j3bxe7g4s] .rpt-mud-table tbody tr:hover td {
    background: rgba(255,255,255,0.04) !important;
}

/* MudDataGrid dark overrides */
[b-4j3bxe7g4s] .rpt-mud-grid {
    background: transparent !important;
}

[b-4j3bxe7g4s] .rpt-mud-grid .mud-table-head th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
}

[b-4j3bxe7g4s] .rpt-mud-grid .mud-table-body td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .85rem;
}

[b-4j3bxe7g4s] .rpt-mud-grid .mud-table-body tr:hover td {
    background: rgba(255,255,255,0.04) !important;
}

[b-4j3bxe7g4s] .rpt-mud-grid .mud-toolbar {
    background: transparent !important;
    border-bottom: 1px solid var(--border-subtle);
    padding: .5rem .75rem;
}
/* /Components/Pages/Sales/Invoices.razor.rz.scp.css */
/* ── Grid surface — force transparent over any MudPaper elevation ────────── */
[b-t4lf9whgtp] .invoices-grid,
[b-t4lf9whgtp] .invoices-grid .mud-paper,
[b-t4lf9whgtp] .invoices-grid .mud-elevation-0,
[b-t4lf9whgtp] .invoices-grid .mud-elevation-1,
[b-t4lf9whgtp] .invoices-grid .mud-elevation-2,
[b-t4lf9whgtp] .invoices-grid .mud-elevation-4 {
    background: transparent !important;
    box-shadow: none !important;
}

[b-t4lf9whgtp] .invoices-grid .mud-table-root,
[b-t4lf9whgtp] .invoices-grid .mud-table-container {
    background: transparent !important;
}

/* ── Header row ─────────────────────────────────────────────────────────── */
[b-t4lf9whgtp] .invoices-grid .mud-table-head th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
}

/* ── Data rows ──────────────────────────────────────────────────────────── */
[b-t4lf9whgtp] .invoices-grid .mud-table-row td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .85rem;
}

[b-t4lf9whgtp] .invoices-grid .mud-table-row:hover td {
    background: var(--bg-card-hover) !important;
}

/* ── Toolbar + pagination ───────────────────────────────────────────────── */
[b-t4lf9whgtp] .invoices-grid .mud-toolbar,
[b-t4lf9whgtp] .invoices-grid .mud-table-pagination {
    background: transparent !important;
    color: var(--text-secondary) !important;
}

[b-t4lf9whgtp] .invoices-grid .mud-table-pagination .mud-select-input,
[b-t4lf9whgtp] .invoices-grid .mud-table-pagination .mud-input {
    color: var(--text-primary) !important;
}

[b-t4lf9whgtp] .invoices-grid .mud-input {
    color: var(--text-primary) !important;
}

/* ── Lines sub-grid inside the dialog ──────────────────────────────────── */
[b-t4lf9whgtp] .inv-lines-grid,
[b-t4lf9whgtp] .inv-lines-grid .mud-paper,
[b-t4lf9whgtp] .inv-lines-grid .mud-elevation-0,
[b-t4lf9whgtp] .inv-lines-grid .mud-elevation-1 {
    background: transparent !important;
    box-shadow: none !important;
}

[b-t4lf9whgtp] .inv-lines-grid .mud-table-root,
[b-t4lf9whgtp] .inv-lines-grid .mud-table-container {
    background: transparent !important;
}

[b-t4lf9whgtp] .inv-lines-grid .mud-table-head th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
}

[b-t4lf9whgtp] .inv-lines-grid .mud-table-row td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .85rem;
}

.inv-search[b-t4lf9whgtp] {
    min-width: 260px;
}
/* /Components/Pages/Sales/SalesOrders.razor.rz.scp.css */
/* ── Grid surface — force transparent over any MudPaper elevation ────────── */
[b-vnph525v7i] .orders-grid,
[b-vnph525v7i] .orders-grid .mud-paper,
[b-vnph525v7i] .orders-grid .mud-elevation-0,
[b-vnph525v7i] .orders-grid .mud-elevation-1,
[b-vnph525v7i] .orders-grid .mud-elevation-2,
[b-vnph525v7i] .orders-grid .mud-elevation-4 {
    background: transparent !important;
    box-shadow: none !important;
}

[b-vnph525v7i] .orders-grid .mud-table-root,
[b-vnph525v7i] .orders-grid .mud-table-container {
    background: transparent !important;
}

/* ── Header row ─────────────────────────────────────────────────────────── */
[b-vnph525v7i] .orders-grid .mud-table-head th {
    background: rgba(255,255,255,0.04) !important;
    color: var(--text-secondary) !important;
    font-size: .72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid var(--border-subtle) !important;
}

/* ── Data rows ──────────────────────────────────────────────────────────── */
[b-vnph525v7i] .orders-grid .mud-table-row td {
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    font-size: .85rem;
}

[b-vnph525v7i] .orders-grid .mud-table-row:hover td {
    background: var(--bg-card-hover) !important;
}

/* ── Toolbar + pagination ───────────────────────────────────────────────── */
[b-vnph525v7i] .orders-grid .mud-toolbar,
[b-vnph525v7i] .orders-grid .mud-table-pagination {
    background: transparent !important;
    color: var(--text-secondary) !important;
}

[b-vnph525v7i] .orders-grid .mud-table-pagination .mud-select-input,
[b-vnph525v7i] .orders-grid .mud-table-pagination .mud-input {
    color: var(--text-primary) !important;
}

[b-vnph525v7i] .orders-grid .mud-input {
    color: var(--text-primary) !important;
}

.orders-search[b-vnph525v7i] {
    min-width: 280px;
}

/* ── Row action buttons ─────────────────────────────────────────────────── */
.order-action-btn[b-vnph525v7i] {
    font-size: .72rem !important;
    padding: 0 .5rem !important;
    min-height: 26px !important;
    height: 26px !important;
    line-height: 1 !important;
}
/* /Components/Pages/Sales/ScanSalesInvoice.razor.rz.scp.css */
/* ── Reuse scan upload styles from ScanReceipt ───────────────────────────── */
.scan-preview-wrap[b-hwznxp76nq] {
    position: relative;
    display: inline-block;
    max-width: 100%;
}

.scan-preview-img[b-hwznxp76nq] {
    max-width: 100%;
    max-height: 320px;
    border-radius: 10px;
    border: 1px solid var(--border-subtle);
    object-fit: contain;
    display: block;
}

.scan-remove-btn[b-hwznxp76nq] {
    position: absolute;
    top: -10px;
    right: -10px;
    background: var(--bg-card);
    border: none;
    color: var(--color-danger);
    font-size: 1.2rem;
    cursor: pointer;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.scan-drop-zone[b-hwznxp76nq] {
    border: 2px dashed var(--border-subtle);
    border-radius: 12px;
    padding: 2rem 1rem;
    text-align: center;
    transition: border-color .2s;
}

.scan-drop-zone:hover[b-hwznxp76nq] { border-color: var(--accent-start); }
.scan-file-upload[b-hwznxp76nq] { display: inline-flex; }

/* ── Line items ──────────────────────────────────────────────────────────── */
.scan-line-header[b-hwznxp76nq] {
    font-size: .72rem;
    color: var(--text-secondary);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    padding-bottom: .25rem;
    border-bottom: 1px solid var(--border-subtle);
    display: none;
}

@media (min-width: 768px) { .scan-line-header[b-hwznxp76nq] { display: flex; } }

.order-line-row[b-hwznxp76nq] {
    padding: .35rem .25rem;
    border-radius: 8px;
    border-bottom: 1px solid var(--border-subtle);
    margin-bottom: .25rem;
}

.order-line-row.line-unmapped[b-hwznxp76nq] {
    border-left: 3px solid rgba(200,130,0,0.5);
    padding-left: .5rem;
}

.scan-line-total[b-hwznxp76nq] {
    font-size: .85rem;
    color: var(--text-primary);
    padding-left: .5rem;
    display: flex;
    align-items: center;
}

.order-summary-row[b-hwznxp76nq] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .4rem .5rem;
    font-size: .85rem;
    color: var(--text-secondary);
}

.order-total-row[b-hwznxp76nq] {
    font-weight: 700;
    font-size: .95rem;
    color: var(--text-primary);
}

/* ── Preview card ────────────────────────────────────────────────────────── */
.ssi-preview-card[b-hwznxp76nq] {
    border-left: 3px solid var(--accent-end);
}

.ssi-info-box[b-hwznxp76nq] {
    background: rgba(255,255,255,0.04);
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    padding: .5rem .75rem;
}

.ssi-info-label[b-hwznxp76nq] {
    font-size: .68rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: .05em;
    margin-bottom: .15rem;
}

.ssi-info-value[b-hwznxp76nq] {
    font-size: .88rem;
    font-weight: 600;
    color: var(--text-primary);
}

/* Entities-being-created chips */
.ssi-creates-row[b-hwznxp76nq] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.ssi-creates-chip[b-hwznxp76nq] {
    display: inline-flex;
    align-items: center;
    padding: .25rem .75rem;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.15);
    background: rgba(255,255,255,0.05);
    color: var(--text-secondary);
    font-size: .78rem;
}

.ssi-creates-chip--warn[b-hwznxp76nq] {
    border-color: rgba(255,180,0,.35);
    color: rgba(255,200,60,.85);
    background: rgba(255,180,0,.07);
}

/* Preview table */
.ssi-preview-table[b-hwznxp76nq] {
    font-size: .84rem;
    color: var(--text-primary);
}

.ssi-preview-table thead th[b-hwznxp76nq] {
    color: var(--text-secondary);
    font-size: .72rem;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-color: var(--border-subtle);
    font-weight: 600;
}

.ssi-preview-table tbody tr[b-hwznxp76nq] {
    border-color: var(--border-subtle);
}

.ssi-row-danger[b-hwznxp76nq] { background: rgba(239,68,68,0.07) !important; }
.ssi-row-warn[b-hwznxp76nq]   { background: rgba(255,180,0,0.07) !important; }

.ssi-stock-after[b-hwznxp76nq] { font-weight: 700; }
.ssi-stock-ok[b-hwznxp76nq]     { color: #4ade80; }
.ssi-stock-warn[b-hwznxp76nq]   { color: rgba(255,200,60,.9); }
.ssi-stock-danger[b-hwznxp76nq] { color: rgb(239,68,68); }
