/* DevExpress Blazing Berry theme (blazing-berry.bs5.min.css) includes Bootstrap 5  */
/* and all base styles. Only add app-specific overrides below.                      */

/* Per-layout background images */
.public-layout-bg {
    min-height: 100dvh;
    background-image: url('/logos/public-background.jpg');
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.private-layout-bg {
    height: 100dvh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: linear-gradient(160deg, #faf8ff 0%, #f5fbff 50%, #f5fff8 100%);
}

/* Lock html/body scroll for private layout only — prevents outer browser scrollbar */
html:has(.private-layout-bg),
html:has(.private-layout-bg) body {
    overflow: hidden;
    height: 100%;
}

/* Blazor form validation — maps to Bootstrap .invalid-feedback color */
.validation-message {
    color: var(--bs-danger);
    font-size: 0.8125rem;
    margin-top: 0.25rem;
    display: block;
}

/* Accounts popup edit form — wider to accommodate address fields */
.accounts-edit-popup {
    min-width: 780px;
}

/* Channels popup edit form — wide enough for market info badges */
.channels-edit-popup {
    min-width: 750px;
}

/* Grid popup edit forms: Save/Cancel are always present — header close button is redundant.
   Multiple selectors required: DevExpress v23.2 may use different class names per version.
   !important required to override DevExpress theme specificity. */
[class*="-edit-popup"] .dxbl-popup-header-toolbar { display: none !important; }
[class*="-edit-popup"] .dxbl-popup-close-btn { display: none !important; }
[class*="-edit-popup"] .dxbl-popup-header-button { display: none !important; }
[class*="-edit-popup"] .dxbl-popup-header-btns { display: none !important; }
[class*="-edit-popup"] .dxbl-popup-header button { display: none !important; }

/* Products popup edit form — wider to fit pricing + dimensions fields */
.products-edit-popup {
    min-width: 780px;
}

/* Alternate row style — uses Bootstrap gray from the active theme */
.alt-item > td:not(.dxbl-grid-empty-cell),
.alt-item > td:not(.dxbl-grid-indent-cell) {
    background-color: color-mix(in srgb, var(--bs-gray-300), transparent 50%);
}

/* Center-align badge pills within table cells (DxGrid cells and HTML tables).
   display:table shrink-wraps the badge to its content width; margin:auto centers it. */
td .badge {
    display: table;
    margin: 0 auto;
}

/* Compact grid toolbar — overrides DevExpress theme padding/min-height variables */
.dxbl-grid {
    --dxbl-grid-toolbar-container-padding-y: 0.25rem;
    --dxbl-grid-toolbar-container-min-height: 2.25rem;
}

/* CSS-based password masking — keeps input as type="text" so the DOM element
   is never replaced on reveal toggle, preventing value loss in Blazor */
.text-masked input {
    -webkit-text-security: disc;
}

/* Font size preference — applied as a class on <html> by PrivateLayout.razor.js */
html.font-small  { font-size: 12px; }
html.font-medium { font-size: 14px; }
html.font-large  { font-size: 16px; }

/* Per-platform badge colors — used in Platform CellDisplayTemplate across all grids */
.badge-platform-amazon      { background-color: #6f42c1; color: #fff; }
.badge-platform-beyond      { background-color: #20c997; color: #fff; }
.badge-platform-ebay        { background-color: #dc3545; color: #fff; }
.badge-platform-faire       { background-color: #d63384; color: #fff; }
.badge-platform-homeroot    { background-color: #fd7e14; color: #fff; }
.badge-platform-lowesmirakl { background-color: #0d6efd; color: #fff; }
.badge-platform-walmart     { background-color: #084298; color: #fff; }
.badge-platform-wayfair     { background-color: #0dcaf0; color: #212529; }