/* Account-only scope: does not alter checkout, cart, product or gateway UI. */
body.woocommerce-account { --sf-lime: #c3e82b; }
.woocommerce-account .entry-content > .woocommerce { color: #181818; }
.sf-account-intro { padding: clamp(24px,5vw,48px); background:#0b0b0b; color:#fff; border-radius:20px; margin-bottom:28px; }
.sf-account-eyebrow { color:var(--sf-lime); font-size:12px; font-weight:800; letter-spacing:.14em; }
.sf-account-intro h2 { color:#fff; font-family:var(--font-heading,Montserrat,sans-serif); font-size:clamp(26px,4vw,44px); line-height:1.15; margin:16px 0; }
.sf-account-intro p { color:#ddd; max-width:600px; margin:0; }
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) { display:grid; grid-template-columns:240px minmax(0,1fr); gap:28px; align-items:start; }
/* WooCommerce clearfix pseudo-elements otherwise become extra grid cells. */
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation)::before,
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation)::after { content:none; display:none; }
.woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation { grid-column:1; }
.woocommerce-account .woocommerce > .woocommerce-MyAccount-content { grid-column:2; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper { grid-column:1 / -1; }
.woocommerce-account .woocommerce-MyAccount-navigation { float:none; width:100%; background:#0b0b0b; padding:14px; border-radius:18px; box-sizing:border-box; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style:none !important; padding:0 !important; margin:0 !important; display:grid; gap:6px; }
.woocommerce-account .woocommerce-MyAccount-navigation li { list-style:none !important; margin:0; padding:0; }
.woocommerce-account .woocommerce-MyAccount-navigation li::marker { content:''; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display:block; padding:13px 16px; min-height:44px; box-sizing:border-box; color:#fff; border-radius:10px; text-decoration:none; font-size:14px; font-weight:700; overflow-wrap:anywhere; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover { color:#0b0b0b; background:var(--sf-lime); }
.woocommerce-account .woocommerce-MyAccount-content { float:none; width:100%; min-width:0; padding:clamp(18px,3vw,32px); border:1px solid #dedede; border-radius:18px; background:#fff; box-sizing:border-box; overflow-wrap:anywhere; }
.woocommerce-account #customer_login { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.woocommerce-account #customer_login::before,.woocommerce-account #customer_login::after { display:none; }
.woocommerce-account #customer_login > div { float:none; width:100%; min-width:0; }
.woocommerce-account #customer_login h2 { font-size:24px; font-weight:900; color:#111; }
.woocommerce-account form.login,.woocommerce-account form.register { border:1px solid #dedede; border-radius:18px; padding:clamp(20px,3vw,32px); margin:16px 0; background:#fff; }
.woocommerce-account form .form-row { padding:0; margin-bottom:18px; }
.woocommerce-account form label { display:block; color:#252525; font-weight:600; font-size:14px; margin-bottom:6px; }
.woocommerce-account form input.input-text,.woocommerce-account form input[type=email],.woocommerce-account form input[type=password],.woocommerce-account form input[type=text],.woocommerce-account form select,.woocommerce-account form textarea { width:100%; min-height:48px; box-sizing:border-box; padding:12px; border:1px solid #a1a1aa; border-radius:8px; background:#fff; color:#111; font-size:16px; }
.woocommerce-account .password-input { display:block; position:relative; }
.woocommerce-account .password-input input { padding-right:48px !important; }
.woocommerce-account .button,.woocommerce-account button.button,.woocommerce-account input.button { background:#111; color:#fff; border:0; border-radius:8px; padding:13px 20px; min-height:46px; font-weight:800; text-decoration:none; display:inline-block; white-space:normal; }
.woocommerce-account .button:hover { background:var(--sf-lime); color:#111; }
.woocommerce-account a:focus-visible,.woocommerce-account input:focus-visible,.woocommerce-account button:focus-visible,.woocommerce-account select:focus-visible { outline:3px solid #779000; outline-offset:3px; }
.woocommerce-account .woocommerce-MyAccount-content a:not(.button),.woocommerce-account .lost_password a { color:#222; text-decoration:underline; text-underline-offset:3px; }
.sf-account-help,.woocommerce-account .woocommerce-privacy-policy-text { font-size:13px; line-height:1.6; color:#52525b; }
.woocommerce-account .woocommerce-message,.woocommerce-account .woocommerce-info,.woocommerce-account .woocommerce-error { background:#f6f7f1; color:#111; border-top:3px solid #779000; border-radius:8px; padding:18px 20px 18px 44px; margin-bottom:22px; }
.woocommerce-account .woocommerce-error { border-color:#b42318; }
.woocommerce-account .woocommerce-Addresses { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.woocommerce-account .woocommerce-Addresses::before,.woocommerce-account .woocommerce-Addresses::after { display:none; }
.woocommerce-account .woocommerce-Address { width:100%; float:none; border:1px solid #ddd; border-radius:12px; padding:18px; box-sizing:border-box; }
.woocommerce-account .woocommerce-Address h2,.woocommerce-account .woocommerce-Address h3 { font-size:20px; }
.woocommerce-account table.shop_table { width:100%; border-collapse:collapse; font-size:14px; }
.woocommerce-account table.shop_table th,.woocommerce-account table.shop_table td { padding:12px 8px; border-bottom:1px solid #ddd; text-align:left; }
@media(max-width:767px) {
 .woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation),.woocommerce-account #customer_login,.woocommerce-account .woocommerce-Addresses { grid-template-columns:minmax(0,1fr); }
 .woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation,
 .woocommerce-account .woocommerce > .woocommerce-MyAccount-content { grid-column:1; }
 .woocommerce-account .woocommerce-MyAccount-navigation ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .woocommerce-account .woocommerce-MyAccount-navigation a { font-size:13px; padding:12px; }
 .woocommerce-account form .form-row-first,.woocommerce-account form .form-row-last { float:none; width:100%; }
 .woocommerce-account table.shop_table_responsive thead { display:none; }
 .woocommerce-account table.shop_table_responsive tr { display:block; padding:12px 0; border-bottom:1px solid #ddd; }
 .woocommerce-account table.shop_table_responsive td { display:block; text-align:right; border:0; min-height:26px; }
 .woocommerce-account table.shop_table_responsive td::before { content:attr(data-title) ': '; float:left; font-weight:700; padding-right:12px; }
 .woocommerce-account table.shop_table_responsive td.woocommerce-orders-table__cell-order-actions::before { content:''; }
}
/* v7.4: Account dashboard and native address-card corrections. */
.woocommerce-account .woocommerce-MyAccount-content { padding:clamp(20px,3vw,32px); }
.woocommerce-account .woocommerce-MyAccount-content > :first-child { margin-top:0; }
.sf-dashboard-welcome { border-bottom:1px solid #e5e5e5; padding-bottom:24px; margin-bottom:24px; }
.sf-dashboard-welcome .sf-account-eyebrow { color:#566800; }
.sf-dashboard-welcome h2 { font-size:clamp(23px,3vw,32px); line-height:1.25; margin:12px 0; font-weight:800; color:#111; }
.sf-dashboard-welcome p { font-size:15px; color:#606066; margin:0; }
.sf-dashboard-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.woocommerce-account .woocommerce-MyAccount-content .sf-dashboard-card:not(.button) { display:flex; flex-direction:column; gap:10px; border:1px solid #dedede; border-radius:12px; padding:20px; text-decoration:none; background:#fafafa; color:#111; }
.sf-dashboard-card strong { font-size:16px; }
.sf-dashboard-card > span:not(.sf-card-arrow) { font-size:13px; line-height:1.6; color:#606066; }
.sf-card-arrow { margin-top:auto; color:#111; font-size:24px; }
.woocommerce-account .sf-dashboard-card:hover { background:#f4f9df; border-color:#a2bf20; }
/* Native .col2-set .col-1/.col-2 widths must be reset, not only the card base. */
.woocommerce-account .woocommerce-Addresses.col2-set { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.woocommerce-account .woocommerce-Addresses.col2-set > .woocommerce-Address,
.woocommerce-account .woocommerce-Address.col-1,
.woocommerce-account .woocommerce-Address.col-2 { float:none !important; width:100% !important; max-width:none; min-width:0; margin:0; }
.woocommerce-account .woocommerce-Address .woocommerce-Address-title { display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding-bottom:18px; border-bottom:1px solid #e5e5e5; margin-bottom:18px; }
.woocommerce-account .woocommerce-Address .woocommerce-Address-title::before,
.woocommerce-account .woocommerce-Address .woocommerce-Address-title::after { display:none; }
.woocommerce-account .woocommerce-Address .woocommerce-Address-title h2,
.woocommerce-account .woocommerce-Address .woocommerce-Address-title h3 { float:none; margin:0; line-height:1.3; font-size:20px; }
.woocommerce-account .woocommerce-Address .woocommerce-Address-title a.edit { float:none; display:inline-flex; padding:8px 12px; border-radius:7px; background:#f0f4df; color:#222; font-size:13px; font-weight:700; text-decoration:none; }
.woocommerce-account .woocommerce-Address address { font-style:normal; line-height:1.8; font-size:14px; color:#52525b; overflow-wrap:anywhere; }
@media (max-width:1050px) { .sf-dashboard-actions { grid-template-columns:1fr; } }
@media (max-width:767px) { .woocommerce-account .woocommerce-Addresses.col2-set { grid-template-columns:1fr; } }
