﻿.error-message { color: red; }

.membersDiv { background: #F5F4EF; border-radius: 10px; padding: 35px 60px; margin: 0 0 30px 0; }
    .membersDiv h2 { font-size: 28px; font-weight: bold; margin: 0 0 15px 0; line-height: 1em; text-align: center; }
    .membersDiv p { font-size: 16px; text-align: center; }
        .membersDiv p.members-links { margin: 20px 0 0; display: flex; justify-content: center; align-items: center; gap: 13px; }
        .membersDiv p a { font-size: 16px; font-weight: 600; padding: 10px 40px; border-radius: 100px; border: 1px solid #000; border-radius: 100px; display: inline-block; }
            .membersDiv p a:hover { text-decoration: none; background: var(--green); color: #fff; }

.checkout { max-width: 770px; margin: auto; position: relative; }
    .checkout .empty-cart { text-align: center; padding: 150px 0; }
        .checkout .empty-cart .button { margin: 20px 0; display: inline-block; background-color: #2980b9; color: #fff; text-decoration: none; text-transform: uppercase; padding: 10px 15px; border-radius: 5px; }

.cartPart { background: #fff; padding: 25px 30px; border-radius: 10px; margin: 0 0 35px 0; }
    .cartPart .cartPartHeader { display: flex; justify-content: space-between; align-items: center; }
        .cartPart .cartPartHeader h2, .cartPart .cartPartHeader h1 { margin: 0; }
        .cartPart .cartPartHeader .expandCartPartBtn { display: none; }
            .cartPart .cartPartHeader .expandCartPartBtn img { width: 16px; }
        .cartPart .cartPartHeader.open .expandCartPartBtn img { transform: rotate(180deg); }
    .cartPart.minimized .cartPartHeader { cursor: pointer; }
        .cartPart.minimized .cartPartHeader .expandCartPartBtn { display: flex; align-items: center; gap: 10px; }
    .cartPart .cartPartBody { margin: 20px 0 0 0; }
    .cartPart.minimized .cartPartBody { display: none; }
    .cartPart.columns { display: flex; justify-content: space-between; align-items: flex-start; }
        .cartPart.columns .column:first-child { width: 45%; }
        .cartPart.columns .column:last-child { width: 50%; }
    .cartPart h1, .cartPart h2 { font-size: 28px; font-weight: bold; margin: 0 0 15px 0; line-height: 1em; }
    .cartPart .discountDiv p,
    .cartPart.deliveryDiv p { font-size: 16px; font-weight: 600; margin: 0 0 15px 0; }
    .cartPart .checkoutTextBox { width: 205px; border-radius: 100px; background: #F5F4EF; color: #000; font-size: 16px; border: none; padding: 12px 20px; margin: 0 9px 0 0; box-sizing: border-box; }
        .cartPart .checkoutTextBox.small { width: 77px; }
    .cartPart .checkoutGreenBtn { background: var(--green); color: #fff; font-size: 16px; padding: 10px 20px; border-radius: 100px; border: none; cursor: pointer; display: inline-block; }
        .cartPart .checkoutGreenBtn.full { width: 100%; display: block; padding: 20px 0; font-size: 20px; }
        .cartPart .checkoutGreenBtn:hover { background: var(--darkGreen); text-decoration: none; }
    .cartPart .discountDiv .checkout-voucher-error { color: var(--red); margin: 5px 0 0 5px; }

    .cartPart .giftcardDiv { margin: 20px 0 0 0; }
    .cartPart .giftcardFields { display: flex; justify-content: flex-start; gap: 10px; margin: 10px 0 20px 0; }
    .cartPart .giftcardField p { margin: 0 0 0 3px; }
    .cartPart h3 { margin: 0 0 15px 0; font-size: 22px; }
    .cartPart .giftcardDiv .giftcardField .info-icon { cursor: pointer; color: #000; margin-left: 0px; }
    .cartPart .modal { display: none; /* Dold som standard */ position: fixed; z-index: 1000; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0, 0, 0, 0.5); /* Halvgenomskinlig bakgrund */ }
    .cartPart .modal-content { background-color: #fff; margin: 10% auto; padding: 20px; border: 1px solid #888; width: 80%; max-width: 400px; text-align: center; }
        .cartPart .modal-content img { max-width: 100%; height: auto; }
    .cartPart .close { color: #aaa; float: right; font-size: 28px; font-weight: bold; cursor: pointer; }

.cartPart .changeWarehouseDiv { margin: 0 0 20px 0; display: none; }
.cartPart .warehouseInfo.changeWarehouse .changeWarehouseDiv { display: block; }
.cartPart .changeWarehouseDiv select { padding: 10px; font-size: 18px; margin: 0 10px 0 0; border-radius: 10px; }

.cartPart .warehouseInfo { margin: 20px 0 0 0; }
    .cartPart .warehouseInfo h2 { display: flex; justify-content: flex-start; align-items: center; gap: 15px; }
        .cartPart .warehouseInfo h2 span { font-size: 14px; text-decoration: underline; color: var(--green); cursor: pointer; }
    .cartPart .warehouseInfo.changeWarehouse h2 span { display: none; }
    .cartPart .warehouseInfo h2 span:hover { text-decoration: none; }
.cartPart .warehouseInfoHeader { display: flex; justify-content: space-between; align-items: center; margin: 20px 0; background: #ddd; padding: 10px; border-radius: 10px; }
    .cartPart .warehouseInfoHeader h3 { margin: 0; }
    .cartPart .warehouseInfoHeader .expandWarehouseInfo { font-size: 14px; display: inline-flex; justify-content: space-between; align-items: center; gap: 10px; cursor: pointer; }
        .cartPart .warehouseInfoHeader .expandWarehouseInfo:hover { text-decoration: underline; }
        .cartPart .warehouseInfoHeader .expandWarehouseInfo.open img { transform: rotate(180deg); }
.cartPart .warehouseInfo p { font-weight: 400; font-size: 14px; margin: 0 0 5px 0; }
.cartPart .warehouseInfo h4 { margin: 10px 0; font-size: 20px; }
.cartPart .warehouseInfoBody { display: none; padding: 0 10px; }

.cartPart .column .summaryRow { display: flex; justify-content: space-between; align-items: center; font-size: 16px; }
.cartPart .column .totalCostDiv { border-top: 1px solid #E1E1E1; padding: 20px 0 0 0; }
    .cartPart .column .totalCostDiv p { display: flex; justify-content: space-between; align-items: center; font-size: 22px; font-weight: 600; }

.checkout .shippingDiv { margin: 30px 0 0 0; }
.checkout .shipping-options { margin: 5px 0 20px; list-style: none; padding: 0; border: 1px solid #ddd; border-radius: 5px; }
    .checkout .shipping-options li { padding: 10px; border-bottom: 1px solid #ddd; }
        .checkout .shipping-options li:last-child { border-bottom: none; }
    .checkout .shipping-options label { width: 100%; margin-left: 10px; font-size: 20px; }
    .checkout .shipping-options .price { float: right; font-size: 18px; }
    .checkout .shipping-options .extraInfo p { font-weight: 400; }

.checkout .goToPaymentDiv { margin: 40px 0 0 0; }
    .checkout .goToPaymentDiv h2 { margin: 0 0 30px 0; }

.removeProductsDiv { margin: 20px 0 0 0; }
.cartPart .removeProductsDiv p { font-weight: 400; color: var(--red); }
.cartPart .cartIsOkDiv p { font-weight: 400; background: var(--green); color: #fff; padding: 10px; border-radius: 10px; text-align: center; display: flex; justify-content: center; align-items: center; gap: 5px; }
.removeProducts { margin: 0 0 20px 0; }
    .removeProducts .removeProductItem { display: flex; width: 100%; justify-content: flex-start; align-items: center; padding: 0 0 20px 0; gap: 20px; border-bottom: 1px solid #ddd; }
.removeProductItem .image { width: 100px; }
.removeProductItem .name { font-size: 20px; }
.removeProductItem .remove { margin-left: auto; }
    .removeProductItem .remove a { color: #fff; padding: 10px 15px; border-radius: 100px; font-size: 16px; display: block; margin: 0 0 10px 0; text-align: center; }
        .removeProductItem .remove a:last-child { margin: 0; text-decoration: none; }
.removeProductItem .removeBtn { background: var(--red); }
.removeProductItem .changeQtyBtn { background: var(--green); }
.removeProductItem .removeBtn:hover { opacity: 0.9; }

.campaignSelectionDiv { padding: 20px; border: 1px solid #ddd; display: flex; justify-content: space-between; align-items: center; margin: 0 0 15px 0; border-radius: 10px; }
    .campaignSelectionDiv:last-child { margin: 0; }
    .campaignSelectionDiv .campaignDivText { font-size: 14px; width: 80%; }
    .campaignSelectionDiv .campaignHeader { font-size: 18px; }

    .campaignSelectionDiv.ulList {border:none; padding:0;}
    .campaignSelectionDiv ul {list-style:none; padding:0; margin:0;}
        .campaignSelectionDiv ul li { padding: 20px; border: 1px solid #ddd; border-radius: 10px; margin: 0 0 15px 0; }
        .campaignSelectionDiv ul li:last-child { margin:0; }

    @media screen and (max-width: 860px) { .membersDiv { padding: 15px; margin: 0 0 15px 0; }
        .membersDiv h2 { font-size: 22px; }
        .membersDiv p { font-size: 14px; }
            .membersDiv p a { padding: 5px 20px; }
    .cartPart h1, .cartPart h2 { font-size: 22px; }
    .cartPart { padding: 15px; }

        .cartPart.columns { flex-wrap: wrap; gap: 20px; }
            .cartPart.columns .column:first-child, .cartPart.columns .column:last-child { width: 100%; }

        .cartPart .discountDiv p { font-size: 22px; font-weight: bold; }
}
