/* ════════════════════════════════════════════════════════════════
   NOVUS — Account Page CSS  (Fully Responsive)
   File: css/account.css
   Breakpoints: 1200 · 1024 · 768 · 640 · 480 · 380
   ════════════════════════════════════════════════════════════════ */

:root {
  --border:          #EDE8F5;
  --radius:          8px;
  --account-gap:     2.5rem;
  --account-sidebar: 260px;
}


/* ═══════════════════════════════════════════════════════════════
   1. PAGE WRAPPER
═══════════════════════════════════════════════════════════════ */
.woocommerce-account .woocommerce {
  max-width: 1200px;
  margin: 0 auto;
  padding: 7rem 2rem 5rem;
}
@media (max-width: 1024px) { .woocommerce-account .woocommerce { padding: 6rem 1.5rem 4rem; } }
@media (max-width: 640px)  { .woocommerce-account .woocommerce { padding: 5rem 1rem 3rem; } }
@media (max-width: 380px)  { .woocommerce-account .woocommerce { padding: 5rem .75rem 2.5rem; } }

/* Breadcrumb */
.woocommerce-breadcrumb {
  font-family: var(--font-sans);
  font-size: .7rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 2rem;
}
.woocommerce-breadcrumb a { color: var(--muted); text-decoration: none; transition: color .2s; }
.woocommerce-breadcrumb a:hover { color: var(--violet); }
@media (max-width: 480px) { .woocommerce-breadcrumb { font-size: .65rem; margin-bottom: 1.5rem; } }

/* Page heading */
.account-page-heading {
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 3vw, 2.8rem);
  font-weight: 400;
  color: var(--plum);
  letter-spacing: .04em;
  margin-bottom: .4rem;
}
.account-page-sub {
  font-family: var(--font-sans);
  font-size: .78rem;
  color: var(--muted);
  letter-spacing: .1em;
  margin-bottom: 2.5rem;
  line-height: 1.6;
}
@media (max-width: 480px) { .account-page-sub { font-size: .73rem; } }


/* ═══════════════════════════════════════════════════════════════
   2. TWO-COLUMN GRID LAYOUT
═══════════════════════════════════════════════════════════════ */
/* Reset WooCommerce floats */
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-MyAccount-navigation { float: none; width: auto; }

.woocommerce-account .woocommerce {
  display: grid;
  grid-template-columns: var(--account-sidebar) 1fr;
  grid-template-areas:
    "nav-mob  nav-mob"
    "sidebar  content";
  gap: var(--account-gap);
  align-items: start;
}

.woocommerce-account .woocommerce-MyAccount-navigation { grid-area: sidebar; position: sticky; top: 6.5rem; }
.woocommerce-account .woocommerce-MyAccount-content    { grid-area: content; min-width: 0; }

/* Tablet: sidebar goes to top as horizontal scroll tabs */
@media (max-width: 768px) {
  .woocommerce-account .woocommerce {
    grid-template-columns: 1fr;
    grid-template-areas:
      "sidebar"
      "content";
    gap: 1.5rem;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation { position: static; }
}


/* ═══════════════════════════════════════════════════════════════
   3. SIDEBAR — USER CARD
═══════════════════════════════════════════════════════════════ */
.account-user-card {
  background: linear-gradient(145deg, var(--plum), var(--deep-violet));
  border-radius: var(--radius);
  padding: 2rem 1.5rem;
  margin-bottom: 1.2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.account-user-card::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(201,169,110,.15) 0%, transparent 70%);
  pointer-events: none;
}
.account-user-avatar {
  width: 72px; height: 72px; border-radius: 50%;
  background: linear-gradient(135deg, var(--lilac), var(--plum));
  border: 2px solid rgba(201,169,110,.4);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--font-display); font-size: 1.8rem; color: white;
  margin-bottom: 1rem; overflow: hidden;
}
.account-user-avatar img { width: 100%; height: 100%; object-fit: cover; }
.account-user-name  { font-family: var(--font-display); font-size: 1.1rem; color: white; letter-spacing: .05em; margin-bottom: .2rem; }
.account-user-email { font-family: var(--font-sans); font-size: .72rem; color: rgba(255,255,255,.5); }
.account-user-badge { margin-top: .8rem; padding: .25rem .8rem; background: rgba(201,169,110,.18); border: 1px solid rgba(201,169,110,.35); border-radius: 100px; font-family: var(--font-sans); font-size: .6rem; letter-spacing: .18em; text-transform: uppercase; color: var(--gold-light); }

