/* ============================================
   Cart Page - Action Buttons Dark Theme
   ============================================ */

/* Continue Shopping button - override .lib-link-as-button() mixin output */
.cart-container .form-cart .action.continue,
.cart-container .form-cart a.action.continue,
.block-cart-failed .action.continue,
.checkout-cart-index .action.continue,
a.action.continue {
    background: transparent !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.7) !important;
    border-radius: 0 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

.cart-container .form-cart .action.continue:visited,
.cart-container .form-cart a.action.continue:visited,
a.action.continue:visited {
    color: #ffffff !important;
    background: transparent !important;
}

.cart-container .form-cart .action.continue:hover,
.cart-container .form-cart .action.continue:focus,
.cart-container .form-cart a.action.continue:hover,
.cart-container .form-cart a.action.continue:focus,
.checkout-cart-index .action.continue:hover,
.checkout-cart-index .action.continue:focus,
a.action.continue:hover,
a.action.continue:focus {
    background: linear-gradient(135deg, rgba(60, 130, 255, 0.18) 0%, rgba(60, 130, 255, 0.45) 100%) !important;
    border-color: rgba(116, 169, 255, 0.95) !important;
    color: #e7f0ff !important;
    text-decoration: none !important;
}

.cart-container .form-cart .action.continue span,
a.action.continue span {
    color: inherit !important;
}

.checkout-cart-index .cart.main.actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: stretch;
    margin-top: 20px;
}

.checkout-cart-index .cart.main.actions .action {
    display: inline-flex;
    flex: 1 1 240px;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    margin: 0 !important;
    padding: 14px 18px !important;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 1.25;
    letter-spacing: 0.02em;
    text-align: center;
    float: none !important;
}

.checkout-cart-index .cart.main.actions .action:before {
    display: none !important;
    content: none !important;
}

.checkout-cart-index .cart.main.actions .action span {
    display: block;
    width: 100%;
    color: inherit;
}

.checkout-cart-index .cart.main.actions .action.continue {
    background: rgba(255, 255, 255, 0.02) !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
}

.checkout-cart-index .cart.main.actions .action.update {
    background: linear-gradient(135deg, rgba(60, 130, 255, 0.22) 0%, rgba(60, 130, 255, 0.5) 100%) !important;
    border-color: rgba(116, 169, 255, 0.95) !important;
    color: #ffffff !important;
}

.checkout-cart-index .cart.main.actions .action.clear {
    background: transparent !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    color: #dce5f2 !important;
}

.checkout-cart-index .cart-summary .checkout-methods-items {
    padding: 0;
}

.checkout-cart-index .cart-summary .checkout-methods-items .action.primary.checkout {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 56px;
    padding: 14px 18px !important;
    border: 1px solid rgba(116, 169, 255, 0.95) !important;
    border-radius: 0 !important;
    background: linear-gradient(135deg, rgba(60, 130, 255, 0.22) 0%, rgba(60, 130, 255, 0.5) 100%) !important;
    color: #ffffff !important;
    box-sizing: border-box;
    text-align: center;
    font-size: 16px;
    line-height: 1.25;
    letter-spacing: 0.02em;
    text-decoration: none !important;
}

.checkout-cart-index .cart-summary .checkout-methods-items .action.primary.checkout:hover,
.checkout-cart-index .cart-summary .checkout-methods-items .action.primary.checkout:focus {
    background: linear-gradient(135deg, rgba(60, 130, 255, 0.3) 0%, rgba(60, 130, 255, 0.58) 100%) !important;
    border-color: rgba(157, 197, 255, 1) !important;
    color: #ffffff !important;
}

.checkout-cart-index .cart-summary .checkout-methods-items .action.primary.checkout span {
    color: inherit;
}

/* ============================================
   Cart Page - Mobile Item Layout
   ============================================ */

