@import '_content/VintageCashCow.Blazor.Shared/VintageCashCow.Blazor.Shared.op8dvcmjq6.bundle.scp.css';

/* /Components/Controls/Buttons/LoginButton.razor.rz.scp.css */
/* /Components/Controls/CollapsiblePanel.razor.rz.scp.css */
.collapsible-panel[b-4ym5ev8j5l] {
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    background-color: #fafafa;
    margin-bottom: 16px;
    overflow: hidden;
    width: 100%;
}

.collapsible-header[b-4ym5ev8j5l] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    cursor: pointer;
    user-select: none;
    background-color: #f5f5f5;
    border-bottom: 1px solid transparent;
    transition: background-color 0.2s ease;
}

.collapsible-header:hover[b-4ym5ev8j5l] {
    background-color: #ebebeb;
}

.collapsible-title[b-4ym5ev8j5l] {
    font-size: 16px;
    font-weight: 500;
    color: #333;
    display: flex;
    align-items: center;
    gap: 8px;
}

.collapsible-chevron[b-4ym5ev8j5l] {
    display: flex;
    align-items: center;
    color: #666;
    transition: transform 0.2s ease;
}

.collapsible-content[b-4ym5ev8j5l] {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, padding 0.3s ease;
    padding: 0 16px;
}

.collapsible-panel.expanded .collapsible-header[b-4ym5ev8j5l] {
    border-bottom: 1px solid #e0e0e0;
}

.collapsible-panel.expanded .collapsible-content[b-4ym5ev8j5l] {
    max-height: 2000px;
    padding: 16px;
}
/* /Components/Controls/Dialogs/AuctionHouseDialog.razor.rz.scp.css */
/*
    Add auction house.

    ::deep is needed for any class handed to a Radzen component: those land on elements the
    component renders, which do not carry this component's CSS isolation attribute.
*/
.house-dialog[b-kp7fze2jv2] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* ---- validation ---- */

/* One block above the fields, listing everything that needs fixing. */
.house-dialog-errors[b-kp7fze2jv2] {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    padding: 0.75rem 1rem;
    border: 1px solid var(--rz-danger-light, #f0c9cb);
    border-radius: var(--rz-border-radius);
    background-color: var(--rz-danger-lighter, #fbeaeb);
    font-size: 0.85rem;
    color: #cc0000;
}

.house-dialog-errors ul[b-kp7fze2jv2] {
    margin: 0;
    /* Enough for the markers, no more: the default list indent is far wider. */
    padding-left: 1.1rem;
}

/* A single message reads as a sentence, not a one-item list. */
.house-dialog-errors ul:has(li:only-child)[b-kp7fze2jv2] {
    padding-left: 0;
    list-style: none;
}

/* ---- fields ---- */

.house-dialog-field[b-kp7fze2jv2] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.house-dialog-label-row[b-kp7fze2jv2]  .house-dialog-label,
.house-dialog-label-row > .house-dialog-label[b-kp7fze2jv2] {
    font-weight: 600;
}

/* Keeps the required marker on the same line as the label, which is otherwise its own row. */
.house-dialog-label-row[b-kp7fze2jv2] {
    display: flex;
    align-items: baseline;
    gap: 0.25rem;
}

.house-dialog-required[b-kp7fze2jv2] {
    color: #cc0000;
}

.house-dialog-hint[b-kp7fze2jv2] {
    margin: 0;
    font-size: 0.8rem;
    color: var(--rz-text-secondary-color);
}

.house-dialog-team[b-kp7fze2jv2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* ---- actions ---- */

/* Cancel left, Save right, as the design has them. */
.house-dialog-actions[b-kp7fze2jv2] {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    margin-top: 0.25rem;
}
/* /Components/Controls/Dialogs/ScheduleListingsDialog.razor.rz.scp.css */
.schedule-dialog[b-ad7ha5te53] {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

/* Header */
.schedule-header[b-ad7ha5te53] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-bottom: 14px;
    border-bottom: 1px solid #e8e8ee;
}

.schedule-header-icon[b-ad7ha5te53] {
    color: #524F9E;
    font-size: 34px;
}

.schedule-title[b-ad7ha5te53] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #2b2b3c;
}

.schedule-count[b-ad7ha5te53] {
    font-size: 13px;
    color: #6b6b7b;
}

/* Fields */
.schedule-field[b-ad7ha5te53] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.schedule-field[b-ad7ha5te53]  .rz-form-field,
.schedule-field[b-ad7ha5te53]  label {
    font-size: 13px;
    font-weight: 600;
    color: #4a4a5a;
}

/* Stagger toggle */
.schedule-stagger[b-ad7ha5te53] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    background: #f6f6fb;
    border: 1px solid #e4e4ee;
    border-radius: 6px;
}

.schedule-stagger[b-ad7ha5te53]  label {
    font-size: 13px;
    font-weight: 600;
    color: #4a4a5a;
    cursor: pointer;
}

.schedule-hint[b-ad7ha5te53] {
    margin: 4px 0 0;
    font-size: 12px;
    line-height: 1.4;
    color: #7a7a8a;
}

/* Summary */
.schedule-summary[b-ad7ha5te53] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 12px 14px;
    border: 1px dashed #d5d5e2;
    border-radius: 6px;
}

.schedule-summary-row[b-ad7ha5te53] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    font-size: 13px;
    color: #6b6b7b;
}

.schedule-summary-row strong[b-ad7ha5te53] {
    color: #2b2b3c;
    font-variant-numeric: tabular-nums;
}

/* Warning */
.schedule-warning[b-ad7ha5te53] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    background: #fff8e6;
    border: 1px solid #f0dca8;
    border-radius: 6px;
    font-size: 13px;
    color: #7a5c10;
}

.schedule-warning[b-ad7ha5te53]  .rz-icon {
    color: #c9962a;
}

/* Actions */
.schedule-actions[b-ad7ha5te53] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding-top: 4px;
}
/* /Components/Controls/Listings/FailedListingsGrid.razor.rz.scp.css */
/* /Components/Controls/Listings/LegacyListingFormControl.razor.rz.scp.css */
/* Form Layout */
.legacy-form[b-vyb0f8x3vo] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.legacy-row[b-vyb0f8x3vo] {
    display: grid;
    gap: 16px;
}

.legacy-row.full-width[b-vyb0f8x3vo] {
    grid-template-columns: 1fr;
}

.legacy-row.two-col[b-vyb0f8x3vo] {
    grid-template-columns: 1fr 1fr;
}

.legacy-row.three-col[b-vyb0f8x3vo] {
    grid-template-columns: 1fr 1fr 1fr;
}

.legacy-row.four-col[b-vyb0f8x3vo] {
    grid-template-columns: 1fr 1fr 1fr 1fr;
}

/* Condition field: the dropdown and the "not used" state occupy the same cell and cross-fade, so the
   field never jumps in or out of the layout. The inactive one is taken out of flow rather than removed
   from the DOM, which is what makes the transition possible at all. */
.condition-cell[b-vyb0f8x3vo] {
    position: relative;
    /* A grid, not a plain block, so the form field is blockified and stretched to the full column
       width exactly as it was when it sat directly in .legacy-row. Radzen's form field is inline-flex,
       so in a plain wrapper it would shrink to its content and end up narrower than every other field. */
    display: grid;
    grid-template-columns: 1fr;
}

.condition-cell[b-vyb0f8x3vo]  > * {
    transition: opacity 180ms ease-in-out;
}