/* Tablet: user card goes horizontal */
@media (max-width: 768px) {
  .account-user-card {
    flex-direction: row;
    text-align: left;
    padding: 1.2rem 1.5rem;
    gap: 1rem;
    margin-bottom: 1rem;
  }
  .account-user-avatar { width: 52px; height: 52px; font-size: 1.3rem; margin-bottom: 0; flex-shrink: 0; }
  .account-user-info   { display: flex; flex-direction: column; gap: .1rem; }
  .account-user-name   { font-size: .95rem; }
  .account-user-badge  { margin-top: .3rem; align-self: flex-start; }
}
@media (max-width: 480px) {
  .account-user-card { padding: 1rem 1.2rem; }
  .account-user-avatar { width: 44px; height: 44px; font-size: 1.1rem; }
}


/* ═══════════════════════════════════════════════════════════════
   4. SIDEBAR NAV
═══════════════════════════════════════════════════════════════ */
.woocommerce-MyAccount-navigation {
  background: white;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  overflow: hidden;
}
.woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; margin: 0; }

/* Desktop: vertical stacked list */
.woocommerce-MyAccount-navigation ul li a {
  display: flex; align-items: center; gap: .9rem;
  padding: .88rem 1.3rem;
  text-decoration: none;
  font-family: var(--font-sans); font-size: .78rem;
  letter-spacing: .1em; text-transform: uppercase; color: var(--muted);
  border-bottom: 1px solid var(--border);
  transition: color .25s, background .25s, padding-left .25s;
  position: relative;
}
.woocommerce-MyAccount-navigation ul li:last-child a { border-bottom: none; }
.woocommerce-MyAccount-navigation ul li a:hover { color: var(--violet); background: var(--pale-lavender); padding-left: 1.6rem; }
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--active a { color: var(--violet); background: var(--pale-lavender); font-weight: 500; }
.woocommerce-MyAccount-navigation ul li.is-active a::before,
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--active a::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--violet); border-radius: 0 2px 2px 0; }
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a { color: #e57373; }
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a:hover { background: #fff5f5; color: #c62828; padding-left: 1.6rem; }

/* Tablet / Mobile: horizontal scrollable pill tabs */
@media (max-width: 768px) {
  .woocommerce-MyAccount-navigation { border-radius: var(--radius); overflow: hidden; }
  .woocommerce-MyAccount-navigation ul {
    display: flex;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding: .5rem;
    gap: .4rem;
  }
  .woocommerce-MyAccount-navigation ul::-webkit-scrollbar { display: none; }
  .woocommerce-MyAccount-navigation ul li { flex-shrink: 0; }
  .woocommerce-MyAccount-navigation ul li a {
    display: flex; align-items: center; gap: .5rem;
    padding: .5rem 1rem;
    border: 1px solid var(--border);
    border-radius: 100px;
    border-bottom: 1px solid var(--border) !important;
    font-size: .68rem; letter-spacing: .12em;
    white-space: nowrap; background: white;
  }
  .woocommerce-MyAccount-navigation ul li a:hover { padding-left: 1rem; background: var(--pale-lavender); }
  .woocommerce-MyAccount-navigation ul li.is-active a,
  .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--active a {
    background: var(--plum); color: white; border-color: var(--plum);
  }
  .woocommerce-MyAccount-navigation ul li.is-active a::before,
  .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--active a::before { display: none; }
  .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a { border-color: #fca5a5; color: #e57373; }
}
@media (max-width: 480px) {
  .woocommerce-MyAccount-navigation ul { padding: .4rem; gap: .3rem; }
  .woocommerce-MyAccount-navigation ul li a { padding: .45rem .85rem; font-size: .64rem; }
}


/* ═══════════════════════════════════════════════════════════════
   5. CONTENT AREA
═══════════════════════════════════════════════════════════════ */
.woocommerce-MyAccount-content { display: flex; flex-direction: column; gap: 2rem; }
@media (max-width: 640px) { .woocommerce-MyAccount-content { gap: 1.5rem; } }

/* Notices */
.woocommerce-message,.woocommerce-error,.woocommerce-info {
  padding: .9rem 1.1rem; border-radius: 6px;
  font-family: var(--font-sans); font-size: .82rem;
  margin-bottom: .5rem; display: flex; align-items: center; gap: .7rem; list-style: none;
}
.woocommerce-message { background: #f0fdf4; border-left: 3px solid #22c55e; color: #15803d; }
.woocommerce-error   { background: #fef2f2; border-left: 3px solid #ef4444; color: #b91c1c; }
.woocommerce-info    { background: var(--pale-lavender); border-left: 3px solid var(--lilac); color: var(--violet); }
@media (max-width: 480px) { .woocommerce-message,.woocommerce-error,.woocommerce-info { font-size: .78rem; padding: .8rem 1rem; } }

/* Dashboard welcome */
.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
  font-family: var(--font-serif); font-size: 1.05rem; color: var(--muted); line-height: 1.7;
  padding: 1.5rem; background: white; border-radius: var(--radius);
  border: 1px solid var(--border); border-left: 3px solid var(--gold);
}
.woocommerce-account .woocommerce-MyAccount-content > p:first-child strong { font-family: var(--font-display); font-size: 1.1em; color: var(--plum); }
@media (max-width: 480px) { .woocommerce-account .woocommerce-MyAccount-content > p:first-child { font-size: .92rem; padding: 1.1rem; } }

/* Section headings */
.woocommerce-MyAccount-content h2,.woocommerce-MyAccount-content h3 {
  font-family: var(--font-display); font-weight: 400; color: var(--plum); letter-spacing: .04em; margin-bottom: 1.2rem;
}
.woocommerce-MyAccount-content h2 { font-size: clamp(1.15rem, 2.5vw, 1.4rem); }
.woocommerce-MyAccount-content h3 { font-size: clamp(1rem, 2vw, 1.15rem); }


/* ═══════════════════════════════════════════════════════════════
   6. DASHBOARD STAT CARDS
═══════════════════════════════════════════════════════════════ */
.account-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}
.dash-card {
  background: white; border-radius: var(--radius); border: 1px solid var(--border);
  padding: 1.4rem; text-decoration: none;
  display: flex; flex-direction: column; gap: .55rem;
  transition: all .3s var(--ease);
}
.dash-card:hover { border-color: var(--soft-lilac); box-shadow: 0 8px 32px rgba(107,33,168,.08); transform: translateY(-2px); }
.dash-card-icon { width: 40px; height: 40px; border-radius: 50%; background: var(--pale-lavender); display: flex; align-items: center; justify-content: center; }
.dash-card-icon svg { width: 18px; height: 18px; stroke: var(--violet); fill: none; stroke-width: 1.5; stroke-linecap: round; }
.dash-card-label { font-family: var(--font-sans); font-size: .63rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); }
.dash-card-value { font-family: var(--font-display); font-size: clamp(1.3rem,2.5vw,1.6rem); color: var(--plum); }
.dash-card-sub   { font-family: var(--font-sans); font-size: .7rem; color: var(--muted); }

@media (max-width: 900px)  { .account-dashboard-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px)  { .account-dashboard-grid { grid-template-columns: 1fr; gap: .75rem; } .dash-card { flex-direction: row; align-items: center; padding: 1.1rem; } .dash-card-icon { flex-shrink: 0; } }
@media (max-width: 380px)  { .dash-card { padding: .9rem; gap: .8rem; } .dash-card-value { font-size: 1.2rem; } }


/* ═══════════════════════════════════════════════════════════════
   7. ORDERS TABLE  →  Card layout on mobile
═══════════════════════════════════════════════════════════════ */
.woocommerce-orders-table {
  width: 100%; border-collapse: collapse;
  background: white; border-radius: var(--radius); border: 1px solid var(--border); overflow: hidden;
}
.woocommerce-orders-table thead tr { border-bottom: 2px solid var(--border); }
.woocommerce-orders-table thead th {
  padding: 1rem 1.2rem;
  font-family: var(--font-sans); font-size: .63rem; letter-spacing: .22em;
  text-transform: uppercase; color: var(--muted); text-align: left; font-weight: 500;
  background: rgba(243,232,255,.3);
}
.woocommerce-orders-table tbody tr { border-bottom: 1px solid var(--border); transition: background .2s; }
.woocommerce-orders-table tbody tr:last-child { border-bottom: none; }
.woocommerce-orders-table tbody tr:hover { background: rgba(243,232,255,.25); }
.woocommerce-orders-table td {
  padding: 1.1rem 1.2rem; font-family: var(--font-sans);
  font-size: .82rem; color: var(--charcoal); vertical-align: middle;
}
.woocommerce-orders-table__cell-order-number a { color: var(--violet); text-decoration: none; font-weight: 500; }
.woocommerce-orders-table__cell-order-number a:hover { text-decoration: underline; }
.woocommerce-orders-table__cell-order-date { color: var(--muted); white-space: nowrap; }
.woocommerce-orders-table__cell-order-total { font-weight: 500; }

/* Action buttons */
.woocommerce-orders-table__cell-order-actions a,
.woocommerce-button.button {
  display: inline-flex; align-items: center; gap: .3rem;
  padding: .4rem .9rem; border: 1px solid var(--border); border-radius: 4px;
  font-family: var(--font-sans); font-size: .68rem; letter-spacing: .1em;
  text-transform: uppercase; color: var(--charcoal);
  text-decoration: none; transition: all .2s; background: white; white-space: nowrap;
}
.woocommerce-orders-table__cell-order-actions a:hover,.woocommerce-button.button:hover { border-color: var(--violet); color: var(--violet); background: var(--pale-lavender); }

/* Status badges */
.woocommerce-order-status,mark.order-status {
  display: inline-flex; align-items: center; gap: .35rem; padding: .28rem .72rem;
  border-radius: 100px; font-family: var(--font-sans); font-size: .63rem;
  letter-spacing: .1em; text-transform: uppercase; font-weight: 500;
  background: none !important;
}
.woocommerce-order-status::before,mark.order-status::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: currentColor; opacity: .7; flex-shrink: 0; }
mark.status-completed,.woocommerce-order-status.status-completed  { background: #f0fdf4 !important; color: #15803d; }
mark.status-processing,.woocommerce-order-status.status-processing { background: #eff6ff !important; color: #1d4ed8; }
mark.status-on-hold,.woocommerce-order-status.status-on-hold      { background: #fefce8 !important; color: #a16207; }
mark.status-cancelled,.woocommerce-order-status.status-cancelled  { background: #fef2f2 !important; color: #b91c1c; }
mark.status-refunded,.woocommerce-order-status.status-refunded    { background: #f5f3ff !important; color: #6d28d9; }
mark.status-pending,.woocommerce-order-status.status-pending      { background: #f8fafc !important; color: var(--muted); }

/* ── Tablet: hide less important columns */
@media (max-width: 768px) {
  .woocommerce-orders-table thead th,.woocommerce-orders-table td { padding: .85rem 1rem; }
}
@media (max-width: 640px) {
  /* Hide date column on small screens */
  .woocommerce-orders-table__header-order-date,
  .woocommerce-orders-table__cell-order-date { display: none; }
  .woocommerce-orders-table thead th,.woocommerce-orders-table td { padding: .75rem .85rem; font-size: .78rem; }
}

/* ── Mobile: convert table → card stack */
@media (max-width: 480px) {
  .woocommerce-orders-table { border: none; background: transparent; }
  .woocommerce-orders-table thead { display: none; }
  .woocommerce-orders-table tbody tr {
    display: block; background: white;
    border: 1px solid var(--border); border-radius: var(--radius);
    margin-bottom: .8rem; padding: 1rem; border-bottom: 1px solid var(--border) !important;
    box-shadow: 0 2px 8px rgba(45,10,78,.04);
  }
  .woocommerce-orders-table td {
    display: flex; align-items: center; justify-content: space-between;
    padding: .4rem 0; font-size: .8rem; border: none;
  }
  .woocommerce-orders-table td::before {
    content: attr(data-title);
    font-family: var(--font-sans); font-size: .62rem;
    letter-spacing: .15em; text-transform: uppercase;
    color: var(--muted); font-weight: 500; flex-shrink: 0;
  }
  .woocommerce-orders-table__cell-order-number { border-bottom: 1px solid var(--border); padding-bottom: .6rem; margin-bottom: .2rem; }
  .woocommerce-orders-table__cell-order-actions { justify-content: flex-end; padding-top: .6rem; margin-top: .2rem; border-top: 1px solid var(--border); }
  .woocommerce-orders-table__cell-order-actions::before { display: none; }
}


/* ═══════════════════════════════════════════════════════════════
   8. ADDRESSES
═══════════════════════════════════════════════════════════════ */
.woocommerce-Addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
@media (max-width: 640px) { .woocommerce-Addresses { grid-template-columns: 1fr; gap: 1rem; } }

.woocommerce-Address { background: white; border: 1px solid var(--border); border-radius: var(--radius); padding: 1.5rem; }
.woocommerce-Address-title { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1rem; padding-bottom: .8rem; border-bottom: 1px solid var(--border); }
.woocommerce-Address-title h3 { font-family: var(--font-sans) !important; font-size: .65rem !important; letter-spacing: .22em !important; text-transform: uppercase !important; color: var(--gold) !important; font-weight: 500 !important; margin: 0 !important; }
.woocommerce-Address-title a  { font-family: var(--font-sans); font-size: .72rem; color: var(--violet); text-decoration: none; transition: opacity .2s; }
.woocommerce-Address-title a:hover { opacity: .7; }
address { font-style: normal; font-family: var(--font-body); font-size: .88rem; color: var(--charcoal); line-height: 1.75; }
address p { margin: 0; }
address strong:first-child,.woocommerce-Address address .name { font-family: var(--font-serif); font-size: 1rem; color: var(--plum); display: block; margin-bottom: .3rem; }

@media (max-width: 480px) {
  .woocommerce-Address { padding: 1.2rem; }
  address { font-size: .83rem; }
}


/* ═══════════════════════════════════════════════════════════════
   9. FORMS (Account Details / Edit Address)
═══════════════════════════════════════════════════════════════ */
.woocommerce-EditAccountForm,.woocommerce-address-fields,
.woocommerce-form-login,.woocommerce-form-register,.edit-account {
  background: white; border-radius: var(--radius); border: 1px solid var(--border); padding: 2rem;
}
@media (max-width: 640px) {
  .woocommerce-EditAccountForm,.woocommerce-address-fields,
  .woocommerce-form-login,.woocommerce-form-register,.edit-account { padding: 1.4rem; }
}
@media (max-width: 380px) {
  .woocommerce-EditAccountForm,.woocommerce-address-fields,
  .woocommerce-form-login,.woocommerce-form-register,.edit-account { padding: 1.1rem; }
}

/* Form rows */
.woocommerce-account .form-row,
.woocommerce-account p.form-row {
  margin-bottom: 1.1rem; padding: 0; float: none;
  width: 100% !important; display: flex; flex-direction: column; gap: .4rem;
}
.woocommerce-account .form-row-first,
.woocommerce-account .form-row-last {
  display: inline-flex; width: calc(50% - .5rem) !important; vertical-align: top;
}
.woocommerce-account .form-row-first { margin-right: 1rem; }
/* Collapse to single col on small screens */
@media (max-width: 600px) {
  .woocommerce-account .form-row-first,
  .woocommerce-account .form-row-last { display: flex; width: 100% !important; margin-right: 0; }
}

/* Labels */
.woocommerce-account label,.woocommerce-form__label {
  font-family: var(--font-sans); font-size: .68rem;
  letter-spacing: .18em; text-transform: uppercase; color: var(--muted); font-weight: 500;
}
.woocommerce-account label .required,.required { color: var(--lilac); margin-left: .15rem; }

/* Inputs / Select / Textarea */
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="tel"],
.woocommerce-account textarea,
.woocommerce-account select {
  width: 100%; padding: .85rem 1.1rem;
  border: 1px solid var(--border); border-radius: 6px;
  font-family: var(--font-body); font-size: .9rem; color: var(--charcoal);
  background: white; outline: none;
  transition: border-color .25s, box-shadow .25s; appearance: none;
}
.woocommerce-account input:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus { border-color: var(--lilac); box-shadow: 0 0 0 3px rgba(168,85,247,.08); }
.woocommerce-account input::placeholder,
.woocommerce-account textarea::placeholder { color: rgba(122,111,130,.4); }
.woocommerce-account select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237A6F82' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 1rem center; padding-right: 2.5rem;
}
@media (max-width: 480px) {
  .woocommerce-account input[type="text"],
  .woocommerce-account input[type="email"],
  .woocommerce-account input[type="password"],
  .woocommerce-account input[type="tel"],
  .woocommerce-account textarea,
  .woocommerce-account select { padding: .75rem .9rem; font-size: .85rem; }
}

/* Fieldset / password section */
fieldset { border: none; padding: 0; margin: 1.5rem 0 0; }
fieldset legend { font-family: var(--font-sans); font-size: .68rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); padding: 0; margin-bottom: 1rem; width: 100%; border-bottom: 1px solid var(--border); padding-bottom: .6rem; }

/* Password hint / strength */
.woocommerce-password-strength { font-family: var(--font-sans); font-size: .7rem; color: var(--muted); margin-top: .3rem; }
.woocommerce-password-hint { font-family: var(--font-sans); font-size: .7rem; color: var(--muted); }

/* Submit / Save buttons */
.woocommerce-account button[type="submit"],
.woocommerce-account input[type="submit"] {
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
  padding: .88rem 2.2rem; border: none; border-radius: 6px; cursor: pointer;
  font-family: var(--font-sans); font-size: .75rem; letter-spacing: .18em; text-transform: uppercase;
  background: var(--plum); color: white;
  transition: background .3s var(--ease), box-shadow .3s;
  width: auto;
}
.woocommerce-account button[type="submit"]:hover,
.woocommerce-account input[type="submit"]:hover { background: var(--violet); box-shadow: 0 8px 24px rgba(107,33,168,.25); }
@media (max-width: 480px) {
  .woocommerce-account button[type="submit"],
  .woocommerce-account input[type="submit"] { width: 100%; padding: .88rem 1.5rem; }
}

/* Checkbox */
.woocommerce-account input[type="checkbox"] { accent-color: var(--violet); width: 16px; height: 16px; cursor: pointer; }
.woocommerce-account .woocommerce-form__label-for-checkbox { display: flex; align-items: center; gap: .5rem; cursor: pointer; font-family: var(--font-sans); font-size: .78rem; color: var(--muted); text-transform: none; letter-spacing: 0; }


/* ═══════════════════════════════════════════════════════════════
   10. LOGIN / REGISTER — Side by side → stacked mobile
═══════════════════════════════════════════════════════════════ */
.woocommerce-account:not(.logged-in) .woocommerce { display: block; max-width: 960px; }
.woocommerce-page .col2-set,.woocommerce-account .u-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.woocommerce-page .col2-set .col-1,.woocommerce-page .col2-set .col-2 { width: auto; float: none; }
@media (max-width: 700px) {
  .woocommerce-page .col2-set,.woocommerce-account .u-columns { grid-template-columns: 1fr; gap: 1.5rem; }
}

.woocommerce-form-login h2,.woocommerce-form-register h2 { font-family: var(--font-display); font-size: clamp(1.3rem,3vw,1.6rem); font-weight: 400; color: var(--plum); margin-bottom: .3rem; letter-spacing: .04em; }
.woocommerce-form-login .woocommerce-privacy-policy-text,.woocommerce-form-register .woocommerce-privacy-policy-text { font-family: var(--font-sans); font-size: .72rem; color: var(--muted); margin-bottom: 1.5rem; line-height: 1.6; }
.lost_password a { font-family: var(--font-sans); font-size: .72rem; color: var(--violet); text-decoration: none; }
.lost_password a:hover { text-decoration: underline; }


/* ═══════════════════════════════════════════════════════════════
   11. SINGLE ORDER VIEW
═══════════════════════════════════════════════════════════════ */
.woocommerce-order-details,.woocommerce-customer-details { background: white; border-radius: var(--radius); border: 1px solid var(--border); padding: 1.5rem; margin-bottom: 1.5rem; }
.woocommerce-order-details__title { font-family: var(--font-display) !important; font-size: 1.2rem !important; color: var(--plum) !important; padding-bottom: .8rem; border-bottom: 1px solid var(--border); margin-bottom: 1.2rem !important; }
.woocommerce-table--order-details { width: 100%; border-collapse: collapse; }
.woocommerce-table--order-details thead th { font-family: var(--font-sans); font-size: .63rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); padding: .8rem 1rem; border-bottom: 1px solid var(--border); text-align: left; }
.woocommerce-table--order-details tbody tr { border-bottom: 1px solid var(--border); }
.woocommerce-table--order-details tbody td { padding: 1rem; font-family: var(--font-sans); font-size: .85rem; color: var(--charcoal); vertical-align: middle; }
.woocommerce-table--order-details tfoot th,.woocommerce-table--order-details tfoot td { padding: .8rem 1rem; font-family: var(--font-sans); font-size: .82rem; border-top: 1px solid var(--border); }
.woocommerce-table--order-details tfoot tr:last-child th,.woocommerce-table--order-details tfoot tr:last-child td { font-size: 1rem; color: var(--plum); font-weight: 500; }
.product-name a { color: var(--violet); text-decoration: none; }
.product-name a:hover { text-decoration: underline; }

@media (max-width: 480px) {
  .woocommerce-order-details,.woocommerce-customer-details { padding: 1.1rem; }
  .woocommerce-table--order-details tbody td,.woocommerce-table--order-details tfoot th,
  .woocommerce-table--order-details tfoot td { padding: .7rem .8rem; font-size: .78rem; }
  .woocommerce-table--order-details { display: block; overflow-x: auto; }
}


/* ═══════════════════════════════════════════════════════════════
   12. DOWNLOADABLE PRODUCTS TABLE
═══════════════════════════════════════════════════════════════ */
.woocommerce-table--order-downloads { width: 100%; border-collapse: collapse; background: white; border-radius: var(--radius); border: 1px solid var(--border); }
.woocommerce-table--order-downloads th { font-family: var(--font-sans); font-size: .63rem; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); padding: .9rem 1rem; background: rgba(243,232,255,.3); border-bottom: 2px solid var(--border); text-align: left; }
.woocommerce-table--order-downloads td { padding: .9rem 1rem; font-family: var(--font-sans); font-size: .82rem; color: var(--charcoal); border-bottom: 1px solid var(--border); }
@media (max-width: 480px) { .woocommerce-table--order-downloads { display: block; overflow-x: auto; } }


/* ═══════════════════════════════════════════════════════════════
   13. GLOBAL UTILITY
═══════════════════════════════════════════════════════════════ */
/* Clearfix for WooCommerce floats */
.woocommerce-account .woocommerce::after,.woocommerce-account .col2-set::after { content: ''; display: table; clear: both; }
/* Remove extra margin/padding WooCommerce adds */
.woocommerce-account .woocommerce p:empty { display: none; }
.woocommerce-account .woocommerce > p { margin: 0; }
