/* ==========================================================================
   NOVAURA — Guest order tracking

   Styles WooCommerce's own tracking form and result output. The markup and
   the lookup belong to WooCommerce; only the appearance is ours.
   ========================================================================== */

.nva-track-order { padding-block: var(--nva-s-16) var(--nva-s-20); }

.nva-track-order__head { text-align: center; }

.nva-track-order__eyebrow {
  font-family: var(--nva-font-body);
  font-size: var(--nva-t-nano);
  font-weight: var(--nva-w-semi);
  text-transform: uppercase;
  letter-spacing: var(--nva-ls-eyebrow);
  color: var(--nva-red);
}

.nva-track-order__title {
  margin-top: var(--nva-s-4);
  font-family: var(--nva-font-heading);
  font-size: clamp(2.2rem, 4vw, 3rem);
  font-weight: var(--nva-w-medium);
  letter-spacing: var(--nva-ls-tight);
  color: var(--nva-ink);
}

.nva-track-order__rule {
  display: block;
  width: 40px;
  height: 2px;
  margin: var(--nva-s-5) auto 0;
  border-radius: var(--nva-r-full);
  background-color: var(--nva-red);
}

.nva-track-order__lead {
  max-width: 34rem;
  margin: var(--nva-s-5) auto 0;
  font-family: var(--nva-font-body);
  font-size: 0.9375rem;
  line-height: 1.7;
  color: var(--nva-ink-55);
}

/* --------------------------------------------------------------------------
   WooCommerce's tracking form
   -------------------------------------------------------------------------- */
.nva-track-order__panel {
  max-width: 34rem;
  margin: var(--nva-s-10) auto 0;
  padding: var(--nva-s-8);
  border: 1px solid var(--nva-line);
  border-radius: var(--nva-r-lg);
  background-color: var(--nva-surface);
  box-shadow: 0 2px 10px -4px rgba(0,0,0,0.06);
}

.nva-track-order__panel .track_order p { margin: 0 0 var(--nva-s-5); }

.nva-track-order__panel .form-row {
  display: flex;
  flex-direction: column;
  margin: 0 0 var(--nva-s-5);
  padding: 0;
}

.nva-track-order__panel label {
  margin-bottom: var(--nva-s-2);
  font-family: var(--nva-font-body);
  font-size: var(--nva-t-micro);
  font-weight: var(--nva-w-semi);
  text-transform: uppercase;
  letter-spacing: var(--nva-ls-label);
  color: var(--nva-ink-60);
}

.nva-track-order__panel input.input-text {
  width: 100%;
  height: 48px;
  padding: 0 var(--nva-s-4);
  border: 1px solid var(--nva-line);
  border-radius: var(--nva-r-md);
  background-color: var(--nva-surface);
  font-family: var(--nva-font-body);
  font-size: var(--nva-t-body);
  color: var(--nva-ink);
  transition: border-color var(--nva-d-fast) var(--nva-ease);
}
.nva-track-order__panel input.input-text:focus {
  outline: none;
  border-color: rgba(0,0,0,0.4);
}
.nva-track-order__panel input.input-text::placeholder { color: var(--nva-ink-40); }

.nva-track-order__panel button[type="submit"],
.nva-track-order__panel .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 52px;
  border: 0;
  border-radius: var(--nva-r-full);
  background-color: var(--nva-ink);
  color: var(--nva-on-dark);
  font-family: var(--nva-font-body);
  font-size: var(--nva-t-nano);
  font-weight: var(--nva-w-semi);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  cursor: pointer;
  transition: background-color var(--nva-d-base) var(--nva-ease);
}
.nva-track-order__panel button[type="submit"]:hover,
.nva-track-order__panel .button:hover {
  background-color: var(--nva-ink-hover);
  color: var(--nva-on-dark);
}

/* --------------------------------------------------------------------------
   WooCommerce's result output
   -------------------------------------------------------------------------- */
.nva-track-order__panel .woocommerce-order-overview,
.nva-track-order__panel .woocommerce-thankyou-order-details {
  display: flex;
  flex-direction: column;
  gap: var(--nva-s-4);
  margin: 0 0 var(--nva-s-6);
  padding: 0;
  list-style: none;
}

.nva-track-order__panel .woocommerce-order-overview li {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--nva-s-4);
  padding-bottom: var(--nva-s-3);
  border-bottom: 1px solid var(--nva-line);
  font-family: var(--nva-font-body);
  font-size: var(--nva-t-micro);
  text-transform: uppercase;
  letter-spacing: var(--nva-ls-label);
  color: var(--nva-ink-50);
}
.nva-track-order__panel .woocommerce-order-overview li:last-child { border-bottom: 0; }
.nva-track-order__panel .woocommerce-order-overview li strong {
  font-size: var(--nva-t-body);
  font-weight: var(--nva-w-medium);
  text-transform: none;
  letter-spacing: 0;
  color: var(--nva-ink);
}