.condition-cell[b-vyb0f8x3vo]  > .is-faded {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

/* Matches the height and baseline of a Radzen input so the label sits where it does on every
   other field in the row */
.condition-cell[b-vyb0f8x3vo]  .condition-not-used {
    display: flex;
    align-items: center;
    /* min-height rather than height, so a long item type name wraps to a second line instead of
       spilling out of the field */
    min-height: var(--rz-input-height, 2.5rem);
    padding: 0.375rem 0.75rem;
    font-size: var(--rz-input-font-size, 0.875rem);
    line-height: 1.3;
    font-style: italic;
    color: var(--rz-text-secondary-color, #6c757d);
}

/* Section Headers */
.legacy-section-header[b-vyb0f8x3vo] {
    font-size: 14px;
    font-weight: 600;
    color: #333;
    margin-top: 24px;
    margin-bottom: 8px;
}

/* Radzen Form Field Styling */
[b-vyb0f8x3vo] .rz-form-field {
    --rz-form-field-border-color: #d0d0d0;
}

/* Character count styling */
.char-count[b-vyb0f8x3vo] {
    text-align: right;
    font-size: 12px;
    color: #666;
    margin-top: 4px;
}

/* Attributes Wrapper - style the ListingAttributesControl */
.legacy-attributes-wrapper[b-vyb0f8x3vo] {
    margin-top: 8px;
}

.legacy-attributes-wrapper[b-vyb0f8x3vo]  .rz-card {
    box-shadow: none;
    border: none;
    background: transparent;
    padding: 0;
}

/* Limit optional attributes scroll to 190px */
.legacy-attributes-wrapper[b-vyb0f8x3vo]  .col-12[style*="max-height"] {
    max-height: 190px !important;
}

/* Responsive */
@media (max-width: 1200px) {
    .legacy-row.four-col[b-vyb0f8x3vo] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 768px) {
    .legacy-row.two-col[b-vyb0f8x3vo],
    .legacy-row.three-col[b-vyb0f8x3vo],
    .legacy-row.four-col[b-vyb0f8x3vo] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Controls/Listings/LegacyListingsTableControl.razor.rz.scp.css */
.legacy-listings-table-container[b-bukdbo6smv] {
    background-color: #fff;

    /*
        One size for every button on this screen - New listing, Export CSV and the per-row Set Ready for
        Listing. Width is driven by the longest label ("Set Ready for Listing"), so shortening that label is
        what would let this come down. Height matches Radzen's own .rz-button-md min-height, which is what an
        unsized RadzenButton renders at.
    */
    --listings-button-width: 11.25rem;
    --listings-button-height: 2.25rem;

    /* How far the filter-bar buttons may shrink, and grow, before the bar wraps. */
    --listings-button-min-width: 7rem;
    --listings-button-max-width: 14rem;
}

/*
    Only the filter-bar buttons can be sized from here. The per-row Set Ready for Listing button lives inside a
    RadzenDataGridColumn Template, and elements in a child component's template do not get this component's CSS
    isolation attribute - so it is sized inline from ListingsButtonStyle in the code-behind instead, reading the
    same two properties.
*/
/* Basis is the in-grid button's width; shrinks and grows from there with the bar. */
.new-listing-btn[b-bukdbo6smv],
.filter-actions[b-bukdbo6smv]  .table-export-button {
    flex: 1 1 var(--listings-button-width);
    min-width: var(--listings-button-min-width);
    max-width: var(--listings-button-max-width);
}

.new-listing-btn[b-bukdbo6smv]  .rz-button,
.filter-actions[b-bukdbo6smv]  .table-export-button {
    width: 100%;
    height: var(--listings-button-height);
    min-height: var(--listings-button-height);
    white-space: nowrap;
    overflow: hidden;
}

/* Filter Bar */
/* nowrap keeps the buttons on the filters' line; the media query below is the fallback. */
.filter-bar[b-bukdbo6smv] {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background-color: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 4px;
    margin-bottom: 16px;
}

/* min-width: 0 is what lets a flex item shrink below its content width. */
.filter-item[b-bukdbo6smv] {
    position: relative;
    flex: 1 1 0;
    min-width: 0;
    max-width: 150px;
}

.filter-item[b-bukdbo6smv]  .rz-dropdown,
.filter-item[b-bukdbo6smv]  .rz-datepicker {
    width: 100%;
    min-width: 0;
}

/* Twice a dropdown's share - it holds the most text. */
.search-box[b-bukdbo6smv] {
    position: relative;
    display: flex;
    align-items: center;
    flex: 2 1 0;
    min-width: 0;
    max-width: 260px;
}

.search-icon-wrapper[b-bukdbo6smv] {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #6c757d;
    pointer-events: none;
    z-index: 1;
    display: flex;
    align-items: center;
}

.search-box[b-bukdbo6smv]  .search-input {
    padding-left: 32px !important;
    width: 100%;
}

.search-box[b-bukdbo6smv]  .search-input input {
    padding-left: 32px !important;
}

/* No margin-left: auto - an auto margin eats the free space before flex-grow can, so the buttons
   would never widen. justify-content keeps them right-aligned once they hit their max width. */
.filter-actions[b-bukdbo6smv] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex: 1 1 auto;
    min-width: 0;
}

.new-listing-btn[b-bukdbo6smv]  .rz-button {
    background-color: #524F9E;
    border-color: #524F9E;
}

.new-listing-btn[b-bukdbo6smv]  .rz-button:hover {
    background-color: #423D7A;
    border-color: #423D7A;
}

/* Loading */
.loading-container[b-bukdbo6smv] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 300px;
}

.no-data[b-bukdbo6smv] {
    text-align: center;
    padding: 40px;
    color: #6c757d;
}

/* Data Grid */
.listings-grid[b-bukdbo6smv] {
    border: 1px solid #e9ecef;
    border-radius: 4px;
}

.listings-grid[b-bukdbo6smv]  .rz-datatable-thead th {
    background-color: #fff;
    border-bottom: 2px solid #e9ecef;
    font-weight: 600;
    color: #495057;
    padding: 12px 8px;
}

.listings-grid[b-bukdbo6smv]  .rz-datatable-data td {
    padding: 12px 8px;
    border-bottom: 1px solid #f1f3f5;
    vertical-align: middle;
}

.listings-grid[b-bukdbo6smv]  .rz-datatable-data tr:hover {
    background-color: #f8f9fa;
}

.listings-grid[b-bukdbo6smv]  .rz-datatable-data tr {
    cursor: pointer;
}

/* Link styling */
.link-text[b-bukdbo6smv] {
    color: #524F9E;
    text-decoration: none;
    font-weight: 500;
}

.link-text:hover[b-bukdbo6smv] {
    color: #423D7A;
    text-decoration: underline;
}

/* Pagination */
.listings-grid[b-bukdbo6smv]  .rz-pager {
    padding: 12px;
    border-top: 1px solid #e9ecef;
}

.listings-grid[b-bukdbo6smv]  .rz-pager-page {
    min-width: 32px;
    height: 32px;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    margin: 0 2px;
}

.listings-grid[b-bukdbo6smv]  .rz-state-active {
    background-color: #524F9E;
    border-color: #524F9E;
    color: #fff;
}

/* Dropdowns */
[b-bukdbo6smv] .rz-dropdown {
    border: 1px solid #ced4da;
    border-radius: 4px;
}

[b-bukdbo6smv] .rz-datepicker {
    border: 1px solid #ced4da;
    border-radius: 4px;
}

/* Below this the filters and buttons can't fit on one row even at their minimums, so wrapping
   beats overflowing the page. */
@media (max-width: 1024px) {
    .filter-bar[b-bukdbo6smv] {
        flex-wrap: wrap;
    }

    .filter-item[b-bukdbo6smv],
    .search-box[b-bukdbo6smv] {
        flex: 1 1 150px;
    }
}
/* /Components/Controls/Listings/ListingAttributesControl.razor.rz.scp.css */
/* /Components/Controls/Listings/ListingsGrid.razor.rz.scp.css */
/* /Components/Controls/Listings/ListingsPublishGrid.razor.rz.scp.css */
/* Keeps the last grid rows / pager clear of the floating action bar */
.publish-bar-spacer[b-ud1bd95dub] {
    height: 80px;
}

/* Inset by the sidebar width so the bar spans the content, not the navigation. */
.publish-action-bar[b-ud1bd95dub] {
    position: fixed;
    bottom: 0;
    left: var(--rz-sidebar-width, 250px);
    right: 0;
    background: #fff;
    border-top: 1px solid #e0e0e0;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.08);
    z-index: 100;
}

.publish-action-bar-inner[b-ud1bd95dub] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 12px 30px;
}

.publish-selected-count[b-ud1bd95dub] {
    font-size: 13px;
    color: #6b6b7b;
    padding-right: 15px;
    border-right: 1px solid #ddd;
}
/* /Components/Controls/Listings/ListingTemplateSearch.razor.rz.scp.css */
.template-loading[b-hkzg0vrvef] {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #666;
    font-size: 14px;
}

.template-error[b-hkzg0vrvef] {
    color: #dc3545;
    font-size: 14px;
    padding: 8px 0;
}

.template-search-filters[b-hkzg0vrvef] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.filter-row[b-hkzg0vrvef] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.template-row[b-hkzg0vrvef] {
    width: 100%;
}

