/* Cart summary only. Preserve the existing form fields, actions and CGV handler. */
html.design-v3 #root .v3-cart-page .v3-cart-intro { display: flex; flex-direction: column; }
html.design-v3 #root .v3-cart-page .v3-cart-payment-title { margin-top: auto; }
html.design-v3 #root .v3-cart-page .v3-cart-payment-logos { margin-bottom: 0 !important; }
@media (min-width: 993px) {
    html.design-v3 #root .v3-cart-page .v3-cart-grid { align-items: stretch; }
    html.design-v3 #root .v3-cart-page .v3-cart-intro,
    html.design-v3 #root .v3-cart-page .v3-cart-summary { align-self: stretch; }
}
html.design-v3 #root .v3-cart-page .v3-cart-item-icon,
html.design-v3 #root .v3-cart-page .v3-cart-item-name,
html.design-v3 #root .v3-cart-page .v3-cart-item-price,
html.design-v3 #root .v3-cart-page .v3-cart-remove-wrap { grid-row: 1; }
html.design-v3 #root .v3-cart-page .v3-cart-item-price { justify-self: end; margin: 0; }
html.design-v3 #root .v3-cart-page .v3-cart-totals-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
html.design-v3 #root .v3-cart-page .v3-cart-coupon { min-height: 0; padding: 0; border: 0; background: transparent; }
html.design-v3 #root .v3-cart-page .v3-cart-coupon form { margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
html.design-v3 #root .v3-cart-page .v3-cart-coupon-content { display: grid; grid-template-columns: minmax(0, 1fr) 44px; width: 100%; gap: 0; }
html.design-v3 #root .v3-cart-page .v3-cart-coupon input[type="text"] { width: 100% !important; min-width: 0; margin: 0; }
html.design-v3 #root .v3-cart-page .v3-cart-coupon button { min-width: 0; margin: 0; box-shadow: none; }
html.design-v3 #root .v3-cart-page .v3-cart-discount { grid-column: 1 / -1; margin: 8px 0 0 !important; }
html.design-v3 #root .v3-cart-page .v3-cart-checkout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; min-height: 0; padding: 18px; }
html.design-v3 #root .v3-cart-page .v3-cart-order-row { grid-template-columns: minmax(0, 1fr) auto; margin: 0; gap: 12px; }
html.design-v3 #root .v3-cart-page .v3-cart-consent { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; font-weight: 400; cursor: pointer; }
html.design-v3 #root .v3-cart-page .v3-cart-consent input[type="checkbox"] { flex: 0 0 17px; margin: 2px 0 0; }
html.design-v3 #root .v3-cart-page .v3-cart-consent > span { min-width: 0; margin: 0; padding: 0; float: none; font: inherit; }
html.design-v3 #root .v3-cart-page .v3-cart-total-price { line-height: 1.25; }
html.design-v3 #root .v3-cart-page .v3-cart-order { display: block; margin: 0; }
/* One primary action treatment for both the monthly link and annual submit. */
html.design-v3 #root .v3-cart-page .v3-cart-checkout .v3-cart-submit {
    display: flex; align-items: center; justify-content: center; float: none;
    box-sizing: border-box; width: 100%; min-height: 50px; margin: 0; padding: 12px 20px;
    border: 1px solid #76c043; border-radius: 9px; background: #76c043;
    color: #fff; -webkit-text-fill-color: #fff; box-shadow: none; text-shadow: none;
    font: 700 14px/1.5 Inter, "Open Sans", "Segoe UI", Arial, sans-serif;
    letter-spacing: normal; text-transform: none; text-decoration: none; cursor: pointer;
}
html.design-v3 #root .v3-cart-page .v3-cart-checkout .v3-cart-submit:hover {
    background: #5fa52e; border-color: #5fa52e; color: #fff; transform: none;
}
html.design-v3 #root .v3-cart-page .v3-cart-checkout .v3-cart-submit.disabled,
html.design-v3 #root .v3-cart-page .v3-cart-checkout .v3-cart-submit:disabled {
    background: #dfe5ec; border-color: var(--v3-border); color: #7b8797;
    -webkit-text-fill-color: #7b8797; opacity: .72; cursor: not-allowed; transform: none;
}
html.design-v3 #root .v3-cart-page .v3-cart-checkout .v3-cart-submit::before,
html.design-v3 #root .v3-cart-page .v3-cart-checkout .v3-cart-submit::after { display: none; content: none; }
html.design-v3 #root .v3-cart-page .v3-cart-coupon-unavailable { display: block; }
html.design-v3 #root .v3-cart-page .v3-cart-coupon input::placeholder { color: #7b8797; font-weight: 700; opacity: .85; }
html.design-v3 #root .v3-cart-page .v3-cart-coupon button { color: #fff; }
html.design-v3 #root .v3-cart-page .v3-cart-coupon button::before,
html.design-v3 #root .v3-cart-page .v3-cart-coupon button::after { display: none; content: none; }
html.design-v3 #root .v3-cart-page .v3-cart-coupon input:disabled,
html.design-v3 #root .v3-cart-page .v3-cart-coupon button:disabled { cursor: not-allowed; opacity: .65; }
html.design-v3 #root .v3-cart-sr-only {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
html.design-v3 #root .v3-cart-period-details { margin: -6px 0 20px; padding: 0; color: #657b99; font-size: 13px; }
html.design-v3 #root .v3-cart-period-details summary { display: flex; align-items: center; gap: 6px; cursor: pointer; font-weight: 600; list-style: none; }
html.design-v3 #root .v3-cart-period-details summary::-webkit-details-marker { display: none; }
html.design-v3 #root .v3-cart-period-details summary::before { content: '+'; }
html.design-v3 #root .v3-cart-period-details[open] summary::before { content: '−'; }
html.design-v3 #root .v3-cart-period-details summary:focus-visible { outline: 3px solid #277ddd; outline-offset: 3px; }
html.design-v3 #root .v3-cart-period-details p { margin: 12px 0 0; font-size: 13px; line-height: 1.6; }
html.design-v3 #root .v3-cart-period-breakdown { margin: 12px 0 0; }
html.design-v3 #root .v3-cart-period-breakdown > div { display: flex; justify-content: space-between; gap: 12px; margin-top: 6px; }
html.design-v3 #root .v3-cart-period-breakdown dt { font-weight: 400; }
html.design-v3 #root .v3-cart-period-breakdown dd { margin: 0; white-space: nowrap; }
html.design-v3 #root .v3-cart-page .v3-cart-summary > .alert { position: relative; margin: 0 0 20px; padding: 14px 46px 14px 16px; border-radius: 10px; line-height: 1.5; }
html.design-v3 #root .v3-cart-page .v3-cart-summary > .alert > .close { position: absolute; top: 50%; right: 10px; transform: translateY(-50%); display: grid; place-items: center; width: 28px; height: 28px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 6px; background: transparent; box-shadow: none; font-size: 22px; line-height: 1; }
@media (max-width: 680px) {
    html.design-v3 #root .v3-cart-page .v3-cart-item-price { grid-row: 2; justify-self: start; }
    html.design-v3 #root .v3-cart-page .v3-cart-remove-wrap { grid-row: 1 / span 2; }
    html.design-v3 #root .v3-cart-page .v3-cart-referral .v3-cart-item-price { grid-column: 2; grid-row: 2; justify-self: start; }
    html.design-v3 #root .v3-cart-page .v3-cart-checkout { padding: 16px; }
}
