/* ==========================================================================
   WooCommerce - Notices & Messages
   ========================================================================== */
.woocommerce-message {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: var(--radius-default);
    text-align: center;
    font-weight: 600;
    background: var(--color-white);
    color: var(--cda-color-blue);
    border: 1px solid var(--cda-color-blue);
}

.woocommerce-message a {
    color: var(--color-white);
    text-decoration: underline;
}

.woocommerce-message .button {
    background: var(--cda-color-blue);
    color: var(--color-white);
    text-decoration: none;
    display: flex;
    order: 2;
    margin: 0;
    text-align: center;
}

.woocommerce-notices-wrapper {
    position: fixed;
    bottom: 0;
    left: 0;
    margin: 0;
    padding: var(--space-2);
    width: 100%;
    z-index: 100;
}

.woocommerce-notices-wrapper:empty {
    display: none;
}

.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-info {
    max-width: 600px;
    margin: var(--space-1) auto 0;
    box-shadow: var(--shadow-md);
    border-radius: var(--radius-default);
    background-color: rgba(255, 243, 205, 0.8);
    backdrop-filter: blur(0.75rem);
    border: 1px solid rgba(255, 255, 255, 0.5);
    color: var(--cda-color-warning-text);
    font-weight: 500;
    text-align: center;
}

.woocommerce-notices-wrapper a {
    color: var(--cda-color-warning-text);
    margin: 0;
}

.woocommerce-notices-wrapper a:hover {
    color: var(--color-black);
}

.woocommerce-notices-wrapper .woocommerce-error li {
    padding: var(--space-1);
}

.woocommerce-error strong {
    color: var(--cda-color-primary);
}

.woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-form-coupon-toggle .woocommerce-info {
    padding: var(--space-1);
    margin: 0 0 var(--space-1);
    border-radius: 3px;
    background: var(--color-white);
    border: 1px solid var(--color-border);
}

.woocommerce-notice--success {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: var(--radius-default);
    padding: var(--space-1);
    margin-bottom: var(--space-2);
    text-align: center;
    font-weight: 600;
    background: var(--color-white);
    color: var(--cda-color-blue);
    border: 1px solid var(--cda-color-blue);
}

/* ==========================================================================
   WooCommerce - My Account
   ========================================================================== */
.woocommerce-MyAccount-navigation {
    font-size: 13px;
    padding: var(--space-8) var(--space-4);
    background: var(--cda-color-gray-100);
    margin: 0;
}

.woocommerce-MyAccount-content {
    padding: var(--space-6);
    color: var(--color-text);
    font-size: 16px;
}

/* Account Page Headings - tone down WooCommerce defaults */
.woocommerce-MyAccount-content h2 {
    font-family: var(--font-primary);
    font-size: 16px;
    font-weight: 700;
    text-transform: none;
    letter-spacing: 0;
    color: var(--color-text);
    margin: 0 0 var(--space-4);
    padding-bottom: var(--space-3);
    border-bottom: 1px solid var(--color-border);
}

.woocommerce-MyAccount-content h3 {
    font-family: var(--font-primary);
    font-size: 14px;
    font-weight: 600;
    text-transform: none;
    letter-spacing: 0;
    margin: 0 0 var(--space-3);
}

/* Nav Styling */
.woocommerce-MyAccount-navigation ul,
.woocommerce-MyAccount-navigation li,
.woocommerce-MyAccount-navigation li:not(:last-child) {
    border: none;
}

.woocommerce-MyAccount-navigation a {
    padding: 0 !important;
    margin-bottom: var(--space-3);
    text-decoration: none !important;
    color: #555;
}

.woocommerce-MyAccount-navigation a:hover {
    color: var(--cda-color-primary);
}

.woocommerce-MyAccount-navigation-link.is-active a {
    color: var(--color-text);
    font-weight: bold;
}

.woocommerce-MyAccount-navigation-link.is-active a:after {
    float: right;
    content: "\e8c0";
    font-family: 'eicons';
    color: var(--cda-color-primary) !important;
}

.woocommerce-account fieldset legend {
    font-family: var(--cda-font-display);
    text-transform: uppercase;
    font-weight: bold;
    font-size: 16px;
}

/* Account Buttons */
.woocommerce-button.button.cancel,
.woocommerce-button.button.change_payment_method,
.wcs-switch-link {
    background-color: var(--cda-color-gray-200) !important;
    color: var(--color-black) !important;
}

.woocommerce-button.button.cancel:hover,
.woocommerce-button.button.change_payment_method:hover,
.wcs-switch-link:hover {
    background-color: var(--cda-color-primary-hover) !important;
    color: var(--color-white) !important;
}

.woocommerce .woocommerce-notices-wrapper+h2 {
    display: none;
}

/* Login */
.woocommerce .login {
    margin: 6rem auto;
    width: 100%;
    border-radius: var(--radius-default);
}

#customer_login {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    float: none;
    margin: auto;
    overflow: hidden;
    padding: var(--space-8) var(--space-2);
    width: 1000px;
}

#customer_login .u-column1.col-1,
#customer_login .u-column2.col-2 {
    margin: 0;
    width: 50%;
}

#customer_login .u-column1.col-1 {
    border-right: 1px solid var(--color-border);
    padding-right: var(--space-4);
}

#customer_login .u-column2.col-2 {
    padding-left: var(--space-4);
}

#customer_login h2 {
    font-size: 20px;
    margin: 0 0 var(--space-2);
}

.woocommerce-form-login,
.woocommerce-form-register {
    background: var(--cda-color-gray-100);
    margin-bottom: var(--space-2);
    max-width: 490px;
    padding: var(--space-2);
}

.woocommerce-form-register {
    background: var(--color-white);
    border: 1px solid var(--color-border);
}