.template-option[b-hkzg0vrvef] {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.template-option strong[b-hkzg0vrvef] {
    color: #524F9E;
}

/* Responsive */
@media (max-width: 768px) {
    .filter-row[b-hkzg0vrvef] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Controls/Listings/ProducedListingsTable.razor.rz.scp.css */
.produced-listings-container[b-i7snfq6wh9] {
    border: 1px solid #e9ecef;
    border-radius: 4px;
    background-color: #fff;
    max-width: 400px;
}

.produced-listings-header[b-i7snfq6wh9] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 2px solid #e9ecef;
    background-color: #f8f9fa;
}

.produced-listings-header h4[b-i7snfq6wh9] {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #212529;
}

.produced-listings-filters[b-i7snfq6wh9] {
    display: flex;
    gap: 12px;
}

/* Dropdowns */
.produced-listings-filters[b-i7snfq6wh9]  .rz-dropdown {
    border: 1px solid #ced4da;
    border-radius: 4px;
    background-color: #fff;
}

/* Data Grid */
.produced-listings-grid[b-i7snfq6wh9]  .rz-datatable-thead th {
    background-color: #fff;
    border-bottom: 2px solid #e9ecef;
    font-weight: 600;
    color: #495057;
    padding: 12px 20px;
    font-size: 13px;
}

.produced-listings-grid[b-i7snfq6wh9]  .rz-datatable-data td {
    padding: 12px 20px;
    border-bottom: 1px solid #f1f3f5;
    vertical-align: middle;
    font-size: 13px;
}

.produced-listings-grid[b-i7snfq6wh9]  .rz-datatable-data tr:hover {
    background-color: #f8f9fa;
}

/* Pagination */
.produced-listings-grid[b-i7snfq6wh9]  .rz-pager {
    padding: 12px;
    border-top: 1px solid #e9ecef;
}

.produced-listings-grid[b-i7snfq6wh9]  .rz-pager-page {
    min-width: 32px;
    height: 32px;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    margin: 0 2px;
}

.produced-listings-grid[b-i7snfq6wh9]  .rz-state-active {
    background-color: #524F9E;
    border-color: #524F9E;
    color: #fff;
}
/* /Components/Controls/Listings/UserTotalListingsTable.razor.rz.scp.css */
.user-totals-container[b-d35aaoyifv] {
    border: 1px solid #e9ecef;
    border-radius: 4px;
    background-color: #fff;
    max-width: 700px;
}

.user-totals-header[b-d35aaoyifv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 2px solid #e9ecef;
    background-color: #f8f9fa;
}

.user-totals-header h4[b-d35aaoyifv] {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #212529;
}

.user-totals-filters[b-d35aaoyifv] {
    display: flex;
    gap: 12px;
}

/* Dropdowns */
.user-totals-filters[b-d35aaoyifv]  .rz-dropdown {
    border: 1px solid #ced4da;
    border-radius: 4px;
    background-color: #fff;
}

/* Data Grid */
.user-totals-grid[b-d35aaoyifv]  .rz-datatable-thead th {
    background-color: #fff;
    border-bottom: 2px solid #e9ecef;
    font-weight: 600;
    color: #495057;
    padding: 12px 20px;
    font-size: 13px;
}

.user-totals-grid[b-d35aaoyifv]  .rz-datatable-data td {
    padding: 12px 20px;
    border-bottom: 1px solid #f1f3f5;
    vertical-align: middle;
    font-size: 13px;
}

.user-totals-grid[b-d35aaoyifv]  .rz-datatable-data tr:hover {
    background-color: #f8f9fa;
}

/* Pagination */
.user-totals-grid[b-d35aaoyifv]  .rz-pager {
    padding: 12px;
    border-top: 1px solid #e9ecef;
}

.user-totals-grid[b-d35aaoyifv]  .rz-pager-page {
    min-width: 32px;
    height: 32px;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    margin: 0 2px;
}

.user-totals-grid[b-d35aaoyifv]  .rz-state-active {
    background-color: #524F9E;
    border-color: #524F9E;
    color: #fff;
}
/* /Components/Controls/PillListEntryControl.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/AutoComplete/CategoryAutoComplete.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/AutoComplete/SubCategoryAutoComplete.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/Dropdowns/AttributeDataDropdown.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/Dropdowns/CategoryDropdown.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/Dropdowns/ConditionDropdown.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/Dropdowns/CurrencyDropdown.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/Dropdowns/GenerationTypeDropdown.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/Dropdowns/ItemTypeDropdown.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/Dropdowns/SubCategoryDropdown.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/Dropdowns/WarehouseDropdown.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/Grids/CategoryDataGrid.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/Grids/ItemTypeDataGrid.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/Grids/SubCategoryDataGrid.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/ItemTypes/ItemTypeAttributesGrid.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/ItemTypes/ItemTypeDetails.razor.rz.scp.css */
/* /Components/Controls/ReferenceData/TreeView/EbayLoginButton.razor.rz.scp.css */
/* /Components/Controls/TextBoxes/Nullables/VccNullableCheckBox.razor.rz.scp.css */
/* /Components/Controls/TextBoxes/Nullables/VccNullableDoubleTextBox.razor.rz.scp.css */
/* /Components/Controls/TextBoxes/Nullables/VccNullableNumericTextBox.razor.rz.scp.css */
/* /Components/Controls/TextBoxes/VccCheckBox.razor.rz.scp.css */
/* /Components/Controls/TextBoxes/VccDoubleTextBox.razor.rz.scp.css */
/* /Components/Controls/TextBoxes/VccNumericTextBox.razor.rz.scp.css */
/* /Components/Controls/TextBoxes/VccSwitch.razor.rz.scp.css */
/* /Components/Controls/TextBoxes/VccTextBox.razor.rz.scp.css */
/* /Components/Layout/EbayLoginPrompt.razor.rz.scp.css */
.ebay-overlay[b-ru0p6b7fxd] {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    background: rgba(28, 26, 56, 0.55);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    font-family: 'Lato', sans-serif;
    animation: ebay-fade-b-ru0p6b7fxd 0.2s ease-out;
}

.ebay-card[b-ru0p6b7fxd] {
    width: 100%;
    max-width: 480px;
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 24px 60px rgba(28, 26, 56, 0.35);
    padding: 2.25rem 2.25rem 1.75rem;
    text-align: center;
    animation: ebay-rise-b-ru0p6b7fxd 0.25s ease-out;
}

.ebay-logo[b-ru0p6b7fxd] {
    width: 64px;
    height: auto;
    margin-bottom: 1rem;
}

.ebay-title[b-ru0p6b7fxd] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #2b2950;
    margin: 0 0 0.4rem;
}

.ebay-subtitle[b-ru0p6b7fxd] {
    font-size: 0.95rem;
    color: #6b6985;
    margin: 0 auto 1.25rem;
    max-width: 400px;
    line-height: 1.5;
}

.ebay-region[b-ru0p6b7fxd] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 16px;
    margin-bottom: 1.75rem;
    background: #f1f0fb;
    border: 1px solid #e0def2;
    border-radius: 10px;
    font-weight: 700;
    color: #2b2950;
}

.ebay-region-flag[b-ru0p6b7fxd] {
    width: 34px;
    height: auto;
    border-radius: 3px;
    box-shadow: 0 0 0 1px rgba(43, 41, 80, 0.12);
}

.ebay-actions[b-ru0p6b7fxd] {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
    flex-wrap: wrap;
}

.ebay-login[b-ru0p6b7fxd] {
    min-width: 170px;
    padding: 0.7rem 1.5rem;
    font-size: 1rem;
    font-weight: 700;
    color: #ffffff;
    background: #524F9E;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: background 0.15s ease;
    box-shadow: 0 8px 18px rgba(82, 79, 158, 0.3);
}

.ebay-login:hover[b-ru0p6b7fxd] {
    background: #423D7A;
}

.ebay-skip[b-ru0p6b7fxd] {
    min-width: 130px;
    padding: 0.7rem 1.5rem;
    font-size: 1rem;
    font-weight: 600;
    color: #524F9E;
    background: transparent;
    border: 1px solid #c7c5da;
    border-radius: 10px;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease;
}

.ebay-skip:hover[b-ru0p6b7fxd] {
    background: #f4f4f9;
    border-color: #524F9E;
}

