/* ERPPlus fast sales/POS experience — presentation only, keeps existing sales logic intact. */

.sale-pro-page {
    padding: 14px !important;
}

.sale-pro-hero {
    min-height: 86px !important;
    padding: 14px 18px !important;
    margin-bottom: 10px !important;
    border-radius: 20px !important;
}

.sale-breadcrumb,
.sale-eyebrow,
.sale-pro-hero p,
.sale-shortcuts {
    display: none !important;
}

.sale-hero-copy {
    gap: 0 !important;
}

.sale-hero-title-row {
    gap: 10px !important;
}

.sale-hero-icon {
    width: 42px !important;
    height: 42px !important;
    border-radius: 14px !important;
    font-size: 20px !important;
}

.sale-pro-hero h1 {
    font-size: 23px !important;
}

.sale-hero-actions {
    gap: 7px !important;
    flex-wrap: wrap;
}

.sale-hero-actions .erp-btn {
    min-height: 38px !important;
    padding-inline: 14px !important;
}

.sale-pro-grid {
    gap: 10px !important;
}

.sale-summary {
    flex-basis: 286px !important;
    width: 286px !important;
    max-width: 286px !important;
    top: 10px !important;
}

.sale-main {
    max-width: calc(100% - 296px) !important;
    gap: 10px !important;
}

.sale-card,
.sale-summary-modern {
    padding: 14px !important;
    border-radius: 20px !important;
}

.sale-card-title-modern {
    min-height: 44px !important;
    margin-bottom: 10px !important;
    padding-bottom: 9px !important;
}

.sale-card-title h3,
.sale-summary h3 {
    font-size: 17px !important;
}

.sale-card-title p {
    display: none !important;
}

.sale-section-icon,
.sale-summary-icon {
    width: 34px !important;
    height: 34px !important;
    border-radius: 11px !important;
    font-size: 16px !important;
}

/* Keep the fast-path invoice fields visible and suppress duplicate/read-only clutter. */
.sale-form-grid {
    grid-template-columns: minmax(210px, 1.6fr) minmax(140px, .8fr) minmax(140px, .8fr) !important;
    gap: 9px !important;
}

.sale-field-number,
.sale-field-date,
.sale-field-salesperson,
.sale-field-stock,
.sale-field-final,
.sale-field-profit,
.sale-field-customer,
.sale-selected-info,
.sale-main > .sale-card:first-child > .mt-3 {
    display: none !important;
}

.sale-field-customer-search {
    grid-column: span 1 !important;
}

.sale-field-customer-search > div[style] {
    margin-top: 6px !important;
}

.sale-field-customer-search > div[style] .erp-btn {
    min-height: 34px !important;
    padding-inline: 12px !important;
    font-size: 11px !important;
}

.form-control,
.form-select,
.sale-readonly-box {
    min-height: 43px !important;
    border-radius: 12px !important;
}

.sale-field label,
.sale-card label {
    margin-bottom: 5px !important;
    font-size: 11px !important;
}

/* Official/normal is a compact switch rather than a full card. */
.sale-invoice-type-panel {
    min-height: 42px !important;
    margin-bottom: 9px !important;
    padding: 6px 8px !important;
    border-radius: 14px !important;
}

.sale-invoice-type-copy {
    display: none !important;
}

.sale-invoice-type-options {
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
}

.sale-invoice-type-option {
    min-height: 36px !important;
    padding: 5px 10px !important;
    align-items: center !important;
    border-radius: 10px !important;
}

.sale-invoice-type-option small {
    display: none !important;
}

.sale-official-notice {
    margin: 0 0 8px !important;
    padding: 7px 10px !important;
}

.sale-official-notice span {
    display: none !important;
}

/* The product card is the main POS interaction surface. */
.sale-product-card {
    border-color: rgba(37,99,235,.22) !important;
    box-shadow: 0 16px 38px rgba(37,99,235,.08) !important;
}

.sale-product-tools {
    grid-template-columns: minmax(280px, .9fr) minmax(360px, 1.4fr) !important;
    gap: 9px !important;
    margin-bottom: 8px !important;
}

.sale-scan-box,
.sale-product-search-wrap {
    min-height: 76px !important;
    padding: 9px !important;
    border-radius: 15px !important;
}

.sale-scan-box {
    grid-template-columns: minmax(0, 1fr) 72px !important;
}

