@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* ============================================================ BASE */
.woocommerce-account { background: #f5f6f8; }
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-navigation *,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-MyAccount-content * { font-family: "Inter", sans-serif !important; }

/* ============================================================ LAYOUT */
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) {
    display: grid !important;
    grid-template-columns: 240px 1fr !important;
    gap: 28px !important;
    align-items: flex-start !important;
}

/* ============================================================ SIDEBAR */
.woocommerce-account .woocommerce-MyAccount-navigation {
    background: #fff !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06) !important;
    border-top: 3px solid #009191 !important;
    min-width: 0 !important;
    width: auto !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation-link--downloads,
.woocommerce-account .woocommerce-MyAccount-navigation-link--orders,
.woocommerce-account .woocommerce-MyAccount-navigation-link--donations { display: none !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none !important; margin: 0 !important; padding: 8px 0 !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li { padding: 0 !important; margin: 0 !important; border-bottom: 1px solid #f0f3f6 !important; background: transparent !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child { border-bottom: none !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li a { display: block !important; padding: 13px 20px !important; font-size: 14px !important; font-weight: 500 !important; color: #475569 !important; text-decoration: none !important; background: transparent !important; border-left: 3px solid transparent !important; margin: 0 !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover { background: #e6f5f5 !important; color: #182844 !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a { background: #e6f5f5 !important; color: #182844 !important; font-weight: 600 !important; border-left-color: #009191 !important; }
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a { color: #E0034B !important; border-top: 2px solid #f0f3f6 !important; }
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a:hover { background: #fef2f2 !important; color: #c0033f !important; }

/* ============================================================ CONTENT CARD */
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-MyAccount-content-wrapper { background: #fff !important; border-radius: 10px !important; box-shadow: 0 1px 4px rgba(0,0,0,0.06) !important; border: none !important; padding: 28px !important; display: block !important; }
.woocommerce-account .woocommerce-MyAccount-content p,
.woocommerce-account .woocommerce-MyAccount-content address { font-size: 14px !important; color: #475569 !important; line-height: 1.65 !important; }
.woocommerce-account .woocommerce-MyAccount-content a { color: #009191 !important; font-weight: 600 !important; text-decoration: none !important; }
.woocommerce-account .woocommerce-MyAccount-content a:hover { color: #007a7a !important; text-decoration: underline !important; }

/* Notices */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content ul.woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content ul.woocommerce-message { background: #e6f5f5 !important; border-left: 4px solid #009191 !important; border-top: none !important; border-radius: 8px !important; padding: 14px 18px !important; font-size: 14px !important; color: #182844 !important; margin-bottom: 24px !important; list-style: none !important; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error,
.woocommerce-account .woocommerce-MyAccount-content ul.woocommerce-error { background: #fef2f2 !important; border-left: 4px solid #E0034B !important; border-top: none !important; border-radius: 8px !important; padding: 14px 18px !important; font-size: 14px !important; margin-bottom: 24px !important; list-style: none !important; }
.woocommerce-account .woocommerce-MyAccount-content ul.woocommerce-info li,
.woocommerce-account .woocommerce-MyAccount-content ul.woocommerce-error li,
.woocommerce-account .woocommerce-MyAccount-content ul.woocommerce-message li { background: transparent !important; border: none !important; padding: 0 !important; margin: 0 !important; list-style: none !important; box-shadow: none !important; color: #182844 !important; font-size: 14px !important; }

/* Fix No/New mark blocks */
.woocommerce-account .woocommerce-MyAccount-content mark:not(.order-status) { background: transparent !important; color: inherit !important; padding: 0 !important; border-radius: 0 !important; display: inline !important; font-size: inherit !important; font-weight: inherit !important; text-transform: none !important; letter-spacing: normal !important; box-shadow: none !important; }

/* ============================================================ HEADINGS */
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 { font-size: 15px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.06em !important; color: #009191 !important; padding-bottom: 8px !important; border-bottom: 2px solid #e6f5f5 !important; margin-bottom: 18px !important; }

/* ============================================================ TABLES */
.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-orders-table,
.woocommerce-account .woocommerce-MyAccount-content table.shop_table { width: 100% !important; border-collapse: collapse !important; font-size: 14px !important; border: none !important; }
.woocommerce-account .woocommerce-MyAccount-content table th { font-size: 11px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.06em !important; color: #8494a7 !important; padding: 0 12px 10px !important; border-bottom: 2px solid #f0f3f6 !important; background: transparent !important; text-align: left !important; }
.woocommerce-account .woocommerce-MyAccount-content table td { padding: 14px 12px !important; border-bottom: 1px solid #f5f7fa !important; border-top: none !important; color: #475569 !important; vertical-align: middle !important; background: transparent !important; }
.woocommerce-account .woocommerce-MyAccount-content table tr:last-child td { border-bottom: none !important; }
.woocommerce-account .woocommerce-MyAccount-content table .woocommerce-orders-table__cell-order-number a { font-weight: 600 !important; color: #182844 !important; }
.woocommerce-account .woocommerce-MyAccount-content table .woocommerce-orders-table__cell-order-total { font-weight: 700 !important; color: #182844 !important; }

/* ============================================================ STATUS BADGES */
.woocommerce-account .woocommerce-MyAccount-content .order-status,
.woocommerce-account mark.order-status { display: inline-block !important; padding: 3px 10px !important; border-radius: 20px !important; font-size: 11px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; background: #f0f3f4 !important; color: #475569 !important; }
.woocommerce-account mark.order-status.status-completed, .woocommerce-account .order-status.status-completed { background: #dcfce7 !important; color: #16a34a !important; }
.woocommerce-account mark.order-status.status-processing, .woocommerce-account .order-status.status-processing { background: #fef9c3 !important; color: #a16207 !important; }
.woocommerce-account mark.order-status.status-active, .woocommerce-account .order-status.status-active { background: #e6f5f5 !important; color: #007a7a !important; }
.woocommerce-account mark.order-status.status-cancelled, .woocommerce-account mark.order-status.status-expired, .woocommerce-account .order-status.status-cancelled { background: #fee2e2 !important; color: #dc2626 !important; }
.woocommerce-account mark.order-status.status-on-hold, .woocommerce-account .order-status.status-on-hold { background: #fef3c7 !important; color: #d97706 !important; }
.woocommerce-account .order-status.status-trash, .woocommerce-account mark.order-status.status-trash { background: #f0f3f4 !important; font-size: 0 !important; position: relative !important; }
.woocommerce-account .order-status.status-trash::before, .woocommerce-account mark.order-status.status-trash::before { content: 'Inactive'; font-size: 11px !important; font-weight: 700 !important; color: #475569 !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; }

/* ============================================================ BUTTONS */
.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"] { font-family: "Inter", sans-serif !important; background: #E0034B !important; color: #fff !important; border: none !important; border-radius: 10px !important; padding: 14px 28px !important; font-size: 14px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; cursor: pointer !important; box-shadow: 0 4px 12px rgba(224,3,75,0.25) !important; text-decoration: none !important; display: inline-block !important; }
.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"]:hover,
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"]:hover { background: #c0033f !important; color: #fff !important; box-shadow: 0 6px 18px rgba(224,3,75,0.35) !important; }
.woocommerce-account .woocommerce-MyAccount-content table .button { background: transparent !important; color: #182844 !important; border: 1.5px solid #182844 !important; border-radius: 6px !important; padding: 7px 16px !important; font-size: 12px !important; font-weight: 600 !important; box-shadow: none !important; letter-spacing: 0 !important; text-transform: none !important; }
.woocommerce-account .woocommerce-MyAccount-content table .button:hover { background: #009191 !important; color: #fff !important; border-color: #009191 !important; box-shadow: none !important; }
.woocommerce-account .woocommerce-MyAccount-content .cancel { background: transparent !important; color: #E0034B !important; box-shadow: none !important; border: 1px solid #E0034B !important; }
.woocommerce-account .woocommerce-MyAccount-content .cancel:hover { background: #fef2f2 !important; box-shadow: none !important; }

/* ============================================================ FORM FIELDS */
.woocommerce-account .woocommerce-MyAccount-content input[type="text"],
.woocommerce-account .woocommerce-MyAccount-content input[type="email"],
.woocommerce-account .woocommerce-MyAccount-content input[type="password"],
.woocommerce-account .woocommerce-MyAccount-content input[type="tel"],
.woocommerce-account .woocommerce-MyAccount-content select,
.woocommerce-account .woocommerce-MyAccount-content textarea { font-family: "Inter", sans-serif !important; font-size: 15px !important; color: #182844 !important; background: #f5f6f8 !important; border: none !important; border-radius: 8px !important; padding: 13px 16px !important; box-shadow: 0 1px 4px rgba(0,0,0,0.06) !important; outline: none !important; width: 100% !important; box-sizing: border-box !important; }
.woocommerce-account .woocommerce-MyAccount-content input:focus,
.woocommerce-account .woocommerce-MyAccount-content select:focus,
.woocommerce-account .woocommerce-MyAccount-content textarea:focus { box-shadow: 0 0 0 2px #009191, 0 1px 4px rgba(0,0,0,0.06) !important; }
.woocommerce-account .woocommerce-MyAccount-content label { font-family: "Inter", sans-serif !important; font-size: 12px !important; font-weight: 600 !important; color: #475569 !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; margin-bottom: 6px !important; display: block !important; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row { margin-bottom: 16px !important; }

/* ============================================================ EDIT ADDRESS FORM — 2 COLUMN LAYOUT */
.woocommerce-account .woocommerce-address-fields__field-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 16px 20px !important;
    align-items: flex-start !important;
}
.woocommerce-account .woocommerce-address-fields__field-wrapper > p {
    margin: 0 !important;
    float: none !important;
    clear: none !important;
    box-sizing: border-box !important;
}
/* Field order and widths */
.woocommerce-account #billing_first_name_field { order: 1 !important; width: calc(50% - 10px) !important; }
.woocommerce-account #billing_last_name_field  { order: 2 !important; width: calc(50% - 10px) !important; }
.woocommerce-account #billing_email_field      { order: 3 !important; width: 100% !important; }
.woocommerce-account #billing_phone_field      { order: 4 !important; width: 100% !important; }
.woocommerce-account #billing_address_1_field  { order: 5 !important; width: 100% !important; }
.woocommerce-account #billing_address_2_field  { order: 6 !important; width: 100% !important; }
.woocommerce-account #billing_city_field       { order: 7 !important; width: calc(50% - 10px) !important; }
.woocommerce-account #billing_postcode_field   { order: 8 !important; width: calc(50% - 10px) !important; }
.woocommerce-account #billing_state_field      { order: 9 !important; width: 100% !important; }
.woocommerce-account #billing_country_field    { order: 10 !important; width: 100% !important; }
.woocommerce-account #billing_company_field    { display: none !important; }

/* Hide subscription renewal checkbox + Note on edit billing address page */
.woocommerce-account input[name="update_all_subscriptions_billing"],
.woocommerce-account input[name="update_all_subscriptions_billing_contact"],
.woocommerce-account p:has(input[name="update_all_subscriptions_billing"]),
.woocommerce-account p:has(input[name="update_all_subscriptions_billing_contact"]),
.woocommerce-account label:has(input[name="update_all_subscriptions_billing"]),
.woocommerce-account label:has(input[name="update_all_subscriptions_billing_contact"]) { display: none !important; }
.woocommerce-account p:has(input[name="update_all_subscriptions_billing"]) + p,
.woocommerce-account p:has(input[name="update_all_subscriptions_billing_contact"]) + p { display: none !important; }

/* Hide WC Subscriptions billing renewal checkbox in account details */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row:has(input[name="update_all_subscriptions_billing_contact"]),
.woocommerce-account .woocommerce-MyAccount-content p:has(input[name="update_all_subscriptions_billing_contact"]) { display: none !important; }

/* ============================================================ ADDRESSES PAGE */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 20px !important; align-items: flex-start !important; margin-top: 0 !important; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address { background: #f5f6f8 !important; border-radius: 8px !important; padding: 20px !important; border: 1px solid #eaecf0 !important; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3 { border-bottom: none !important; margin-bottom: 10px !important; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address { font-size: 14px !important; line-height: 1.7 !important; color: #475569 !important; }

/* ============================================================ PAYMENT METHODS */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods { border: none !important; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethod { background: #f5f6f8 !important; border: 1px solid #eaecf0 !important; border-radius: 8px !important; padding: 14px 16px !important; margin-bottom: 10px !important; }

/* ============================================================ RESPONSIVE */
@media (max-width: 767px) {
    .woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: 1fr !important; gap: 16px !important; }
    .woocommerce-account .woocommerce-MyAccount-content, .woocommerce-account .woocommerce-MyAccount-content-wrapper { padding: 20px !important; }
    .woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses { grid-template-columns: 1fr !important; }
    .woocommerce-account #billing_first_name_field,
    .woocommerce-account #billing_last_name_field,
    .woocommerce-account #billing_city_field,
    .woocommerce-account #billing_postcode_field { width: 100% !important; }
}

/* Fix double-padding — content-wrapper sits inside content, don't pad both */
.woocommerce-account .woocommerce-MyAccount-content-wrapper {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

/* Fix flex item sizing — use flex shorthand to prevent items growing/shrinking */
.woocommerce-account .woocommerce-address-fields__field-wrapper > p {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}
.woocommerce-account #billing_first_name_field,
.woocommerce-account #billing_last_name_field,
.woocommerce-account #billing_city_field,
.woocommerce-account #billing_postcode_field {
    flex: 0 0 calc(50% - 10px) !important;
    width: calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
}

/* Fix double-padding — content-wrapper sits inside content */
.woocommerce-account .woocommerce-MyAccount-content-wrapper {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

/* Force half-width fields to sit side by side */
.woocommerce-account .woocommerce-address-fields__field-wrapper > p {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}
.woocommerce-account #billing_first_name_field,
.woocommerce-account #billing_last_name_field,
.woocommerce-account #billing_city_field,
.woocommerce-account #billing_postcode_field {
    flex: 0 0 calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
}

/* === ADDRESS FORM 2-COLUMN FIX === */
.woocommerce-account .woocommerce-address-fields__field-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 16px 20px !important;
}

.woocommerce-account #billing_first_name_field,
.woocommerce-account #billing_last_name_field,
.woocommerce-account #billing_city_field,
.woocommerce-account #billing_postcode_field {
    flex: 0 0 calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    clear: none !important;
}

.woocommerce-account #billing_email_field,
.woocommerce-account #billing_phone_field,
.woocommerce-account #billing_address_1_field,
.woocommerce-account #billing_address_2_field,
.woocommerce-account #billing_country_field,
.woocommerce-account #billing_state_field,
.woocommerce-account #billing_company_field {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper input.input-text,
.woocommerce-account .woocommerce-address-fields__field-wrapper select {
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Ensure inner inputs stay within their column */
.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row input.input-text,
.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row select {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.woocommerce-account #billing_last_name_field,
.woocommerce-account #billing_postcode_field {
    clear: none !important;
    float: none !important;
}

/* === ADDRESS FORM FIX v4 === */
.woocommerce-account .woocommerce-address-fields__field-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
    padding: 0 !important;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    margin-bottom: 0 !important;
    margin-right: 0 !important;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row input.input-text,
.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row select,
.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row .select2-container {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.woocommerce-account #billing_first_name_field,
.woocommerce-account #billing_last_name_field,
.woocommerce-account #billing_city_field,
.woocommerce-account #billing_postcode_field {
    flex: 1 1 calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
    min-width: 0 !important;
    clear: none !important;
    float: none !important;
}

.woocommerce-account #billing_email_field,
.woocommerce-account #billing_phone_field,
.woocommerce-account #billing_address_1_field,
.woocommerce-account #billing_address_2_field,
.woocommerce-account #billing_country_field,
.woocommerce-account #billing_state_field,
.woocommerce-account #billing_company_field {
    flex: 0 0 100% !important;
    max-width: 100% !important;
}

/* === INTERNAL ALIGNMENT FIX v5 === */

/* Force the wrapper inside the form-row to be full width */
.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row .woocommerce-input-wrapper {
    width: 100% !important;
    display: block !important;
}

/* Ensure labels don't have a fixed width or float pushing the input */
.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row label {
    display: block !important;
    width: 100% !important;
    margin-bottom: 5px !important;
    float: none !important;
    text-align: left !important;
}

/* Fix the Email/Phone/Street rows which are still looking "short" */
.woocommerce-account #billing_email_field,
.woocommerce-account #billing_phone_field,
.woocommerce-account #billing_address_1_field,
.woocommerce-account #billing_address_2_field,
.woocommerce-account #billing_country_field,
.woocommerce-account #billing_state_field,
.woocommerce-account #billing_company_field {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
}

/* Remove any potential negative margins or weird padding from the wrapper */
.woocommerce-address-fields__field-wrapper {
    margin: 0 !important;
    width: 100% !important;
}