@keyframes ebay-fade-b-ru0p6b7fxd {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes ebay-rise-b-ru0p6b7fxd {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 520px) {
    .ebay-card[b-ru0p6b7fxd] {
        padding: 1.75rem 1.25rem 1.5rem;
    }

    .ebay-actions[b-ru0p6b7fxd] {
        flex-direction: column;
    }

    .ebay-login[b-ru0p6b7fxd],
    .ebay-skip[b-ru0p6b7fxd] {
        width: 100%;
    }
}
/* /Components/Layout/HeaderBar.razor.rz.scp.css */
/* Opens the Account popup leftward so it doesn't run off the viewport. Scoped: the sidebar's
   RadzenPanelMenu uses .rz-navigation-menu too and must keep its normal positioning. */
.listings-header[b-ujsy8blnsa]  .rz-navigation-menu {
    left: auto;
    right: 0;
    z-index: 1001;
}

.listings-header[b-ujsy8blnsa] {
    width: 100%;
    overflow: visible;
    display: flex;
    align-items: center;
}

/* line-height: 1 centres the text rather than its (much taller) line box. */
.navbar-brand[b-ujsy8blnsa] {
    display: flex;
    align-items: center;
    line-height: 1;
    padding: 0;
    margin: 0;
}

/* Fill is a font axis in Material Symbols, not a separate glyph - this is the solid Account icon. */
.listings-header[b-ujsy8blnsa]  .rz-navigation-item-icon {
    --rz-icon-fill: 1;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.listings-header[b-egnmc0vztb] {
    width: 100%;
    display: flex;
    align-items: center;
}

.navbar-brand[b-egnmc0vztb] {
    display: flex;
    align-items: center;
    line-height: 1;
    padding: 0;
    margin: 0;
    color: #ffffff;
    text-decoration: none;
}
/* /Components/Layout/MarketplaceGate.razor.rz.scp.css */
.marketplace-gate-loading[b-rkqhrauif1] {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(28, 26, 56, 0.45);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}
/* /Components/Layout/MarketplaceSelection.razor.rz.scp.css */
.marketplace-overlay[b-dv31mmpug3] {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    background: rgba(28, 26, 56, 0.55);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    font-family: 'Lato', sans-serif;
    animation: marketplace-fade-b-dv31mmpug3 0.2s ease-out;
}

.marketplace-card[b-dv31mmpug3] {
    width: 100%;
    max-width: 660px;
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 24px 60px rgba(28, 26, 56, 0.35);
    padding: 2.5rem 2.5rem 2rem;
    text-align: center;
    animation: marketplace-rise-b-dv31mmpug3 0.25s ease-out;
}

.marketplace-logo[b-dv31mmpug3] {
    width: 56px;
    height: 56px;
    padding: 12px;
    border-radius: 50%;
    background: #524F9E;
    box-shadow: 0 6px 16px rgba(82, 79, 158, 0.4);
    margin-bottom: 1rem;
}

.marketplace-title[b-dv31mmpug3] {
    font-size: 1.6rem;
    font-weight: 700;
    color: #2b2950;
    margin: 0 0 0.4rem;
}

.marketplace-subtitle[b-dv31mmpug3] {
    font-size: 0.95rem;
    color: #6b6985;
    margin: 0 auto 1.75rem;
    max-width: 460px;
    line-height: 1.4;
}

.marketplace-options[b-dv31mmpug3] {
    display: flex;
    gap: 1.25rem;
    justify-content: center;
    flex-wrap: wrap;
}

.marketplace-option[b-dv31mmpug3] {
    flex: 1 1 220px;
    max-width: 260px;
    min-height: 200px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    padding: 1.5rem 1rem;
    background: #fbfbfe;
    border: 2px solid #e6e5f0;
    border-radius: 14px;
    cursor: pointer;
    transition: transform 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.marketplace-option:hover[b-dv31mmpug3] {
    transform: translateY(-3px);
    border-color: #b9b6e0;
    box-shadow: 0 12px 24px rgba(82, 79, 158, 0.18);
}

.marketplace-option:focus-visible[b-dv31mmpug3] {
    outline: none;
    border-color: #524F9E;
    box-shadow: 0 0 0 3px rgba(82, 79, 158, 0.35);
}

.marketplace-option:disabled[b-dv31mmpug3] {
    cursor: default;
    opacity: 0.5;
}

.marketplace-option.is-busy[b-dv31mmpug3] {
    opacity: 1;
    border-color: #524F9E;
    background: #f1f0fb;
    box-shadow: 0 0 0 3px rgba(82, 79, 158, 0.18), 0 12px 24px rgba(82, 79, 158, 0.2);
}

.marketplace-flag-wrap[b-dv31mmpug3] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 84px;
    height: 84px;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: inset 0 0 0 1px rgba(43, 41, 80, 0.08), 0 4px 10px rgba(28, 26, 56, 0.12);
}

.marketplace-flag[b-dv31mmpug3] {
    width: 56px;
    height: auto;
    border-radius: 4px;
}

.marketplace-name[b-dv31mmpug3] {
    font-size: 1.15rem;
    font-weight: 700;
    color: #2b2950;
}

.marketplace-meta[b-dv31mmpug3] {
    font-size: 0.8rem;
    color: #8a88a0;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.marketplace-remember[b-dv31mmpug3] {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    font-size: 0.9rem;
    color: #4a4863;
    cursor: pointer;
    margin-bottom: 1.75rem;
    user-select: none;
}

.marketplace-remember input[b-dv31mmpug3] {
    width: 18px;
    height: 18px;
    accent-color: #524F9E;
    cursor: pointer;
}

@keyframes marketplace-fade-b-dv31mmpug3 {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes marketplace-rise-b-dv31mmpug3 {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 520px) {
    .marketplace-card[b-dv31mmpug3] {
        padding: 1.75rem 1.25rem 1.5rem;
    }

    .marketplace-options[b-dv31mmpug3] {
        flex-direction: column;
        align-items: stretch;
    }

    .marketplace-option[b-dv31mmpug3] {
        max-width: none;
        min-height: 0;
        flex-direction: row;
        justify-content: flex-start;
        gap: 1rem;
        text-align: left;
    }
}
/* /Components/Layout/RegionSelector.razor.rz.scp.css */
.region-selector[b-m20pan5moq] {
    /* Radzen dropdown theming via custom properties — these inherit into the dropdown
       and its items (including Radzen's own :hover rules, which read these variables). */
    --rz-dropdown-background-color: #524F9E;
    --rz-dropdown-color: white;
    --rz-dropdown-border-color: #524F9E;
    --rz-dropdown-hover-background-color: #423D7A;
    --rz-dropdown-item-hover-background-color: #625CB3;
    font-family: 'Lato', sans-serif;
    font-weight: 600;
}

/* The dropdown root is rendered by Radzen, so reach it with ::deep. */
.region-selector[b-m20pan5moq]  .rz-dropdown {
    width: 215px;
}

.region-option[b-m20pan5moq] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
}

.region-flag[b-m20pan5moq] {
    width: 34px;
    height: auto;
    border-radius: 3px;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.65), 0 1px 4px rgba(0, 0, 0, 0.35);
}
/* /Components/Layout/SideBar.razor.rz.scp.css */
/* The eBay connection dot comes through Image; RadzenPanelMenuItem has no ImageStyle. */
[b-o4c4hqk7nj] img.rz-navigation-item-icon {
    width: 20px;
    height: auto;
}

/* Placeholder sections have no page to open. */
[b-o4c4hqk7nj] .rz-navigation-item-link:not([href]) {
    cursor: default;
}
/* /Components/Pages/Admin/AuctionHouses.razor.rz.scp.css */
/*
    Admin Auction Houses.

    ::deep is needed for any class handed to a Radzen component: those land on elements the component
    renders, which do not carry this page's CSS isolation attribute.
*/
.houses[b-a15js8f0x8]  .houses-page-title {
    margin-bottom: 0;
}

/* ---- header row ---- */

/* Row 1: title on the left, Add pinned right. */
.houses-header-row[b-a15js8f0x8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

/* ---- controls row ---- */

/* Row 2: search on the left, Filters + Clear all pinned right. */
.houses-toolbar[b-a15js8f0x8] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.houses-search[b-a15js8f0x8] {
    flex: 1 1 16rem;
    min-width: 12rem;
}

.houses-search[b-a15js8f0x8]  .houses-search-input {
    width: 100%;
}

.houses-toolbar-actions[b-a15js8f0x8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-left: auto;
}

/* ---- filters dropdown ---- */

/*
    Anchors the popover panel to the Filters button. z-index here matters more than it looks: this
    establishes a stacking context, so the panel's own z-index only ever competes against other
    elements at this level - a low value here let the grid's sticky header (its own stacking
    context) paint over the whole popover. High enough to clear it.
*/
.houses-filters-wrapper[b-a15js8f0x8] {
    position: relative;
    z-index: 1000;
}

/* Full-viewport, transparent: any click outside the panel lands here and closes it. */
.houses-filters-overlay[b-a15js8f0x8] {
    position: fixed;
    inset: 0;
    z-index: 40;
}

.houses-filters-panel[b-a15js8f0x8] {
    position: absolute;
    top: calc(100% + 0.5rem);
    right: 0;
    z-index: 41;
    min-width: 14rem;
    padding: 0.75rem;
    border: 1px solid var(--rz-base-300);
    border-radius: var(--rz-border-radius);
    background-color: var(--rz-base-background-color);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.houses-filters-section + .houses-filters-section[b-a15js8f0x8] {
    margin-top: 0.75rem;
}

.houses-filters-label[b-a15js8f0x8] {
    display: block;
    margin-bottom: 0.4rem;
    font-size: 0.7rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--rz-text-secondary-color);
}

.houses-filter-option[b-a15js8f0x8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.2rem 0;
    cursor: pointer;
}

/* ---- count line ---- */

/* Directly under the search bar: summarises the rows shown, not the page. */
.houses-count[b-a15js8f0x8] {
    margin-bottom: 0.75rem;
    font-size: 0.85rem;
    color: var(--rz-text-secondary-color);
}

/* ---- load failure ---- */

.houses-load-error[b-a15js8f0x8] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.65rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--rz-danger-light, #f0c9cb);
    border-radius: var(--rz-border-radius);
    background-color: var(--rz-danger-lighter, #fbeaeb);
    font-size: 0.85rem;
    font-weight: 600;
    color: #cc0000;
}

/* ---- grid ---- */

/*
    Fixed layout so the percentage widths are honoured and the five columns share the space
    available. Without it the grid widens itself to fit the longest cell - a long contact email -
    and the page scrolls sideways.
*/
.houses[b-a15js8f0x8]  .houses-grid .rz-grid-table {
    table-layout: fixed;
    width: 100%;
}

.houses[b-a15js8f0x8]  .houses-grid .rz-data-grid-data td {
    vertical-align: middle;
}

.houses[b-a15js8f0x8]  .houses-name {
    font-weight: 600;
}

/* Clipped to one line. The full value is on the title attribute, which shows on hover. */
.houses[b-a15js8f0x8]  .houses-clip {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* Headings clip too, rather than wrapping to two lines. */
.houses[b-a15js8f0x8]  .houses-grid .rz-column-title {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* Stack rather than squeezing the search box to nothing. */
@media (max-width: 900px) {
    .houses-toolbar[b-a15js8f0x8] {
        align-items: stretch;
        flex-direction: column;
    }

    .houses-toolbar-actions[b-a15js8f0x8] {
        margin-left: 0;
        justify-content: flex-end;
    }

    .houses-filters-panel[b-a15js8f0x8] {
        right: auto;
        left: 0;
    }
}
/* /Components/Pages/AuctionHouse/AllAuctions.razor.rz.scp.css */
/*
    Auction House All Auctions.

    ::deep is needed for any class handed to a Radzen component: those land on elements the component
    renders, which do not carry this page's CSS isolation attribute.
*/
.auctions[b-sb9lua9wi2]  .auctions-page-title {
    margin-bottom: 1rem;
}

/* ---- filter pills ---- */

.auctions-filters[b-sb9lua9wi2] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.auctions-filters-label[b-sb9lua9wi2] {
    margin-right: 0.25rem;
    font-size: 0.7rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--rz-text-secondary-color);
}

/* Separates the warehouse group from the status group. */
.auctions-filters-label-spaced[b-sb9lua9wi2] {
    margin-left: 1rem;
}

.auctions-pill[b-sb9lua9wi2] {
    padding: 0.35rem 1rem;
    border: 1px solid var(--rz-base-300);
    /* Fully rounded at any height. */
    border-radius: 999px;
    background-color: var(--rz-base-background-color);
    color: var(--rz-text-color);
    font-size: 0.85rem;
    font-family: inherit;
    cursor: pointer;
}

.auctions-pill:hover[b-sb9lua9wi2] {
    border-color: var(--rz-base-400);
    background-color: var(--rz-base-200);
}

/* The filter in force. */
.auctions-pill.selected[b-sb9lua9wi2] {
    border-color: var(--rz-primary);
    background-color: var(--rz-primary-lighter, #eceafd);
    color: var(--rz-primary);
    font-weight: 600;
}

/* ---- search and actions ---- */

.auctions-toolbar[b-sb9lua9wi2] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

/* Takes the slack so the buttons stay right-aligned. */
.auctions-search[b-sb9lua9wi2] {
    flex: 1 1 18rem;
    min-width: 12rem;
}

.auctions-search[b-sb9lua9wi2]  .auctions-search-input {
    width: 100%;
}

.auctions-count[b-sb9lua9wi2] {
    font-size: 0.85rem;
    color: var(--rz-text-secondary-color);
    white-space: nowrap;
}

.auctions-toolbar[b-sb9lua9wi2]  .auctions-destination {
    min-width: 11rem;
}

/* ---- load failure ---- */

.auctions-load-error[b-sb9lua9wi2] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.65rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--rz-danger-light, #f0c9cb);
    border-radius: var(--rz-border-radius);
    background-color: var(--rz-danger-lighter, #fbeaeb);
    font-size: 0.85rem;
    font-weight: 600;
    color: #cc0000;
}

/* ---- grid ---- */

/*
    Fixed layout so the percentage widths are honoured and the eight columns share the space
    available. Without it the grid widens itself to fit the longest cell and the page scrolls
    sideways.
*/
.auctions[b-sb9lua9wi2]  .auctions-grid .rz-grid-table {
    table-layout: fixed;
    width: 100%;
}

.auctions[b-sb9lua9wi2]  .auctions-grid .rz-data-grid-data td {
    vertical-align: middle;
}

/* Clipped to one line. The full value is on the title attribute, which shows on hover. */
.auctions[b-sb9lua9wi2]  .auctions-clip {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* Headings clip too, rather than wrapping to two lines. */
.auctions[b-sb9lua9wi2]  .auctions-grid .rz-column-title {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* ---- pager ---- */

.auctions-pager[b-sb9lua9wi2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 1rem;
}

/* Pushes Previous and Next to the right, where the grid's own pager sits. */
.auctions-pager-summary[b-sb9lua9wi2] {
    margin-right: auto;
    font-size: 0.85rem;
    color: var(--rz-text-secondary-color);
}

/* Stack rather than squeezing the search box to nothing. */
@media (max-width: 800px) {
    .auctions-toolbar[b-sb9lua9wi2] {
        align-items: stretch;
        flex-direction: column;
    }

    .auctions-count[b-sb9lua9wi2] {
        order: 3;
    }
}
/* /Components/Pages/AuctionHouse/GoldListing.razor.rz.scp.css */
/*
    Auction House Gold Listing.

    ::deep is needed for any class handed to a Radzen component: those land on elements the
    component renders, which do not carry this page's CSS isolation attribute.
*/
.gold-listing[b-0da20ix9tb]  .gold-listing-page-title {
    margin-bottom: 1rem;
}

.gold-listing-info-bar[b-0da20ix9tb] {
    margin-bottom: 1rem;
}

/* ---- grid ---- */

.gold-listing-table-wrapper[b-0da20ix9tb] {
    overflow-x: auto;
}

.gold-listing-table[b-0da20ix9tb] {
    width: 100%;
    min-width: 70rem;
    border-collapse: collapse;
}

.gold-listing-table th[b-0da20ix9tb] {
    padding: 0.5rem 0.6rem;
    text-align: left;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--rz-text-secondary-color);
    border-bottom: 2px solid var(--rz-border-color, #dee2e6);
    border-right: 1px solid var(--rz-border-color, #dee2e6);
    white-space: nowrap;
}

.gold-listing-table th:last-child[b-0da20ix9tb] {
    border-right: none;
}

.gold-listing-table td[b-0da20ix9tb] {
    padding: 0;
    border-bottom: 1px solid var(--rz-border-color, #dee2e6);
    border-right: 1px solid var(--rz-border-color, #dee2e6);
    vertical-align: middle;
}

.gold-listing-table td:last-child[b-0da20ix9tb] {
    border-right: none;
}

.gold-listing-table td.gold-listing-actions-cell[b-0da20ix9tb] {
    padding: 0.4rem 0.6rem;
}

/*
    The class lands on each Radzen input's own root element (it's the same element that carries
    .rz-textbox / .rz-dropdown / .rz-numeric, not a wrapper around it) - default-base.css puts the
    border, radius and background on that element, so they're overridden directly here rather than
    on a child, otherwise the input's own border sits inside the table cell's border and doubles up.
*/
.gold-listing[b-0da20ix9tb]  .gold-listing-cell-input {
    width: 100%;
    min-width: 6rem;
    border: none;
    border-radius: 0;
    box-shadow: none;
    background-color: transparent;
}

.gold-listing[b-0da20ix9tb]  .gold-listing-cell-input input {
    border: none;
    background-color: transparent;
}

.gold-listing-empty-hint[b-0da20ix9tb] {
    font-size: 0.8rem;
    color: var(--rz-text-secondary-color);
    white-space: nowrap;
}

/* ---- toolbar ---- */

.gold-listing-toolbar[b-0da20ix9tb] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1rem;
}

.gold-listing-toolbar-spacer[b-0da20ix9tb] {
    flex: 1 1 auto;
}

.gold-listing-sku-count[b-0da20ix9tb] {
    font-size: 0.85rem;
    color: var(--rz-text-secondary-color);
    white-space: nowrap;
}

.gold-listing-draft-status[b-0da20ix9tb] {
    margin-top: 0.5rem;
    font-size: 0.8rem;
    color: var(--rz-text-secondary-color);
}

@media (max-width: 800px) {
    .gold-listing-toolbar[b-0da20ix9tb] {
        align-items: stretch;
        flex-direction: column;
    }

    .gold-listing-toolbar-spacer[b-0da20ix9tb] {
        display: none;
    }
}
/* /Components/Pages/DefaultPolicies/DefaultPolicies.razor.rz.scp.css */
/* /Components/Pages/EbayPublishingTemplates/EbayPublishingTemplates.razor.rz.scp.css */
/* ---- saved templates table: comfortable width, centered ---- */
.tpl-wrap[b-s2m7s2jquc] {
    max-width: 860px;
    margin: 0 auto;
}

/* ---- wizard: wider than the table (it holds the editor/preview), centered ---- */
.wiz-wrap[b-s2m7s2jquc] {
    max-width: 1150px;
    margin: 0 auto;
}

/* ---- wizard stepper ---- */
.wiz-stepper-card[b-s2m7s2jquc] {
    padding: 12px 16px;
}

.wiz-stepper[b-s2m7s2jquc] {
    display: flex;
    align-items: center;
}

.wiz-step[b-s2m7s2jquc] {
    display: flex;
    align-items: center;
    gap: 9px;
    font-weight: 600;
    font-size: 13.5px;
    color: #6a6f92;
    white-space: nowrap;
}

.wiz-step .n[b-s2m7s2jquc] {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    border: 1.5px solid #e2e4f0;
    background: #f2f3fa;
    font-size: 12.5px;
}

.wiz-step.on[b-s2m7s2jquc] {
    color: #232647;
}

.wiz-step.on .n[b-s2m7s2jquc] {
    background: var(--rz-primary, #5b53a8);
    border-color: var(--rz-primary, #5b53a8);
    color: #fff;
}

.wiz-step.done .n[b-s2m7s2jquc] {
    background: #e4f3ea;
    border-color: #2e8a57;
    color: #2e8a57;
}

.wiz-line[b-s2m7s2jquc] {
    flex: 1;
    height: 1.5px;
    background: #e2e4f0;
    margin: 0 14px;
    min-width: 24px;
}

/* Stack the stepper on narrow screens */
@media (max-width: 700px) {
    .wiz-stepper[b-s2m7s2jquc] {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .wiz-line[b-s2m7s2jquc] {
        display: none;
    }
}

/* ---- wizard panes ----
   Heights leave room for the title, stepper, step text and nav buttons so the whole
   wizard fits the viewport with no page scrollbar (the panes scroll internally).
   Keep the paste-editor height in templateEditor.js (attachPasteEditor) in sync. */
.wiz-paste[b-s2m7s2jquc] {
    width: 100%;
    height: calc(100vh - 430px);
    min-height: 240px;
    border: 1.5px dashed #cfd2e6;
    border-radius: 8px;
    padding: 12px 14px;
    font-family: Consolas, "Cascadia Mono", monospace;
    font-size: 12.5px;
    line-height: 1.6;
    resize: vertical;
}

.wiz-frame[b-s2m7s2jquc] {
    width: 100%;
    height: calc(100vh - 430px);
    min-height: 240px;
    border: 1px solid #e2e4f0;
    border-radius: 8px;
    background: #fff;
}

.wiz-nav[b-s2m7s2jquc] {
    display: flex;
    gap: 10px;
    margin-top: 16px;
    align-items: center;
    flex-wrap: wrap;
}

.wiz-spacer[b-s2m7s2jquc] {
    flex: 1;
}
/* /Components/Pages/Fulfilment/FulfilmentExport.razor.rz.scp.css */
/* /Components/Pages/Listings/BulkStatusUpload.razor.rz.scp.css */
/*
    One size for every button on this page: Choose CSV, Upload, Delete and Export Rejected. Width fits the
    longest label; height matches Radzen's .rz-button-md.

    Declared here so both the rules below and the inline BulkButtonStyle in the code-behind can use them. The
    inline route is needed because buttons rendered inside Radzen components do not get this page's CSS
    isolation attribute, so ::deep cannot reach them.
*/
.bulk-status-upload[b-do1egbl1j3] {
    --bulk-button-width: 11.25rem;
    --bulk-button-height: 2.25rem;
}

/*
    RadzenFileInput renders a pale bar around the Choose button (.rz-fileupload-buttonbar) and its own filename
    row (.rz-fileupload-content). Both are hidden: the bar looks like a separate widget inside the card, and the
    filename is shown in the panel below instead.
*/
.csv-file-input[b-do1egbl1j3]  .rz-fileupload-content {
    display: none;
}

.csv-file-input[b-do1egbl1j3]  .rz-fileupload,
.csv-file-input[b-do1egbl1j3]  .rz-fileupload-buttonbar {
    display: block;
    border: none;
    padding: 0;
    background: none;
}

/*
    Radzen groups .rz-fileupload .rz-button with .rz-button-sm, so the Choose button would otherwise be smaller
    than the rest. Sized to match, with .rz-button-md's padding and weight.
*/
.csv-file-input[b-do1egbl1j3]  .rz-fileupload .rz-button,
.export-rejected[b-do1egbl1j3]  .rz-button {
    width: var(--bulk-button-width);
    min-width: var(--bulk-button-width);
    height: var(--bulk-button-height);
    min-height: var(--bulk-button-height);
    padding: 0.5rem 1rem;
    line-height: 1.25rem;
    font-weight: 600;
    /*
        Radzen's .rz-button is inline-block and its inner .rz-button-box is inline-flex, so the box only takes
        the width of the label and its own justify-content has nothing to centre in. Making the button a flex
        container gives it the full width.
    */
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

/* The chosen file: name on the left, bin on the right, on a pale panel of its own. */
.selected-file-panel[b-do1egbl1j3] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0.75rem;
    border-radius: var(--rz-border-radius);
    background-color: var(--rz-base-200);
}

/*
    Uses ::deep because the class is handed to RadzenText, so it lands on an element that component renders and
    does not get this page's isolation attribute - a plain .selected-file-name rule would match nothing.

    flex: 1 takes the space the bin leaves, so text-align centres the name across the panel.
*/
.selected-file-panel[b-do1egbl1j3]  .selected-file-name {
    flex: 1;
    min-width: 0;
    margin: 0;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Icon only, so it must not pick up the shared button width. Red on hover to mark it as destructive. */
.selected-file-panel[b-do1egbl1j3]  .rz-button {
    min-width: auto;
    padding: 0.25rem;
    color: var(--rz-text-secondary-color);
}

.selected-file-panel[b-do1egbl1j3]  .rz-button:hover {
    color: var(--rz-danger);
}

/* Upload sits to the right, under the panel, as in the design. */
.upload-action[b-do1egbl1j3] {
    display: flex;
    justify-content: flex-end;
}
/* /Components/Pages/Listings/CreateListing.razor.rz.scp.css */
/* Legacy Page Container */
.legacy-page[b-hecgh0ht17] {
    max-width: 1000px;
    margin: 0 auto;
    padding: 20px;
    padding-bottom: 100px;
}

.legacy-title[b-hecgh0ht17] {
    font-size: 1.75rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 8px;
}

.legacy-subtitle[b-hecgh0ht17] {
    font-size: 14px;
    color: #666;
    margin-bottom: 0;
}

.legacy-divider[b-hecgh0ht17] {
    border: none;
    border-top: 2px solid #524F9E;
    margin: 16px 0 24px 0;
}

/* Form Layout */
.legacy-form[b-hecgh0ht17] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.legacy-row[b-hecgh0ht17] {
    display: grid;
    gap: 16px;
}

.legacy-row.full-width[b-hecgh0ht17] {
    grid-template-columns: 1fr;
}

.legacy-row.two-col[b-hecgh0ht17] {
    grid-template-columns: 1fr 1fr;
}

.legacy-row.three-col[b-hecgh0ht17] {
    grid-template-columns: 1fr 1fr 1fr;
}

.legacy-row.four-col[b-hecgh0ht17] {
    grid-template-columns: 1fr 1fr 1fr 1fr;
}

/* Section Headers */
.legacy-section-header[b-hecgh0ht17] {
    font-size: 14px;
    font-weight: 600;
    color: #333;
    margin-top: 24px;
    margin-bottom: 8px;
}

/* Radzen Form Field Styling */
[b-hecgh0ht17] .rz-form-field {
    --rz-form-field-border-color: #d0d0d0;
}

/* Text inputs and textareas with lavender background */
.input-lavender[b-hecgh0ht17]  .rz-form-field {
    background-color: #E8E6F3;
    border-radius: 4px;
}

.input-lavender[b-hecgh0ht17]  .rz-textbox,
.input-lavender[b-hecgh0ht17]  .rz-textarea {
    background-color: transparent;
}

.input-lavender[b-hecgh0ht17]  .rz-form-field-content {
    background-color: transparent;
}

/* White input styling */
.input-white[b-hecgh0ht17]  .rz-form-field {
    background-color: #fff;
}

/* Character count styling */
.char-count[b-hecgh0ht17] {
    text-align: right;
    font-size: 12px;
    color: #666;
    margin-top: 4px;
}

/* Required text styling */
[b-hecgh0ht17] .rz-form-field-label {
    display: flex;
    align-items: center;
    gap: 4px;
}

/* Fixed Buttons. Inset by the sidebar width so the bar spans the content, not the navigation. */
.legacy-buttons[b-hecgh0ht17] {
    position: fixed;
    bottom: 0;
    left: var(--rz-sidebar-width, 250px);
    right: 0;
    background: white;
    padding: 16px 30px;
    display: flex;
    justify-content: flex-start;
    gap: 12px;
    border-top: 1px solid #e0e0e0;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.08);
    z-index: 100;
}

.legacy-btn[b-hecgh0ht17] {
    /* Never shrink or wrap. They share the bar with the outstanding-fields hint, and as flex items
       they would otherwise give up width to it and go to two lines, which makes the whole fixed bar
       taller. */
    flex-shrink: 0;
    white-space: nowrap;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s ease;
    border: 1px solid transparent;
}

.legacy-btn:disabled[b-hecgh0ht17] {
    opacity: 0.6;
    cursor: not-allowed;
}

.legacy-btn-secondary[b-hecgh0ht17] {
    background-color: #f0f0f0;
    color: #666;
    border-color: #ccc;
}

.legacy-btn-secondary:hover:not(:disabled)[b-hecgh0ht17] {
    background-color: #e0e0e0;
    border-color: #999;
}

.legacy-btn-primary[b-hecgh0ht17] {
    background-color: #524F9E;
    color: white;
    border-color: #524F9E;
}

.legacy-btn-primary:hover:not(:disabled)[b-hecgh0ht17] {
    background-color: #433F7F;
    border-color: #433F7F;
}

/* Says why Save is disabled, inside the fixed button bar so it is on screen whenever the buttons are.
   Truncates to a single line, so however long the list of outstanding fields gets, the bar keeps
   its height and the buttons keep their positions. min-width is what lets a flex item shrink below
   its content and actually show the ellipsis. */
.legacy-draft-hint[b-hecgh0ht17] {
    align-self: center;
    /* Content width when there is room, shrinking to an ellipsis when there is not, rather than a
       wide empty box stretched across the rest of the bar. */
    flex: 0 1 auto;
    min-width: 0;
    margin: 0;
    font-size: 13px;
    color: #8a6d3b;
    background-color: #fcf8e3;
    border: 1px solid #faebcc;
    border-radius: 4px;
    padding: 8px 12px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Attributes Wrapper - style the ListingAttributesControl */
.legacy-attributes-wrapper[b-hecgh0ht17] {
    margin-top: 8px;
}

.legacy-attributes-wrapper[b-hecgh0ht17]  .rz-card {
    box-shadow: none;
    border: none;
    background: transparent;
    padding: 0;
}

/* Limit optional attributes scroll to 190px */
.legacy-attributes-wrapper[b-hecgh0ht17]  .col-12[style*="max-height"] {
    max-height: 190px !important;
}

/* Responsive */
@media (max-width: 1200px) {
    .legacy-page[b-hecgh0ht17] {
        max-width: 90%;
    }

    .legacy-row.four-col[b-hecgh0ht17] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 768px) {
    .legacy-page[b-hecgh0ht17] {
        max-width: 95%;
    }

    .legacy-row.two-col[b-hecgh0ht17],
    .legacy-row.three-col[b-hecgh0ht17],
    .legacy-row.four-col[b-hecgh0ht17] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Listings/ListingsPage.razor.rz.scp.css */
.listings-legacy-container[b-0pmvd3t6po] {
    padding: 24px;
    background-color: #fff;
}

.error-message[b-0pmvd3t6po] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    margin-bottom: 16px;
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 6px;
    color: #dc2626;
    font-size: 14px;
}

.error-message button[b-0pmvd3t6po] {
    padding: 6px 12px;
    background-color: #dc2626;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 13px;
}

.error-message button:hover[b-0pmvd3t6po] {
    background-color: #b91c1c;
}

.summary-section[b-0pmvd3t6po] {
    margin-top: 32px;
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
}

.summary-section h3[b-0pmvd3t6po] {
    width: 100%;
    font-size: 18px;
    font-weight: 600;
    color: #212529;
    margin-bottom: 16px;
}
/* /Components/Pages/Listings/UpdateListing.razor.rz.scp.css */
/* Legacy Page Container */
.legacy-page[b-ip2u8g2i7y] {
    max-width: 1000px;
    margin: 0 auto;
    padding: 20px;
    padding-bottom: 100px;
}

.legacy-title[b-ip2u8g2i7y] {
    font-size: 1.75rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 8px;
}

.legacy-subtitle[b-ip2u8g2i7y] {
    font-size: 14px;
    color: #666;
    margin-bottom: 0;
}

.legacy-subtitle-row[b-ip2u8g2i7y] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.photos-btn[b-ip2u8g2i7y] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    font-size: 13px;
    font-weight: 500;
    color: #524F9E;
    background-color: #f0eef8;
    border: 1px solid #524F9E;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.photos-btn:hover[b-ip2u8g2i7y] {
    background-color: #524F9E;
    color: white;
}

.photos-btn svg[b-ip2u8g2i7y] {
    flex-shrink: 0;
}

.legacy-divider[b-ip2u8g2i7y] {
    border: none;
    border-top: 2px solid #524F9E;
    margin: 16px 0 24px 0;
}

/* Form Layout */
.legacy-form[b-ip2u8g2i7y] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.legacy-row[b-ip2u8g2i7y] {
    display: grid;
    gap: 16px;
}

.legacy-row.full-width[b-ip2u8g2i7y] {
    grid-template-columns: 1fr;
}

.legacy-row.two-col[b-ip2u8g2i7y] {
    grid-template-columns: 1fr 1fr;
}

.legacy-row.three-col[b-ip2u8g2i7y] {
    grid-template-columns: 1fr 1fr 1fr;
}

.legacy-row.four-col[b-ip2u8g2i7y] {
    grid-template-columns: 1fr 1fr 1fr 1fr;
}

/* Section Headers */
.legacy-section-header[b-ip2u8g2i7y] {
    font-size: 14px;
    font-weight: 600;
    color: #333;
    margin-top: 24px;
    margin-bottom: 8px;
}

/* Radzen Form Field Styling */
[b-ip2u8g2i7y] .rz-form-field {
    --rz-form-field-border-color: #d0d0d0;
}

/* Text inputs and textareas with lavender background */
.input-lavender[b-ip2u8g2i7y]  .rz-form-field {
    background-color: #E8E6F3;
    border-radius: 4px;
}

.input-lavender[b-ip2u8g2i7y]  .rz-textbox,
.input-lavender[b-ip2u8g2i7y]  .rz-textarea {
    background-color: transparent;
}

.input-lavender[b-ip2u8g2i7y]  .rz-form-field-content {
    background-color: transparent;
}

/* White input styling */
.input-white[b-ip2u8g2i7y]  .rz-form-field {
    background-color: #fff;
}

/* Character count styling */
.char-count[b-ip2u8g2i7y] {
    text-align: right;
    font-size: 12px;
    color: #666;
    margin-top: 4px;
}

/* Required text styling */
[b-ip2u8g2i7y] .rz-form-field-label {
    display: flex;
    align-items: center;
    gap: 4px;
}

/* Fixed Buttons. Inset by the sidebar width so the bar spans the content, not the navigation. */
.legacy-buttons[b-ip2u8g2i7y] {
    position: fixed;
    bottom: 0;
    left: var(--rz-sidebar-width, 250px);
    right: 0;
    background: white;
    padding: 16px 30px;
    display: flex;
    justify-content: flex-start;
    gap: 12px;
    border-top: 1px solid #e0e0e0;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.08);
    z-index: 100;
}

.legacy-btn[b-ip2u8g2i7y] {
    /* Never shrink or wrap. They share the bar with the outstanding-fields hint, and as flex items
       they would otherwise give up width to it and go to two lines, which makes the whole fixed bar
       taller. */
    flex-shrink: 0;
    white-space: nowrap;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s ease;
    border: 1px solid transparent;
}

.legacy-btn:disabled[b-ip2u8g2i7y] {
    opacity: 0.6;
    cursor: not-allowed;
}

.legacy-btn-secondary[b-ip2u8g2i7y] {
    background-color: #f0f0f0;
    color: #666;
    border-color: #ccc;
}

.legacy-btn-secondary:hover:not(:disabled)[b-ip2u8g2i7y] {
    background-color: #e0e0e0;
    border-color: #999;
}

.legacy-btn-primary[b-ip2u8g2i7y] {
    background-color: #524F9E;
    color: white;
    border-color: #524F9E;
}

.legacy-btn-primary:hover:not(:disabled)[b-ip2u8g2i7y] {
    background-color: #433F7F;
    border-color: #433F7F;
}

/* Attributes Wrapper - style the ListingAttributesControl */
.legacy-attributes-wrapper[b-ip2u8g2i7y] {
    margin-top: 8px;
}

.legacy-attributes-wrapper[b-ip2u8g2i7y]  .rz-card {
    box-shadow: none;
    border: none;
    background: transparent;
    padding: 0;
}

/* Limit optional attributes scroll to 190px */
.legacy-attributes-wrapper[b-ip2u8g2i7y]  .col-12[style*="max-height"] {
    max-height: 190px !important;
}

/* Responsive */
@media (max-width: 1200px) {
    .legacy-page[b-ip2u8g2i7y] {
        max-width: 90%;
    }

    .legacy-row.four-col[b-ip2u8g2i7y] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 768px) {
    .legacy-page[b-ip2u8g2i7y] {
        max-width: 95%;
    }

    .legacy-row.two-col[b-ip2u8g2i7y],
    .legacy-row.three-col[b-ip2u8g2i7y],
    .legacy-row.four-col[b-ip2u8g2i7y] {
        grid-template-columns: 1fr;
    }
}

/* Says why Save & Close is disabled, inside the fixed button bar so it is on screen whenever the
   buttons are. Truncates to a single line, so however long the list of outstanding fields gets, the
   bar keeps its height and the buttons keep their positions. min-width is what lets a flex item
   shrink below its content and actually show the ellipsis. */
.legacy-draft-hint[b-ip2u8g2i7y] {
    align-self: center;
    /* Content width when there is room, shrinking to an ellipsis when there is not, rather than a
       wide empty box stretched across the rest of the bar. */
    flex: 0 1 auto;
    min-width: 0;
    margin: 0;
    font-size: 13px;
    color: #8a6d3b;
    background-color: #fcf8e3;
    border: 1px solid #faebcc;
    border-radius: 4px;
    padding: 8px 12px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* /Components/Pages/Luxoris/AllLuxorisListings.razor.rz.scp.css */
/*
    Luxoris All Listings.

    ::deep is needed for any class handed to a Radzen component - those land on elements the
    component renders, which do not carry this page's CSS isolation attribute.
*/
.luxoris-listings[b-s5g0i1k6dj]  .luxoris-page-title {
    margin-bottom: 1rem;
}

/* ---- status pills ---- */

.luxoris-filters[b-s5g0i1k6dj] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.luxoris-filters-label[b-s5g0i1k6dj] {
    margin-right: 0.25rem;
    font-size: 0.7rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--rz-text-secondary-color);
}

.luxoris-pill[b-s5g0i1k6dj] {
    padding: 0.35rem 1rem;
    border: 1px solid var(--rz-base-300);
    /* Fully rounded whatever the height. */
    border-radius: 999px;
    background-color: var(--rz-base-background-color);
    color: var(--rz-text-color);
    font-size: 0.85rem;
    font-family: inherit;
    cursor: pointer;
}

.luxoris-pill:hover[b-s5g0i1k6dj] {
    border-color: var(--rz-base-400);
    background-color: var(--rz-base-200);
}

/* The filter in force. */
.luxoris-pill.selected[b-s5g0i1k6dj] {
    border-color: var(--rz-primary);
    background-color: var(--rz-primary-lighter, #eceafd);
    color: var(--rz-primary);
    font-weight: 600;
}

/* ---- search and actions ---- */

.luxoris-toolbar[b-s5g0i1k6dj] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

/* Takes the slack, so the buttons stay right-aligned. */
.luxoris-search[b-s5g0i1k6dj] {
    flex: 1 1 18rem;
    min-width: 12rem;
}

.luxoris-search[b-s5g0i1k6dj]  .luxoris-search-input {
    width: 100%;
}

.luxoris-count[b-s5g0i1k6dj] {
    font-size: 0.85rem;
    color: var(--rz-text-secondary-color);
    white-space: nowrap;
}

.luxoris-toolbar[b-s5g0i1k6dj]  .luxoris-lister {
    min-width: 11rem;
}

/* ---- selection banner ---- */

.luxoris-selection[b-s5g0i1k6dj] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.65rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--rz-primary-light, #d5d0fa);
    border-radius: var(--rz-border-radius);
    background-color: var(--rz-primary-lighter, #eceafd);
}

/* The count, Clear selection and Create export sit together on the right. */
.luxoris-selection-count[b-s5g0i1k6dj] {
    margin-left: auto;
    font-size: 0.85rem;
    font-weight: 600;
}

/* Button, not an anchor: it acts on this page rather than navigating. */
.luxoris-link[b-s5g0i1k6dj] {
    padding: 0;
    border: none;
    background: none;
    color: var(--rz-primary);
    font-size: 0.85rem;
    font-family: inherit;
    text-decoration: underline;
    cursor: pointer;
}

/* ---- load failure ---- */

.luxoris-load-error[b-s5g0i1k6dj] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.65rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--rz-danger-light, #f0c9cb);
    border-radius: var(--rz-border-radius);
    background-color: var(--rz-danger-lighter, #fbeaeb);
    font-size: 0.85rem;
    font-weight: 600;
    color: #cc0000;
}

/* ---- status badges ---- */

.luxoris-status[b-s5g0i1k6dj] {
    display: inline-block;
    padding: 0.15rem 0.6rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.luxoris-status.draft[b-s5g0i1k6dj] {
    background-color: var(--rz-base-200);
    color: var(--rz-text-secondary-color);
}

.luxoris-status.ready[b-s5g0i1k6dj] {
    background-color: var(--rz-info-lighter, #e3f0fb);
    color: var(--rz-info-dark, #1a5f95);
}

.luxoris-status.listed[b-s5g0i1k6dj] {
    background-color: var(--rz-success-lighter, #e4f3ea);
    color: var(--rz-success-dark, #1f6b41);
}

/* ---- grid ---- */

/* Long titles wrap rather than being clipped mid-word. */
.luxoris-listings[b-s5g0i1k6dj]  .luxoris-grid .rz-data-grid-data td {
    vertical-align: middle;
}

/* ---- preview warning ---- */

/* Sits between the heading and the card. A plain red, not --rz-danger: that token is the theme's
   pink, which reads as decoration next to the heading rather than as a warning. */
.luxoris-preview-warning[b-s5g0i1k6dj] {
    margin: 0 0 1rem;
    font-size: 1.05rem;
    font-weight: 700;
    color: #cc0000;
}

/* Stack the toolbar rather than squeezing the search box to nothing. */
@media (max-width: 800px) {
    .luxoris-toolbar[b-s5g0i1k6dj] {
        align-items: stretch;
        flex-direction: column;
    }

    .luxoris-count[b-s5g0i1k6dj] {
        order: 3;
    }
}
/* /Components/Pages/Luxoris/CreateLuxorisListing.razor.rz.scp.css */
/*
    Luxoris Create Listing.

    ::deep is needed for any class handed to a Radzen component - those land on elements the
    component renders, which do not carry this page's CSS isolation attribute.
*/
.luxoris-create[b-o95t9vniaa] {
    max-width: 1000px;
}

.luxoris-create[b-o95t9vniaa]  .luxoris-page-title {
    margin-bottom: 1rem;
}

/* ---- identity banner ---- */

/* App header colour, a shade lighter so it is not a second header bar. */
.luxoris-banner[b-o95t9vniaa] {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5rem;
    padding: 0.9rem 1.25rem;
    border-radius: var(--rz-border-radius);
    background-color: #3d3b5e;
    color: #fff;
}

.luxoris-banner-field[b-o95t9vniaa] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.luxoris-banner-label[b-o95t9vniaa] {
    font-size: 0.7rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #b9b7d4;
}

.luxoris-banner-value[b-o95t9vniaa] {
    font-size: 1rem;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Nothing entered yet. */
.luxoris-banner-value.empty[b-o95t9vniaa] {
    font-weight: 400;
    font-style: italic;
    color: #b9b7d4;
}

/* ---- breadcrumb ---- */

/* Two equal segments. The active one shares the card background. */
.luxoris-steps[b-o95t9vniaa] {
    display: flex;
    margin-top: 1rem;
    border: 1px solid var(--rz-base-300);
    border-radius: var(--rz-border-radius);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    overflow: hidden;
    background-color: var(--rz-base-200);
}

.luxoris-step[b-o95t9vniaa] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.85rem 1.25rem;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--rz-text-secondary-color);
    /* Transparent, not none, so switching steps does not shift the text. */
    border-bottom: 3px solid transparent;
}

.luxoris-step + .luxoris-step[b-o95t9vniaa] {
    border-left: 1px solid var(--rz-base-300);
}

.luxoris-step-number[b-o95t9vniaa] {
    display: grid;
    place-items: center;
    width: 1.5rem;
    height: 1.5rem;
    flex: 0 0 auto;
    border-radius: 50%;
    border: 1px solid var(--rz-base-400);
    background-color: var(--rz-base-100);
    font-size: 0.75rem;
    line-height: 1;
}

/* The step being worked on. */
.luxoris-step.current[b-o95t9vniaa] {
    background-color: var(--rz-base-background-color);
    color: var(--rz-text-color);
    border-bottom-color: var(--rz-primary);
}

.luxoris-step.current .luxoris-step-number[b-o95t9vniaa] {
    background-color: var(--rz-primary);
    border-color: var(--rz-primary);
    color: var(--rz-primary-contrast-color, #fff);
}

/* A finished step. */
.luxoris-step.complete[b-o95t9vniaa] {
    color: var(--rz-text-color);
}

.luxoris-step.complete .luxoris-step-number[b-o95t9vniaa] {
    background-color: var(--rz-success-lighter, #e4f3ea);
    border-color: var(--rz-success, #2e8a57);
    color: var(--rz-success, #2e8a57);
}

/* The tick is a RadzenIcon, so ::deep. */
.luxoris-step.complete .luxoris-step-number[b-o95t9vniaa]  i {
    font-size: 0.95rem;
}

/* ---- form card ---- */

/* Sits flush under the breadcrumb strip. */
.luxoris-create[b-o95t9vniaa]  .luxoris-card {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-top: none;
}

.luxoris-card-head[b-o95t9vniaa] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.luxoris-card-head[b-o95t9vniaa]  .luxoris-card-title,
.luxoris-card-head[b-o95t9vniaa]  .luxoris-card-hint {
    margin: 0;
}

.luxoris-create[b-o95t9vniaa]  .luxoris-fields {
    margin-bottom: 1.25rem;
}

.luxoris-create[b-o95t9vniaa]  .luxoris-label {
    margin-bottom: 0.25rem;
}

.luxoris-required[b-o95t9vniaa] {
    color: var(--rz-danger);
}

/* Field hints. */
.luxoris-create[b-o95t9vniaa]  .luxoris-help {
    margin: 0.3rem 0 0;
    color: var(--rz-text-secondary-color);
}

/* Grow with content instead of scrolling at one line. */
.luxoris-create[b-o95t9vniaa]  textarea {
    min-height: 2.4rem;
    resize: vertical;
}

.luxoris-divider[b-o95t9vniaa] {
    margin: 0 0 1.25rem;
    border: none;
    border-top: 1px solid var(--rz-base-300);
}

/* ---- actions ---- */

.luxoris-actions[b-o95t9vniaa] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.luxoris-actions-end[b-o95t9vniaa] {
    display: flex;
    gap: 0.75rem;
    margin-left: auto;
}

.luxoris-create[b-o95t9vniaa]  .luxoris-placeholder {
    margin-bottom: 1.25rem;
    color: var(--rz-text-secondary-color);
}

/* Stack the breadcrumb rather than squeezing both labels onto one line. */
@media (max-width: 700px) {
    .luxoris-steps[b-o95t9vniaa] {
        flex-direction: column;
    }

    .luxoris-step + .luxoris-step[b-o95t9vniaa] {
        border-left: none;
        border-top: 1px solid var(--rz-base-300);
    }
}

/* A hint reporting a problem. */
.luxoris-create[b-o95t9vniaa]  .luxoris-error {
    color: var(--rz-danger, #a4262c);
}
/* /Components/Pages/Publishing/Ebay/Auth/EbayLogin.razor.rz.scp.css */
/* /Components/Pages/Publishing/Ebay/Auth/EbayLoginCallbackHandler.razor.rz.scp.css */
/* /Components/Pages/Publishing/Ebay/EbayHome.razor.rz.scp.css */
/* /Components/Pages/ReferenceData/CreateItemType.razor.rz.scp.css */
/* /Components/Pages/ReferenceData/EditItemType.razor.rz.scp.css */
/* /Components/Pages/ReferenceData/ReferenceData.razor.rz.scp.css */
/* /Components/Pages/ScanOut/ScanOut.razor.rz.scp.css */