.sale-scan-icon {
    display: none !important;
}

.sale-search-input-wrap .form-control,
.sale-barcode-input {
    min-height: 48px !important;
    font-size: 14px !important;
}

.sale-add-item-panel {
    grid-template-columns: minmax(180px, 1.3fr) 90px 130px 100px 100px 120px !important;
    gap: 7px !important;
    margin-top: 8px !important;
    padding: 9px !important;
    border-radius: 15px !important;
}

.sale-add-action {
    grid-column: auto !important;
}

.sale-add-product-btn {
    min-height: 43px !important;
    padding-inline: 10px !important;
}

.sale-product-preview {
    grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(90px, .7fr)) !important;
    gap: 7px !important;
    margin-top: 8px !important;
    padding: 8px !important;
    border-radius: 14px !important;
}

.sale-product-preview > div {
    min-height: 48px !important;
    padding: 7px 9px !important;
    border-radius: 11px !important;
}

.sale-product-preview-icon {
    display: none !important;
}

/* Dense line-item grid: more invoice rows visible without scrolling. */
.sale-items-table-wrap {
    border-radius: 14px !important;
}

.sale-table,
.sale-items-table {
    min-width: 760px !important;
}

.sale-items-table thead th,
.sale-table th {
    padding: 9px 8px !important;
}

.sale-items-table tbody td {
    padding: 8px !important;
}

.sale-row-index span {
    width: 27px !important;
    height: 27px !important;
    border-radius: 8px !important;
}

.sale-product-mini-icon {
    display: none !important;
}

.sale-product-cell {
    min-width: 180px !important;
}

.sale-table-input,
.sale-qty-input {
    width: 72px !important;
    min-height: 34px !important;
}

.sale-items-footer {
    display: none !important;
}

.sale-empty-modern {
    min-height: 105px !important;
}

.sale-empty-visual {
    display: none !important;
}

/* Compact totals/actions on desktop. */
.sale-summary-head {
    padding-bottom: 9px !important;
}

.sale-summary-row {
    min-height: 38px !important;
    padding: 6px 0 !important;
}

.sale-summary-final {
    min-height: 58px !important;
    margin-top: 9px !important;
    padding: 12px !important;
    border-radius: 15px !important;
}

.sale-summary-final strong {
    font-size: 19px !important;
}

