/**
 * Olanzu — My Account Page
 */

/* ── Screen reader only (visually hidden labels) ─────────────────────────── */
.olz-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(100%);
  white-space: nowrap;
  border: 0;
}

/* ── Page wrapper ────────────────────────────────────────────────────────── */
.olz-account-main {
  background: var(--olz-gray-50, #F9FAFB);
  min-height: 60vh;
}

.olz-account-wrap {
  padding-top: 2.5rem;
  padding-bottom: 4rem;
}

/* ── Logged-in: 2-column grid ────────────────────────────────────────────── */
.olz-account-grid {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 2rem;
  align-items: start;
}

@media (max-width: 768px) {
  .olz-account-grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
}

/* ── Sidebar ─────────────────────────────────────────────────────────────── */
.olz-account-sidebar {
  position: sticky;
  top: 100px;
}

@media (max-width: 768px) {
  .olz-account-sidebar { position: static; }
}

/* ── Nav card ────────────────────────────────────────────────────────────── */
.olz-account-nav {
  background: #fff;
  border: 1px solid var(--olz-gray-200, #E5E7EB);
  border-radius: var(--radius, 8px);
  overflow: hidden;
}

/* User info header */
.olz-account-nav__user {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 1.25rem 1rem;
  border-bottom: 1px solid var(--olz-gray-100, #F3F4F6);
  background: var(--olz-gray-50, #F9FAFB);
}

.olz-account-nav__avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--olz-red, #DC2626);
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.olz-account-nav__name {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--olz-black, #111827);
  line-height: 1.3;
}

.olz-account-nav__email {
  font-size: 0.6875rem;
  color: var(--olz-gray-400, #9CA3AF);
  margin-top: 1px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 160px;
}

/* Nav list */
.olz-account-nav__list {
  list-style: none;
  margin: 0;
  padding: 0.5rem 0;
}

.olz-account-nav__list li {
  margin: 0;
}

.olz-account-nav__link {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.625rem 1rem;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--olz-gray-700, #374151);
  text-decoration: none;
  transition: background 0.12s, color 0.12s;
  font-family: var(--font-sans);
}

.olz-account-nav__link:hover {
  background: var(--olz-gray-50, #F9FAFB);
  color: var(--olz-black, #111827);
}

.olz-account-nav__list li.is-active .olz-account-nav__link {
  background: #FEF2F2;
  color: var(--olz-red, #DC2626);
  font-weight: 700;
}

.olz-account-nav__icon {
  display: flex;
  flex-shrink: 0;
  color: inherit;
}

.olz-account-nav__link--logout {
  color: var(--olz-gray-400, #9CA3AF);
  margin-top: 0.25rem;
  border-top: 1px solid var(--olz-gray-100, #F3F4F6);
}

.olz-account-nav__link--logout:hover {
  color: var(--olz-red, #DC2626);
  background: #FEF2F2;
}


/* ── Right content area ──────────────────────────────────────────────────── */
.olz-account-content {
  min-width: 0;
}

.olz-account-content .woocommerce-MyAccount-content {
  background: #fff;
  border: 1px solid var(--olz-gray-200, #E5E7EB);
  border-radius: var(--radius, 8px);
  padding: 1.75rem 2rem;
  font-family: var(--font-sans);
  font-size: 0.9rem;
  color: var(--olz-gray-700, #374151);
}

/* Section title (e.g. "Orders", "Addresses") */
.olz-account-content .woocommerce-MyAccount-content h2,
.olz-account-content .woocommerce-MyAccount-content h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--olz-black, #111827);
  margin: 0 0 1.25rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--olz-gray-100, #F3F4F6);
}

/* Dashboard greeting */
.olz-account-content .woocommerce-MyAccount-content p {
  margin: 0 0 1rem;
  line-height: 1.65;
}

.olz-account-content .woocommerce-MyAccount-content a {
  color: var(--olz-red, #DC2626);
  text-decoration: none;
}

.olz-account-content .woocommerce-MyAccount-content a:hover {
  text-decoration: underline;
}


/* ── Orders table ────────────────────────────────────────────────────────── */
.olz-account-content .woocommerce-orders-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.8125rem;
}

.olz-account-content .woocommerce-orders-table thead th {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--olz-gray-400, #9CA3AF);
  border-bottom: 1px solid var(--olz-gray-100, #F3F4F6);
  padding: 0 0.75rem 0.75rem;
  text-align: left;
}

.olz-account-content .woocommerce-orders-table tbody td {
  padding: 0.875rem 0.75rem;
  border-bottom: 1px solid var(--olz-gray-100, #F3F4F6);
  color: var(--olz-gray-700, #374151);
}

.olz-account-content .woocommerce-orders-table tbody tr:last-child td {
  border-bottom: none;
}

.olz-account-content .woocommerce-orders-table .woocommerce-button,
.olz-account-content .woocommerce-orders-table .button {
  font-size: 0.75rem;
  padding: 5px 12px;
  border: 1.5px solid var(--olz-gray-200, #E5E7EB);
  border-radius: var(--radius, 8px);
  background: #fff;
  color: var(--olz-gray-700, #374151);
  font-family: var(--font-sans);
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  transition: border-color 0.15s;
}

.olz-account-content .woocommerce-orders-table .woocommerce-button:hover,
.olz-account-content .woocommerce-orders-table .button:hover {
  border-color: var(--olz-gray-400, #9CA3AF);
  color: var(--olz-black, #111827);
}

/* Order status badges */
.olz-account-content .wc-item-meta,
.olz-account-content mark.order-status {
  background: var(--olz-gray-100, #F3F4F6);
  color: var(--olz-gray-700, #374151);
  font-size: 0.6875rem;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 99px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}


/* ── Forms (edit account, edit address) ──────────────────────────────────── */
.olz-account-content .woocommerce-EditAccountForm,
.olz-account-content .woocommerce-address-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.625rem 0.75rem;
}

/* Full-width rows */
.olz-account-content .woocommerce-EditAccountForm .form-row-wide,
.olz-account-content .woocommerce-EditAccountForm fieldset,
.olz-account-content .woocommerce-EditAccountForm > p:last-of-type,
.olz-account-content .woocommerce-EditAccountForm .clear {
  grid-column: 1 / -1;
}

/* Hide WC clear divs */
.olz-account-content .woocommerce-EditAccountForm .clear {
  display: none;
}

.olz-account-content .woocommerce-form-row,
.olz-account-content .form-row {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0;
  padding: 0;
}

.olz-account-content .woocommerce-form-row label,
.olz-account-content .form-row label {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--olz-gray-600, #4B5563);
  font-family: var(--font-sans);
}

.olz-account-content .woocommerce-form-row input,
.olz-account-content .form-row input,
.olz-account-content .woocommerce-form-row select,
.olz-account-content .form-row select,
.olz-account-content .woocommerce-form-row textarea,
.olz-account-content .form-row textarea {
  width: 100%;
  border: 1px solid var(--olz-gray-200, #E5E7EB) !important;
  border-radius: var(--radius, 8px) !important;
  padding: 9px 12px !important;
  font-size: 0.875rem !important;
  font-family: var(--font-sans) !important;
  color: var(--olz-black, #111827) !important;
  background: #fff !important;
  outline: none !important;
  box-shadow: none !important;
  transition: border-color 0.15s;
}

.olz-account-content .woocommerce-form-row input:focus,
.olz-account-content .form-row input:focus,
.olz-account-content .woocommerce-form-row select:focus,
.olz-account-content .form-row select:focus {
  border-color: var(--olz-red, #DC2626) !important;
}

/* Display name hint text */
.olz-account-content #account_display_name_description {
  font-size: 0.6875rem;
  color: var(--olz-gray-400, #9CA3AF);
  font-style: normal;
  margin-top: 3px;
  display: block;
  font-family: var(--font-sans);
}

/* Password fieldset — no border, same spacing as other rows */
.olz-account-content fieldset {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  width: 100%;
}

.olz-account-content fieldset legend {
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--olz-gray-500, #6B7280);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0;
  margin-bottom: 0.25rem;
  font-family: var(--font-sans);
  float: left;
  width: 100%;
}

/* Submit button */
.olz-account-content .woocommerce-Button,
.olz-account-content button[type="submit"],
.olz-account-content .button[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.625rem 1.5rem;
  background: var(--olz-red, #DC2626);
  color: #fff;
  border: none !important;
  border-radius: var(--radius, 8px) !important;
  font-size: 0.875rem;
  font-weight: 700;
  font-family: var(--font-sans);
  cursor: pointer;
  transition: background 0.15s;
  text-decoration: none;
  box-shadow: none !important;
}

.olz-account-content .woocommerce-Button:hover,
.olz-account-content button[type="submit"]:hover,
.olz-account-content .button[type="submit"]:hover {
  background: #b91c1c;
  color: #fff;
}

@media (max-width: 480px) {
  .olz-account-content .woocommerce-EditAccountForm {
    grid-template-columns: 1fr;
  }
}


/* ════════════════════════════════════════════════════════════════════════════
   ORDER DETAILS (view-order)
   ════════════════════════════════════════════════════════════════════════════ */

/* Status summary line */
.olz-account-content .woocommerce-order-details-status,
.olz-account-content > p:first-child {
  font-size: 0.875rem;
  color: var(--olz-gray-700, #374151);
  margin-bottom: 1.25rem;
  line-height: 1.6;
}

.olz-account-content mark.order-number,
.olz-account-content mark.order-date {
  background: none;
  font-weight: 700;
  color: var(--olz-black, #111827);
}

.olz-account-content mark.order-status {
  background: var(--olz-gray-100, #F3F4F6);
  color: var(--olz-gray-700, #374151);
  font-size: 0.6875rem;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 99px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

/* Order details table */
.olz-account-content .woocommerce-order-details,
.olz-account-content .woocommerce-customer-details {
  margin-top: 1.5rem;
}

.olz-account-content .woocommerce-order-details__title,
.olz-account-content .woocommerce-column__title {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--olz-gray-500, #6B7280);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin: 0 0 0.75rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--olz-gray-100, #F3F4F6);
}

.olz-account-content .woocommerce-table--order-details {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.875rem;
}

.olz-account-content .woocommerce-table--order-details thead th {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--olz-gray-400, #9CA3AF);
  border-bottom: 1px solid var(--olz-gray-100, #F3F4F6);
  padding: 0 0 0.625rem;
  text-align: left;
}

.olz-account-content .woocommerce-table--order-details thead th:last-child {
  text-align: right;
}

.olz-account-content .woocommerce-table--order-details tbody td {
  padding: 0.75rem 0;
  border-bottom: 1px solid var(--olz-gray-100, #F3F4F6);
  color: var(--olz-gray-700, #374151);
  vertical-align: top;
}

.olz-account-content .woocommerce-table--order-details tbody tr:last-child td {
  border-bottom: none;
}

.olz-account-content .woocommerce-table--order-details .product-name {
  font-weight: 600;
  color: var(--olz-black, #111827);
}

.olz-account-content .woocommerce-table--order-details .product-total {
  text-align: right;
  font-weight: 700;
  white-space: nowrap;
}

/* Order totals */
.olz-account-content .woocommerce-table--order-details tfoot th,
.olz-account-content .woocommerce-table--order-details tfoot td {
  padding: 0.5rem 0;
  font-size: 0.875rem;
  color: var(--olz-gray-700, #374151);
  border-top: 1px solid var(--olz-gray-100, #F3F4F6);
}

.olz-account-content .woocommerce-table--order-details tfoot tr:last-child th,
.olz-account-content .woocommerce-table--order-details tfoot tr:last-child td {
  font-size: 1rem;
  font-weight: 800;
  color: var(--olz-black, #111827);
}

.olz-account-content .woocommerce-table--order-details tfoot td {
  text-align: right;
}

/* Customer billing/shipping address section */
.olz-account-content .woocommerce-customer-details .col2-set {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
  margin-top: 0.75rem;
}

.olz-account-content .woocommerce-customer-details address {
  font-size: 0.875rem;
  font-style: normal;
  color: var(--olz-gray-700, #374151);
  line-height: 1.7;
  background: var(--olz-gray-50, #F9FAFB);
  border: 1px solid var(--olz-gray-200, #E5E7EB);
  border-radius: var(--radius, 8px);
  padding: 1rem 1.25rem;
}

@media (max-width: 600px) {
  .olz-account-content .woocommerce-customer-details .col2-set {
    grid-template-columns: 1fr;
  }
}

/* Order updates / notes */
.olz-account-content .woocommerce-OrderUpdates {
  list-style: none;
  margin: 0.75rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}

.olz-account-content .woocommerce-OrderUpdate {
  background: var(--olz-gray-50, #F9FAFB);
  border: 1px solid var(--olz-gray-200, #E5E7EB);
  border-radius: var(--radius, 8px);
  padding: 0.875rem 1rem;
}

.olz-account-content .woocommerce-OrderUpdate-meta {
  font-size: 0.6875rem;
  color: var(--olz-gray-400, #9CA3AF);
  margin: 0 0 0.25rem;
}

.olz-account-content .woocommerce-OrderUpdate-description p {
  font-size: 0.875rem;
  color: var(--olz-gray-700, #374151);
  margin: 0;
}


/* ════════════════════════════════════════════════════════════════════════════
   ADDRESSES (my-address + form-edit-address)
   ════════════════════════════════════════════════════════════════════════════ */

.olz-account-content .woocommerce-Addresses {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
  margin-top: 0.75rem;
}

@media (max-width: 600px) {
  .olz-account-content .woocommerce-Addresses {
    grid-template-columns: 1fr;
  }
}

.olz-account-content .woocommerce-Address {
  background: var(--olz-gray-50, #F9FAFB);
  border: 1px solid var(--olz-gray-200, #E5E7EB);
  border-radius: var(--radius, 8px);
  padding: 1.25rem;
}

.olz-account-content .woocommerce-Address-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.75rem;
  padding-bottom: 0.625rem;
  border-bottom: 1px solid var(--olz-gray-200, #E5E7EB);
}

.olz-account-content .woocommerce-Address-title h2 {
  font-size: 0.8125rem !important;
  font-weight: 700 !important;
  color: var(--olz-black, #111827) !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  text-transform: none;
  letter-spacing: 0;
}

.olz-account-content .woocommerce-Address-title .edit {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--olz-red, #DC2626);
  text-decoration: none;
}

.olz-account-content .woocommerce-Address-title .edit:hover {
  text-decoration: underline;
}

.olz-account-content .woocommerce-Address address {
  font-size: 0.875rem;
  font-style: normal;
  color: var(--olz-gray-600, #4B5563);
  line-height: 1.7;
}

/* Edit address form */
.olz-account-content .woocommerce-address-fields {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.olz-account-content .woocommerce-address-fields__field-wrapper {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 0.625rem 0.75rem;
}

/* Full-width fields */
.olz-account-content .woocommerce-address-fields__field-wrapper .form-row-wide,
.olz-account-content .woocommerce-address-fields__field-wrapper .form-row-first,
.olz-account-content .woocommerce-address-fields__field-wrapper .form-row-last {
  grid-column: span 3;
}

.olz-account-content .woocommerce-address-fields__field-wrapper .form-row-wide {
  grid-column: 1 / -1;
}

/* Reorder: first/last name → email → rest (country, street, city...) */
.olz-account-content .woocommerce-address-fields__field-wrapper #billing_first_name_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_first_name_field { order: 1; }

.olz-account-content .woocommerce-address-fields__field-wrapper #billing_last_name_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_last_name_field  { order: 2; }

.olz-account-content .woocommerce-address-fields__field-wrapper #billing_email_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_email_field {
  order: 3;
  grid-column: 1 / -1;
}

.olz-account-content .woocommerce-address-fields__field-wrapper #billing_country_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_country_field { order: 4; grid-column: 1 / -1; }

.olz-account-content .woocommerce-address-fields__field-wrapper #billing_address_1_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_address_1_field { order: 5; }

.olz-account-content .woocommerce-address-fields__field-wrapper #billing_address_2_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_address_2_field { order: 6; }

.olz-account-content .woocommerce-address-fields__field-wrapper #billing_city_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_city_field { order: 7; }

.olz-account-content .woocommerce-address-fields__field-wrapper #billing_state_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_state_field { order: 8; }

.olz-account-content .woocommerce-address-fields__field-wrapper #billing_postcode_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_postcode_field { order: 9; }

.olz-account-content .woocommerce-address-fields__field-wrapper #billing_phone_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_phone_field { order: 10; grid-column: 1 / -1; }

/* Town/City + State + ZIP — equal 3 cols */
.olz-account-content .woocommerce-address-fields__field-wrapper #billing_city_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_city_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #billing_state_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_state_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #billing_postcode_field,
.olz-account-content .woocommerce-address-fields__field-wrapper #shipping_postcode_field {
  grid-column: span 2 !important;
  width: 100% !important;
  float: none !important;
  clear: none !important;
}

/* Save address button row — full width, below the grid */
.olz-account-content .woocommerce-address-fields > p:last-of-type {
  margin: 0.25rem 0 0;
}

.olz-account-content .woocommerce-address-fields > p:last-of-type .button {
  display: inline-flex !important;
  padding: 0.625rem 1.5rem !important;
  background: var(--olz-red, #DC2626) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--radius, 8px) !important;
  font-size: 0.875rem !important;
  font-weight: 700 !important;
  font-family: var(--font-sans) !important;
  cursor: pointer;
  transition: background 0.15s;
  box-shadow: none !important;
}

.olz-account-content .woocommerce-address-fields > p:last-of-type .button:hover {
  background: #b91c1c !important;
}

@media (max-width: 480px) {
  .olz-account-content .woocommerce-address-fields__field-wrapper {
    grid-template-columns: 1fr;
  }
  .olz-account-content .woocommerce-address-fields__field-wrapper .form-row-first,
  .olz-account-content .woocommerce-address-fields__field-wrapper .form-row-last,
  .olz-account-content .woocommerce-address-fields__field-wrapper #billing_city_field,
  .olz-account-content .woocommerce-address-fields__field-wrapper #shipping_city_field,
  .olz-account-content .woocommerce-address-fields__field-wrapper #billing_state_field,
  .olz-account-content .woocommerce-address-fields__field-wrapper #shipping_state_field,
  .olz-account-content .woocommerce-address-fields__field-wrapper #billing_postcode_field,
  .olz-account-content .woocommerce-address-fields__field-wrapper #shipping_postcode_field {
    grid-column: 1 / -1 !important;
  }
}

/* ── Select2 — match input height + border ───────────────────────────────── */
.olz-account-content .select2-container .select2-selection--single {
  height: 38px !important;
  border: 1px solid var(--olz-gray-200, #E5E7EB) !important;
  border-radius: var(--radius, 8px) !important;
  background: #fff !important;
  box-shadow: none !important;
  outline: none !important;
}

.olz-account-content .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 38px !important;
  padding-left: 12px !important;
  padding-right: 32px !important;
  font-size: 0.875rem !important;
  font-family: var(--font-sans) !important;
  color: var(--olz-black, #111827) !important;
}

.olz-account-content .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 36px !important;
  right: 8px !important;
}

.olz-account-content .select2-container--default.select2-container--open .select2-selection--single,
.olz-account-content .select2-container--default.select2-container--focus .select2-selection--single {
  border-color: var(--olz-red, #DC2626) !important;
}

/* Select2 dropdown list */
.select2-container--default .select2-results__option--highlighted {
  background-color: var(--olz-red, #DC2626) !important;
}


/* ════════════════════════════════════════════════════════════════════════════
   LOST PASSWORD + RESET PASSWORD
   ════════════════════════════════════════════════════════════════════════════ */

.olz-account-content .woocommerce-ResetPassword {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  max-width: 420px;
}

.olz-account-content .woocommerce-ResetPassword > p:first-of-type {
  font-size: 0.875rem;
  color: var(--olz-gray-600, #4B5563);
  margin: 0;
  line-height: 1.6;
}

/* Lost/reset password: same 2-col grid for side-by-side password fields */
.olz-account-content .woocommerce-ResetPassword .form-row-first,
.olz-account-content .woocommerce-ResetPassword .form-row-last {
  width: 100%;
}


/* ── Notices ─────────────────────────────────────────────────────────────── */
.olz-account-content .woocommerce-message,
.olz-account-content .woocommerce-info {
  background: none !important;
  border: none !important;
  border-radius: 0;
  padding: 0 !important;
  font-size: 0.875rem;
  color: var(--olz-gray-700, #374151);
  margin-bottom: 1rem;
  list-style: none;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.olz-account-content .woocommerce-error {
  background: #FEF2F2;
  border: 1px solid #FECACA;
  border-radius: var(--radius, 8px);
  padding: 0.75rem 1rem;
  font-size: 0.8125rem;
  color: #991B1B;
  margin-bottom: 1.25rem;
  list-style: none;
}

/* Notice inline link — red text, underline on hover */
.olz-account-content .woocommerce-message .button,
.olz-account-content .woocommerce-info .button {
  display: inline !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  font-size: inherit !important;
  font-weight: 600 !important;
  font-family: var(--font-sans) !important;
  color: var(--olz-red, #DC2626) !important;
  text-decoration: none !important;
  cursor: pointer;
  box-shadow: none !important;
}

.olz-account-content .woocommerce-message .button:hover,
.olz-account-content .woocommerce-info .button:hover {
  text-decoration: underline !important;
  background: none !important;
  color: var(--olz-red, #DC2626) !important;
}


/* ── Guest / logged-out: centered login form ─────────────────────────────── */
.olz-account-guest {
  max-width: 420px;
  margin: 0 auto;
}

.olz-account-guest__title {
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--olz-black, #111827);
  margin: 0 0 1.25rem;
  font-family: var(--font-sans);
  text-align: center;
}

.olz-account-guest .woocommerce-MyAccount-content {
  background: #fff;
  border: 1px solid var(--olz-gray-200, #E5E7EB);
  border-radius: var(--radius, 8px);
  padding: 1.75rem;
  font-family: var(--font-sans);
}

/* Login form */
.olz-account-guest .woocommerce-form-login {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}

/* "Login" h2 */
.olz-account-guest h2 {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--olz-black, #111827);
  margin: 0 0 0.25rem;
  font-family: var(--font-sans);
}

/* Form rows */
.olz-account-guest .woocommerce-form-row,
.olz-account-guest .form-row {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0;
  padding: 0;
}

/* Labels */
.olz-account-guest .woocommerce-form-row label,
.olz-account-guest .form-row label {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--olz-gray-600, #4B5563);
  font-family: var(--font-sans);
}

/* Inputs — same as checkout */
.olz-account-guest .woocommerce-Input,
.olz-account-guest .input-text {
  width: 100%;
  border: 1px solid var(--olz-gray-200, #E5E7EB) !important;
  border-radius: var(--radius, 8px) !important;
  padding: 9px 12px !important;
  font-size: 0.875rem !important;
  font-family: var(--font-sans) !important;
  color: var(--olz-black, #111827) !important;
  background: #fff !important;
  outline: none !important;
  box-shadow: none !important;
  transition: border-color 0.15s;
}

.olz-account-guest .woocommerce-Input:focus,
.olz-account-guest .input-text:focus {
  border-color: var(--olz-red, #DC2626) !important;
  box-shadow: none !important;
}

/* Remember me + submit row */
.olz-account-guest .form-row:has(.woocommerce-form-login__rememberme) {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 0.25rem;
}

.olz-account-guest .woocommerce-form__label-for-checkbox {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.8125rem;
  color: var(--olz-gray-600, #4B5563);
  font-family: var(--font-sans);
  cursor: pointer;
}

/* Submit button — full width, red */
.olz-account-guest .woocommerce-form-login__submit {
  width: 100%;
  display: block;
  padding: 0.6875rem 1.5rem;
  background: var(--olz-red, #DC2626) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--radius, 8px) !important;
  font-size: 0.9375rem;
  font-weight: 700;
  font-family: var(--font-sans);
  cursor: pointer;
  transition: background 0.15s;
  text-align: center;
  box-shadow: none !important;
}

.olz-account-guest .woocommerce-form-login__submit:hover {
  background: #b91c1c !important;
}

/* Lost password link (on login form) */
.olz-account-guest .woocommerce-LostPassword {
  text-align: center;
  font-size: 0.8125rem;
  margin: 0;
  padding: 0;
}

.olz-account-guest .woocommerce-LostPassword a {
  color: var(--olz-red, #DC2626);
  text-decoration: none;
  font-family: var(--font-sans);
}

.olz-account-guest .woocommerce-LostPassword a:hover {
  text-decoration: underline;
}

/* ── Lost password form ──────────────────────────────────────────────────── */
.olz-account-guest .woocommerce-ResetPassword,
.olz-account-guest form.lost_reset_password {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}

.olz-account-guest .woocommerce-ResetPassword p,
.olz-account-guest form.lost_reset_password p {
  margin: 0;
  padding: 0;
}

/* Intro text */
.olz-account-guest .woocommerce-ResetPassword > p:first-child,
.olz-account-guest form.lost_reset_password > p:first-child {
  font-size: 0.875rem;
  color: var(--olz-gray-600, #4B5563);
  font-family: var(--font-sans);
  line-height: 1.6;
}

/* Error notice — red, small, below input */
.olz-account-guest .woocommerce-error {
  list-style: none;
  margin: 0 0 0.5rem;
  padding: 0;
  order: 99;
}

.olz-account-guest .woocommerce-error li {
  font-size: 0.8125rem;
  color: var(--olz-red, #DC2626);
  font-family: var(--font-sans);
  font-weight: 500;
  padding: 0;
  margin: 0;
}

.olz-account-guest .woocommerce-error li::before {
  display: none;
}

/* Submit button — full width, red */
.olz-account-guest .woocommerce-ResetPassword .button,
.olz-account-guest form.lost_reset_password .button {
  width: 100%;
  display: block;
  padding: 0.6875rem 1.5rem;
  background: var(--olz-red, #DC2626) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--radius, 8px) !important;
  font-size: 0.9375rem;
  font-weight: 700;
  font-family: var(--font-sans);
  cursor: pointer;
  transition: background 0.15s;
  text-align: center;
  box-shadow: none !important;
  margin-top: 0.25rem;
}

.olz-account-guest .woocommerce-ResetPassword .button:hover,
.olz-account-guest form.lost_reset_password .button:hover {
  background: #b91c1c !important;
}

/* Success notice — email sent confirmation */
.olz-notice--success {
  padding: 0.625rem 0.875rem;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: var(--radius, 8px);
  font-size: 0.8125rem;
  color: #166534;
  font-family: var(--font-sans);
  font-weight: 500;
  margin-bottom: 0.75rem;
}

/* Success / info notices on lost-password page */
.olz-account-guest .woocommerce-message {
  list-style: none;
  margin: 0 0 0.75rem;
  padding: 0.625rem 0.875rem;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: var(--radius, 8px);
  font-size: 0.8125rem;
  color: #166534;
  font-family: var(--font-sans);
}

.olz-account-guest .woocommerce-message li {
  margin: 0;
  padding: 0;
}

.olz-account-guest .woocommerce-message li::before {
  display: none;
}
