/* ── My Orders – MegaSport Theme ── */
.ms-orders-wrap {
  font-family: 'Nunito', sans-serif;
  color: #e8eaf0;
}
 
/* Section heading */
.ms-orders-heading {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 28px;
}
 
.ms-orders-heading__icon {
  width: 42px;
  height: 42px;
  border-radius: 11px;
  background: rgba(232,255,71,.1);
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
 
.ms-orders-heading__icon svg {
  width: 20px;
  height: 20px;
  stroke: #e8ff47;
  fill: none;
  stroke-width: 1.8;
}
 
.ms-orders-heading__title {
  font-family: 'Bebas Neue Vietnamese', 'Bebas Neue', sans-serif;
  font-size: clamp(1.6rem, 4vw, 2.2rem);
  letter-spacing: .07em;
  color: #e8eaf0;
  margin: 0;
  line-height: 1;
}
 
/* Table wrapper */
.ms-orders-table-wrap {
  background: #12151c;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 14px;
  overflow: hidden;
}
 
/* Table */
.ms-orders-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}
 
/* Head */
.ms-orders-table thead tr {
  background: #0a0c10;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
 
.ms-orders-table thead th {
  padding: 14px 20px;
  text-align: left;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #7a8099;
  white-space: nowrap;
}
 
.ms-orders-table thead th.order-actions {
  text-align: right;
}
 
/* Body rows */
.ms-orders-table tbody tr {
  border-bottom: 1px solid rgba(255,255,255,.05);
  transition: background .2s;
}
 
.ms-orders-table tbody tr:last-child {
  border-bottom: none;
}
 
.ms-orders-table tbody tr:hover {
  background: rgba(255,255,255,.03);
}
 
.ms-orders-table tbody td {
  padding: 16px 20px;
  vertical-align: middle;
  color: #b0b6cc;
}
 
/* Order number */
.ms-orders-table td.order-number a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: 'Bebas Neue Vietnamese', 'Bebas Neue', sans-serif;
  font-size: 1.1rem;
  letter-spacing: .08em;
  color: #e8ff47;
  text-decoration: none;
  transition: opacity .2s;
}
 
.ms-orders-table td.order-number a:hover {
  opacity: .75;
}
 
/* Date */
.ms-orders-table td.order-date time {
  font-size: 13px;
  color: #7a8099;
}
 
/* Status badges */
.ms-order-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  border-radius: 99px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
  white-space: nowrap;
}
 
.ms-order-status::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}
 
/* Status colour map */
.ms-status-completed   { background: rgba(41,214,181,.12); color: #29d6b5; }
.ms-status-processing  { background: rgba(232,255,71,.12);  color: #e8ff47; }
.ms-status-pending     { background: rgba(122,128,153,.12); color: #7a8099; }
.ms-status-on-hold     { background: rgba(255,92,53,.12);   color: #ff5c35; }
.ms-status-cancelled   { background: rgba(255,92,53,.15);   color: #ff5c35; }
.ms-status-refunded    { background: rgba(122,128,153,.12); color: #7a8099; }
.ms-status-failed      { background: rgba(255,92,53,.2);    color: #ff5c35; }
.ms-status-default     { background: rgba(232,255,71,.08);  color: #e8ff47; }
 
/* Total */
.ms-orders-table td.order-total {
  font-weight: 700;
  color: #e8eaf0;
}
 
/* Actions cell */
.ms-orders-table td.order-actions {
  text-align: right;
}
 
.ms-orders-table td.order-actions .button,
.ms-orders-table td.order-actions a.button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  border-radius: 8px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  border: 1.5px solid rgba(255,255,255,.15);
  background: transparent;
  color: #e8eaf0;
  transition: color .2s, border-color .2s, background .2s, transform .2s;
  margin-left: 6px;
}
 
.ms-orders-table td.order-actions .button:hover,
.ms-orders-table td.order-actions a.button:hover {
  color: #e8ff47;
  border-color: rgba(232,255,71,.45);
  background: rgba(232,255,71,.07);
  transform: translateY(-1px);
}
 
/* Primary action variant */
.ms-orders-table td.order-actions .button.view,
.ms-orders-table td.order-actions a.button.view {
  background: rgba(232,255,71,.1);
  border-color: rgba(232,255,71,.3);
  color: #e8ff47;
}
 
/* Empty state (no orders) */
.ms-orders-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 56px 24px;
  text-align: center;
  color: #7a8099;
}
 
.ms-orders-empty svg {
  width: 48px;
  height: 48px;
  stroke: rgba(122,128,153,.4);
  fill: none;
  stroke-width: 1.4;
  margin-bottom: 8px;
}
 
.ms-orders-empty__title {
  font-family: 'Bebas Neue Vietnamese', 'Bebas Neue', sans-serif;
  font-size: 1.4rem;
  letter-spacing: .08em;
  color: #e8eaf0;
}
 
.ms-orders-empty__sub {
  font-size: 13px;
}
 
/* Responsive */
@media (max-width: 680px) {
  .ms-orders-table thead { display: none; }
 
  .ms-orders-table tbody tr {
    display: flex;
    flex-direction: column;
    padding: 16px 0;
    gap: 6px;
  }
 
  .ms-orders-table tbody td {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 6px 20px;
    border: none;
  }
 
  .ms-orders-table tbody td::before {
    content: attr(data-title);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #7a8099;
    flex-shrink: 0;
    margin-right: 12px;
  }
 
  .ms-orders-table td.order-actions {
    justify-content: flex-end;
  }
}

.ms-orders-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 56px 24px;
  text-align: center;
  color: #7a8099;
  background: #12151c;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 14px;
  font-family: 'Nunito', sans-serif;
}
.ms-orders-empty svg {
  width: 48px;
  height: 48px;
  stroke: rgba(122,128,153,.4);
  fill: none;
  stroke-width: 1.4;
  margin-bottom: 8px;
}
.ms-orders-empty__title {
  font-family: 'Bebas Neue Vietnamese', 'Bebas Neue', sans-serif;
  font-size: 1.5rem;
  letter-spacing: .08em;
  color: #e8eaf0;
}
.ms-orders-empty__sub { font-size: 13px; }