.sale-actions {
    gap: 6px !important;
    margin-top: 9px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.sale-actions .erp-btn {
    min-height: 38px !important;
    padding-inline: 8px !important;
    font-size: 11px !important;
}

.sale-actions .erp-btn-primary,
.sale-actions .erp-btn-print:nth-child(2) {
    grid-column: span 2;
    min-height: 44px !important;
    font-size: 13px !important;
}

@media (max-width: 1100px) {
    .sale-pro-grid {
        display: block !important;
    }

    .sale-main {
        width: 100% !important;
        max-width: 100% !important;
    }

    .sale-summary {
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 10px;
        position: static !important;
    }

    .sale-form-grid {
        grid-template-columns: minmax(0, 1.4fr) minmax(120px, .8fr) minmax(120px, .8fr) !important;
    }

    .sale-product-tools {
        grid-template-columns: 1fr 1.25fr !important;
    }

    .sale-add-item-panel {
        grid-template-columns: minmax(150px, 1fr) 86px 110px 92px 92px !important;
    }

    .sale-add-action {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 760px) {
    .sale-pro-page {
        padding: 7px 7px 88px !important;
    }

    .sale-pro-hero {
        min-height: 54px !important;
        padding: 8px 10px !important;
        border-radius: 14px !important;
    }

    .sale-hero-icon,
    .sale-hero-actions .erp-btn:not(.erp-btn-primary),
    .sale-pro-hero p {
        display: none !important;
    }

    .sale-pro-hero h1 {
        font-size: 17px !important;
    }

    .sale-hero-actions .erp-btn-primary {
        min-height: 36px !important;
        padding-inline: 12px !important;
        font-size: 11px !important;
    }

    .sale-card,
    .sale-summary-modern {
        padding: 9px !important;
        border-radius: 14px !important;
    }

    .sale-card-title-modern {
        min-height: 36px !important;
        margin-bottom: 7px !important;
    }

    .sale-section-icon,
    .sale-summary-icon {
        display: none !important;
    }

    .sale-card-title h3,
    .sale-summary h3 {
        font-size: 14px !important;
    }

    .sale-form-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 6px !important;
    }

    .sale-field-customer-search {
        grid-column: 1 / -1 !important;
    }

    .sale-field-customer-search > div[style] {
        display: none !important;
    }

    .sale-invoice-type-panel {
        padding: 4px !important;
    }

    .sale-invoice-type-option {
        min-height: 32px !important;
        font-size: 11px !important;
    }

    .sale-product-tools {
        grid-template-columns: 1fr !important;
        gap: 6px !important;
    }

    .sale-scan-box,
    .sale-product-search-wrap {
        min-height: 64px !important;
        padding: 6px !important;
    }

    .sale-scan-box {
        grid-template-columns: minmax(0, 1fr) 62px !important;
    }

    .sale-scan-button {
        width: auto !important;
        min-height: 43px !important;
        padding-inline: 6px !important;
        font-size: 10px !important;
    }

    .sale-search-input-wrap .form-control,
    .sale-barcode-input {
        min-height: 46px !important;
        font-size: 15px !important;
    }

    .sale-add-item-panel {
        grid-template-columns: 1fr 76px !important;
        gap: 6px !important;
        padding: 7px !important;
    }

    .sale-field-product {
        grid-column: 1 / -1 !important;
    }

    .sale-add-item-panel > .sale-field:nth-child(4),
    .sale-add-item-panel > .sale-field:nth-child(5) {
        display: none !important;
    }

    .sale-add-action {
        grid-column: 1 / -1 !important;
    }

    .sale-add-product-btn {
        min-height: 46px !important;
        font-size: 13px !important;
    }

    .sale-product-preview {
        display: none !important;
    }

    /* Mobile invoice rows show only the fields required at the counter. */
    .sale-items-table {
        min-width: 560px !important;
    }

    .sale-items-table th:nth-child(1),
    .sale-items-table td:nth-child(1),
    .sale-items-table th:nth-child(3),
    .sale-items-table td:nth-child(3),
    .sale-items-table th:nth-child(6),
    .sale-items-table td:nth-child(6),
    .sale-items-table th:nth-child(7),
    .sale-items-table td:nth-child(7),
    .sale-items-table th:nth-child(9),
    .sale-items-table td:nth-child(9) {
        display: none !important;
    }

    .sale-product-cell {
        min-width: 155px !important;
    }

    .sale-product-cell-main strong {
        max-width: 150px !important;
        font-size: 12px !important;
    }

    .sale-product-cell-main small {
        font-size: 9px !important;
    }

    .sale-items-table tfoot {
        display: none !important;
    }

    /* Convert the summary into a persistent checkout bar. */
    .sale-summary {
        position: fixed !important;
        right: 7px !important;
        left: 7px !important;
        bottom: 7px !important;
        z-index: 1200 !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 7px !important;
        display: grid !important;
        grid-template-columns: 1fr 1fr 1.25fr !important;
        gap: 6px !important;
        align-items: center !important;
        border: 1px solid rgba(148,163,184,.35) !important;
        box-shadow: 0 18px 45px rgba(15,23,42,.25) !important;
    }

    .sale-summary-head,
    .sale-summary-row,
    .sale-side-warning,
    .sale-actions .erp-btn:nth-child(n+3) {
        display: none !important;
    }

    .sale-summary-final {
        min-height: 48px !important;
        margin: 0 !important;
        padding: 7px 9px !important;
        display: grid !important;
        gap: 1px !important;
    }

    .sale-summary-final span {
        font-size: 9px !important;
    }

    .sale-summary-final strong {
        font-size: 14px !important;
    }

    .sale-actions {
        display: contents !important;
        margin: 0 !important;
    }

    .sale-actions .erp-btn-primary,
    .sale-actions .erp-btn-print:nth-child(2) {
        display: inline-flex !important;
        grid-column: auto !important;
        min-height: 48px !important;
        padding-inline: 5px !important;
        font-size: 10px !important;
        border-radius: 12px !important;
    }

    .sale-picker-panel {
        position: fixed !important;
        top: 18% !important;
        right: 8px !important;
        left: 8px !important;
        max-height: 55vh !important;
        z-index: 5000 !important;
    }
}