@media only screen and (max-width: 767px) {
    .checkout-cart-index .cart.main.actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px;
        margin-top: 20px;
        text-align: left;
    }

    .checkout-cart-index .cart.main.actions .action {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 56px;
        margin: 0 !important;
        padding: 14px 18px !important;
        box-sizing: border-box;
        font-size: 16px;
        line-height: 1.25;
        letter-spacing: 0.02em;
        text-align: center;
        float: none !important;
    }

    .checkout-cart-index .cart.main.actions .action:before {
        display: none !important;
        content: none !important;
    }

    .checkout-cart-index .cart.main.actions .action span {
        display: block;
        width: 100%;
        color: inherit;
    }

    .checkout-cart-index .cart.main.actions .action.continue {
        background: rgba(255, 255, 255, 0.02) !important;
        border-color: rgba(255, 255, 255, 0.16) !important;
    }

    .checkout-cart-index .cart.main.actions .action.update {
        background: linear-gradient(135deg, rgba(60, 130, 255, 0.22) 0%, rgba(60, 130, 255, 0.5) 100%) !important;
        border-color: rgba(116, 169, 255, 0.95) !important;
        color: #ffffff !important;
    }

    .checkout-cart-index .cart.table-wrapper {
        border-top: 0;
        overflow: visible;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item {
        display: block;
        margin: 0 0 20px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        background: #101315;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item tbody,
    .checkout-cart-index .cart.table-wrapper .cart.item tr {
        display: block;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .item-info {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 16px 18px;
        padding: 16px;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .item-info > td {
        min-width: 0;
        padding: 0;
        border: 0;
        line-height: 1.2 !important;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item td.col.item {
        display: flex;
        flex-wrap: wrap;
        grid-column: 1 / -1;
        gap: 16px;
        align-items: flex-start;
        margin-bottom: 2px;
        padding-bottom: 16px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

    .checkout-cart-index .cart.table-wrapper .cart.item td.col.item:before {
        grid-column: 1 / -1;
        width: 100%;
        margin: 0 0 12px;
        padding: 0;
        float: none;
        color: #ffffff;
        font-size: 16px;
        font-weight: 700;
        letter-spacing: 0;
        text-transform: none;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .product-item-photo {
        display: block;
        flex: 0 0 80px;
        float: none;
        position: static;
        top: auto;
        left: auto;
        width: 80px;
        max-width: none;
        margin: 0;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .product-item-photo .product-image-container {
        display: block;
        width: 80px !important;
        max-width: none;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .product-item-details {
        display: flex;
        flex: 1 1 0%;
        flex-direction: column;
        gap: 8px;
        min-width: 0;
        padding: 0;
        margin: 0;
        white-space: normal;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .product-item-name {
        display: block;
        margin: 0 0 8px;
        font-size: 18px;
        line-height: 1.25;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .product-item-name a {
        display: block;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item td.col.price,
    .checkout-cart-index .cart.table-wrapper .cart.item td.col.qty,
    .checkout-cart-index .cart.table-wrapper .cart.item td.col.subtotal {
        display: flex;
        flex-direction: column;
        gap: 8px;
        min-height: 86px;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item td.col.price:before,
    .checkout-cart-index .cart.table-wrapper .cart.item td.col.qty:before,
    .checkout-cart-index .cart.table-wrapper .cart.item td.col.subtotal:before {
        width: auto;
        margin: 0;
        padding: 0;
        float: none;
        color: #dce5f2;
        font-size: 14px;
        font-weight: 700;
        letter-spacing: 0;
        text-transform: none;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item td.col.qty {
        align-items: center;
        text-align: center;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item td.col.subtotal {
        align-items: flex-end;
        text-align: right;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item td.col.price .price,
    .checkout-cart-index .cart.table-wrapper .cart.item td.col.subtotal .price {
        font-size: 20px;
        line-height: 1.05;
        font-weight: 700;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item td.col.qty .field.qty,
    .checkout-cart-index .cart.table-wrapper .cart.item td.col.qty .control.qty {
        width: 100%;
        margin: 0;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item td.col.qty .control.qty {
        display: flex;
        justify-content: center;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item td.col.qty .label {
        display: none;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item td.col.qty .input-text.qty {
        width: 50px;
        height: 44px;
        margin: 0 auto;
        padding: 0 8px;
        text-align: center;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions td {
        display: block;
        padding: 0 16px 16px;
        border: 0;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar {
        display: flex !important;
        flex-direction: column;
        gap: 10px;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .gift-options-cart-item {
        display: contents !important;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar:before,
    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar:after {
        display: none;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .primary,
    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .secondary,
    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .action {
        float: none !important;
        margin: 0 !important;
        width: 100% !important;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .primary,
    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .secondary {
        display: block !important;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar .action {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100% !important;
        min-height: 52px;
        margin: 0 !important;
        padding: 10px 8px;
        text-align: center;
        line-height: 1.25;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .action-edit,
    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .action-delete {
        position: static !important;
        top: auto !important;
        right: auto !important;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .action + .action,
    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .gift-options-cart-item + .action,
    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .action + .gift-options-cart-item,
    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .gift-options-cart-item + .gift-options-cart-item,
    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .gift-options-cart-item > .action-gift,
    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar > .gift-options-cart-item > .gift-content {
        margin-top: 0 !important;
    }

    .checkout-cart-index .cart.table-wrapper .cart.item .item-actions .actions-toolbar .action span {
        white-space: normal;
    }
}