.woocommerce-ResetPassword {
    border: 1px solid var(--color-border);
    border-radius: 3px;
    margin: var(--space-8) auto;
    max-width: 480px;
    padding: var(--space-3);
}

.woocommerce-ResetPassword p {
    margin-bottom: var(--space-2);
}

.woocommerce-form-login__rememberme {
    margin-bottom: var(--space-2);
}

.woocommerce-LostPassword.lost_password {
    margin: 0;
}

.woocommerce-form-register .form-row+p {
    font-size: 12px;
    font-weight: bold;
    margin-top: calc(var(--space-2) * -1);
}

.woocommerce-form-register .woocommerce-privacy-policy-text {
    border-top: 1px solid var(--color-border);
    padding-top: var(--space-2);
    text-align: left;
}

.woocommerce-form-login__submit {
    display: block;
    width: 100%;
}

#customer_login .woocommerce-form-register__submit {
    background: var(--color-white);
    border: 1px solid var(--cda-color-primary-hover);
    color: var(--cda-color-primary-hover);
    display: block;
    width: 100%;
}

#customer_login .woocommerce-form-register__submit:hover {
    background: var(--cda-color-primary-hover);
    color: var(--color-white);
}

.woocommerce-account .section-title {
    border-bottom: 1px solid var(--color-border);
    padding-bottom: var(--space-2);
}

.woocommerce-account .section-title.large .heading {
    font-size: 20px;
    font-weight: 900;
    margin: 0;
    padding: 0;
}

.woocommerce-MyAccount-content .woocommerce-order-downloads,
.woocommerce-MyAccount-content .woocommerce-order-details,
.woocommerce-MyAccount-content .woocommerce-customer-details {
    margin: 0 0 var(--space-6);
    overflow-x: scroll;
    width: 100%;
}

/* Subscription Details Table */
.woocommerce-MyAccount-content table {
    margin-bottom: var(--space-6);
}

.woocommerce-MyAccount-content table th,
.woocommerce-MyAccount-content table td {
    padding: var(--space-3) var(--space-3) var(--space-3) 0;
}

.woocommerce-MyAccount-content table th {
    font-size: 11px;
    color: var(--color-text-muted);
}

.woocommerce-MyAccount-content table td {
    font-size: 14px;
}

/* Subscription Actions Row */
.woocommerce-MyAccount-content table td .button {
    margin: 0 var(--space-2) var(--space-2) 0;
}

.woocommerce-orders-table__cell-order-number,
.woocommerce-orders-table__cell-order-status,
.download-remaining {
    text-align: left;
}

.woocommerce-orders-table__cell-order-total,
.product-total {
    text-align: right;
}

.woocommerce-orders-table__cell-order-actions {
    text-align: right;
}

.woocommerce-table .button {
    border-radius: var(--radius-sm);
    display: block;
    font-size: 10px;
}

.woocommerce-table .download-product a {
    color: var(--color-text);
    text-decoration: none;
}

.woocommerce-table .download-file .button {
    padding: var(--space-1);
}

.woocommerce-table .download-file .button:after {
    background: #f4f4f4;
    border-radius: 3px;
    color: #999 !important;
    content: "\e880";
    display: inline-block;
    font-family: 'eicons';
    margin: 0 0 0 4px;
    padding: 2px 4px;
}

.woocommerce-table .download-file .button:hover:after {
    background: var(--color-text);
    color: var(--color-white) !important;
}

.woocommerce-table .download-file .button.alt {
    background: var(--color-white);
    border: 1px solid var(--cda-color-primary-hover);
    border-radius: var(--radius-sm);
    color: var(--cda-color-primary-hover);
}

.woocommerce-table .download-file .button.alt:hover {
    background: var(--cda-color-primary-hover);
    border-color: var(--cda-color-primary-hover);
    color: var(--color-white);
}

.woocommerce-table .button.alt {
    background: var(--color-white);
    border: 1px solid #ccc;
    color: #444;
    display: block;
}

.woocommerce-table .button.alt:hover {
    background: var(--cda-color-primary-hover);
    border-color: var(--cda-color-primary-hover);
    color: var(--color-white);
}

.woocommerce-form-row input+span {
    display: block;
    font-size: 12px;
    font-variant: normal;
}

.woocommerce-table .console_wizard {
    min-width: 100px;
}

.download-remaining {
    display: none;
}

.download-expires {
    display: none;
}

/* Download Notice Banner - base styles in cda-downloads-pro.css */
.coach-dave-download-notice-banner {
    text-align: left;
}

.coach-dave-download-notice-banner ul {
    margin-bottom: 0;
    margin-top: var(--space-1);
}

/* Subscription Page */
.woocommerce-view-subscription .woocommerce-order-downloads {
    display: none;
}

.woocommerce-account .coach-dave-download-notice-banner {
    background: var(--cda-color-warning-bg);
    border: 1px solid var(--cda-color-warning-border);
    border-radius: var(--radius-default);
    color: var(--color-text);
    font-size: 14px;
}

/* Section Spacing for Subscription/Order Pages */
.woocommerce-MyAccount-content > h2 {
    margin-top: var(--space-8);
}

.woocommerce-MyAccount-content > h2:first-child,
.woocommerce-MyAccount-content > *:first-child + h2 {
    margin-top: 0;
}

/* Related Orders Section */
.woocommerce-MyAccount-content .woocommerce-orders-table {
    margin-bottom: var(--space-6);
}

/* Customer Details / Billing Address */
.woocommerce-MyAccount-content .woocommerce-columns {
    margin-top: var(--space-6);
}

.woocommerce-MyAccount-content address {
    font-style: normal;
    font-size: 14px;
    line-height: 1.6;
}
