/* Quote Builder pricing status and summary. */

.quotation-list-page .quotation-list-toolbar { display:flex; justify-content:flex-end; align-items:flex-end; gap:14px; margin:0 0 20px; }
.quotation-list-toolbar form { display:flex; flex-direction:column; gap:10px; }
.quotation-list-toolbar input { min-width:260px; padding:10px 12px; border:1px solid #ccc; }
.quotation-filter-wrap { display:flex; flex-direction:column; gap:6px; }
.quotation-filter-wrap select { min-width:170px; min-height:44px; padding:9px 12px; border:1px solid #ccc; }
.quotation-list-page .no-data { font-size: 38px; font-weight: 700; margin: 28px 0; }
.quotation-list-table { width:100%; border-collapse:collapse; }
.quotation-list-table th, .quotation-list-table td { padding:16px 12px; border-bottom:1px solid #e1e1e1; text-align:left; }
.quotation-list-table th:first-child, .quotation-list-table td:first-child { width:44px; text-align:center; }
.quotation-selector { width:20px; height:20px; accent-color:#ffb00f; }
.quotation-selection-actions, .quotation-detail-actions { display:flex; justify-content:flex-end; align-items:center; gap:16px; margin-top:28px; }
.quotation-selection-actions form, .quotation-detail-actions form { margin:0; }
.quotation-selection-message {
    position:fixed;
    top:50%;
    left:50%;
    z-index:10001;
    display:flex;
    align-items:center;
    gap:24px;
    min-width:340px;
    max-width:calc(100% - 40px);
    padding:18px 20px 18px 24px;
    transform:translate(-50%, -50%);
    border-radius:8px;
    background:#111;
    box-shadow:0 8px 28px rgba(0,0,0,.3);
    color:#fff;
    font-size:16px;
    font-weight:700;
}
.quotation-selection-message[hidden] { display:none !important; }
.quotation-selection-message > span {
    display:block;
    flex:1;
    color:#fff !important;
    font-size:16px !important;
    line-height:1.4;
    font-weight:700 !important;
}
.quotation-selection-message button {
    border:0;
    padding:0;
    background:transparent;
    color:#fff;
    font-size:24px;
    line-height:1;
    cursor:pointer;
}
.quotation-selection-actions .proline-btn img,
.quotation-detail-actions .proline-btn img { margin-right: 8px; vertical-align: middle; }
.clear-quote-btn {
    border: 1px solid #e53935;
    color: #e53935;
    background: #fff;
}
.clear-quote-btn:hover {
    background: #e53935;
    color: #fff;
}
.clear-quote-btn:disabled { opacity:.5; cursor:not-allowed; }
.quotation-product-list { margin-top:24px; }
.quotation-details-card { border:1px solid #e7e7e7; border-radius:12px; overflow:hidden; }
.quotation-product-head { display:grid; grid-template-columns:180px minmax(260px,2fr) 1fr 120px 1fr 36px; align-items:center; gap:20px; padding:24px 26px 8px; font-weight:700; }
.quotation-product-row { position:relative; display:grid; grid-template-columns:180px minmax(260px,2fr) 1fr 120px 1fr 36px; align-items:center; gap:20px; min-height:180px; padding:14px 26px 24px; border-top:1px solid #f1f1f1; }
.quotation-product-picture img { max-width:145px; max-height:145px; }
.quotation-product-row input[type=number] { width:90px; padding:10px; }
.quotation-product-actions { display:flex; align-items:center; gap:12px; }
.quotation-remove-button { width:24px; height:24px; border:0; background:#ff0000; color:white; font-weight:bold; cursor:pointer; line-height:1; }
.quotation-meta { margin: 8px 0 12px; color:#333; }
.quotation-details-table td.remove-col { width: 48px; text-align: center; }
.quotation-details-product-cell { display:flex; align-items:center; gap:14px; }
.quotation-details-product-cell img { width:80px; height:80px; object-fit:contain; }
.quotation-details-table input[type=number] { width:90px; padding:8px; }
.quotation-details-page .quote-total { display:flex; justify-content:space-between; max-width:450px; margin:36px 0 0 auto; padding:24px; border:1px solid #ddd; }
.quotation-details-page .cart-table-wrap { margin-bottom:30px; }
.quotation-details-page .cart-table-wrap:last-of-type { margin-bottom:0; }
.quotation-details-page .cart { min-height:270px; border-radius:10px; }
.quotation-details-page .quotation-remove-column { position:relative; align-self:start; }
.quotation-details-page .quotation-remove-column form { position:absolute; top:-20px; right:-1px; }
.quotation-details-page .cart-item-row { min-height:190px; }
.quotation-details-page .cart-item-row .detailSection { min-width:0; }
.quotation-details-page .cart-item-row .product-name { display:block; margin-bottom:20px; font-weight:700; }
.quotation-details-page .cart-item-row .tax-suffix { display:block; margin-top:6px; }
.quotation-details-page .cart-item-row .quantity form,
.quotation-details-page .cart-item-row .add-to-cart form { margin:0; }
.quotation-details-page .quotation-quantity-number { width:80px; height:35px; }
.quotation-details-page .quotation-quantity-number .quotation-qty-input {
    width:80px !important;
    height:35px !important;
    padding:6px 24px 6px 12px !important;
    border:1px solid #d9d9d9;
    border-radius:4px;
    font-size:12px;
    line-height:21px;
    text-align:left;
}
.quotation-details-page .cart-item-row .add-to-cart { text-align:right; }
.quotation-details-page .cart-item-row .add-to-cart-button { min-width:170px; }
.quotation-details-page .cart-item-row .add-to-cart-button img { margin:0 5px -4px 0; filter:none; }
.quotation-details-page .quote-total { display:block; width:360px; max-width:100%; }
.quotation-picker-backdrop { position:fixed; inset:0; z-index:10000; display:flex; align-items:center; justify-content:center; background:rgba(0,0,0,.45); }
.quotation-picker-backdrop[hidden] { display: none !important; }
.quotation-picker { width:min(480px,calc(100% - 32px)); padding:28px; border-radius:10px; background:#fff; box-shadow:0 18px 60px rgba(0,0,0,.25); }
.quotation-picker h3 { margin-top:0; }
.quotation-picker select, .quotation-picker input { width:100%; min-height:44px; margin:8px 0 16px; padding:9px 12px; border:1px solid #aaa; }
.quotation-picker__buttons { display:flex; justify-content:flex-end; gap:10px; }
#create-quotation-validation { margin-top:-8px; margin-bottom:12px; color:#d32f2f; }
@media (max-width:900px) {
    .quotation-product-row { grid-template-columns:100px 1fr; }
    .quotation-list-page .quotation-list-toolbar { flex-direction:column; align-items:stretch; }
    .quotation-selection-actions, .quotation-detail-actions { flex-direction:column; align-items:stretch; }
}
:is(.wishlist-page, .quote-builder-page) .quote-buy-price-warning {
    background: #ff0000;
    color: #fff;
    padding: 12px 24px;
    margin-bottom: 28px;
    border-radius: 4px;
    font-family: "Inter", sans-serif;
    line-height: 1;
}
:is(.wishlist-page, .quote-builder-page) .quote-buy-price .product-unit-price,
:is(.wishlist-page, .quote-builder-page) .quote-buy-price .product-subtotal,
:is(.wishlist-page, .quote-builder-page) .quote-buy-price-label,
:is(.wishlist-page, .quote-builder-page) .quote-total-amount.quote-buy-price {
    color: #ff0000;
}
:is(.wishlist-page, .quote-builder-page) .quote-total {
    width: 360px;
    max-width: 100%;
    margin: 30px 0 28px auto;
    padding: 24px 18px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 2px;
    font-weight: 700;
}
:is(.wishlist-page, .quote-builder-page) .quote-buy-price-label-total {
    display: block;
}
:is(.wishlist-page, .quote-builder-page) .quote-total-row {
    display: flex;
    justify-content: space-between;
    gap: 24px;
}
:is(.wishlist-page, .quote-builder-page) .quote-total-subtotal {
    color: #666 !important;
    padding-bottom: 14px;
    border-bottom: 1px solid #ddd;
}
:is(.wishlist-page, .quote-builder-page) .quote-total-final {
    color: #000;
    padding-top: 14px;
}