.nva-track-order__panel .shop_table {
  width: 100%;
  border: 1px solid var(--nva-line);
  border-radius: var(--nva-r-md);
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
}
.nva-track-order__panel .shop_table th,
.nva-track-order__panel .shop_table td {
  padding: var(--nva-s-3) var(--nva-s-4);
  border-bottom: 1px solid var(--nva-line);
  font-family: var(--nva-font-body);
  font-size: var(--nva-t-small);
  text-align: left;
}
.nva-track-order__panel .shop_table th {
  background-color: rgba(0,0,0,0.02);
  font-size: var(--nva-t-nano);
  font-weight: var(--nva-w-semi);
  text-transform: uppercase;
  letter-spacing: var(--nva-ls-label);
  color: var(--nva-ink-55);
}
.nva-track-order__panel .shop_table tr:last-child td { border-bottom: 0; }

.nva-track-order__panel .woocommerce-info,
.nva-track-order__panel .woocommerce-error,
.nva-track-order__panel .woocommerce-message {
  margin: 0 0 var(--nva-s-5);
  padding: var(--nva-s-4) var(--nva-s-5);
  border: 1px solid var(--nva-line);
  border-left: 2px solid var(--nva-blue);
  border-radius: var(--nva-r-sm);
  background-color: var(--nva-surface);
  font-family: var(--nva-font-body);
  font-size: var(--nva-t-small);
  line-height: 1.6;
  list-style: none;
  color: var(--nva-ink-70);
}
.nva-track-order__panel .woocommerce-error { border-left-color: var(--nva-red); }

/* --------------------------------------------------------------------------
   Footer prompts
   -------------------------------------------------------------------------- */
.nva-track-order__foot {
  max-width: 34rem;
  margin: var(--nva-s-8) auto 0;
  padding-top: var(--nva-s-6);
  border-top: 1px solid var(--nva-line);
  text-align: center;
}

.nva-track-order__foot-text {
  font-family: var(--nva-font-body);
  font-size: var(--nva-t-small);
  line-height: 1.7;
  color: var(--nva-ink-55);
}

.nva-track-order__foot-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  margin-top: var(--nva-s-4);
  font-family: var(--nva-font-body);
  font-size: var(--nva-t-nano);
  font-weight: var(--nva-w-semi);
  text-transform: uppercase;
  letter-spacing: var(--nva-ls-button);
  color: var(--nva-ink);
  transition: color var(--nva-d-fast) var(--nva-ease);
}
.nva-track-order__foot-link:hover { color: var(--nva-ink-hover); }

.nva-track-order__help {
  margin-top: var(--nva-s-8);
  font-family: var(--nva-font-body);
  font-size: var(--nva-t-micro);
  text-align: center;
  color: var(--nva-ink-45);
}
.nva-track-order__help a {
  color: var(--nva-ink-70);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.nva-track-order__help a:hover { color: var(--nva-ink); }

@media (min-width: 768px) {
  .nva-track-order__panel { padding: var(--nva-s-10); }
  .nva-track-order__panel .form-row { margin-bottom: var(--nva-s-6); }
}

/* ==========================================================================
   Guest order summary — successful lookup

   Matches the label/value language used on Order Received and the account
   pages. Presentation only.
   ========================================================================== */
.nva-track-summary {
  margin-top: var(--nva-s-6);
  padding-top: var(--nva-s-6);
  border-top: 1px solid var(--nva-line);
}

.nva-track-summary__title {
  margin: 0 0 var(--nva-s-4);
  font-family: var(--nva-font-body);
  font-size: var(--nva-t-micro);
  font-weight: var(--nva-w-semi);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--nva-ink-45);
}

.nva-track-summary__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--nva-s-4);
  margin: 0;
}

.nva-track-summary__cell { min-width: 0; }

.nva-track-summary__cell dt {
  font-family: var(--nva-font-body);
  font-size: 10px;
  font-weight: var(--nva-w-semi);
  text-transform: uppercase;
  letter-spacing: var(--nva-ls-label);
  color: var(--nva-ink-40);
}

.nva-track-summary__cell dd {
  margin: 0.25rem 0 0;
  font-family: var(--nva-font-body);
  font-size: var(--nva-t-body);
  font-weight: var(--nva-w-semi);
  line-height: 1.4;
  color: var(--nva-ink);
  overflow-wrap: break-word;
}

/* Total is the figure a customer scans for. */
.nva-track-summary__cell:last-child dd {
  font-family: var(--nva-font-heading);
  font-size: 1.25rem;
  font-weight: var(--nva-w-medium);
}
.nva-track-summary__cell:last-child dd .woocommerce-Price-amount { font-weight: inherit; }

@media (min-width: 768px) {

  .nva-track-summary {
    margin-top: var(--nva-s-8);
    padding-top: var(--nva-s-8);
  }

  /* Five cells read comfortably in one row once there is width. */
  .nva-track-summary__grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: var(--nva-s-5);
  }
}

@media (min-width: 1024px) {
  .nva-track-summary__grid { gap: var(--nva-s-6); }
  .nva-track-summary__cell:last-child dd { font-size: 1.375rem; }
}
