/* v1.8.53 — surface-specific polish; no product, cart, or account state lives here. */

/* Collections: a quiet archival frame makes mixed source photography read as one catalogue. */
.neyfi-collections-page__stone-media {
  padding: clamp(.38rem, .9vw, .7rem);
  border-color: var(--cr) !important;
  background: linear-gradient(145deg, #fff 0%, #f8f5ee 100%) !important;
  box-shadow: 0 .5rem 1.3rem rgba(44, 35, 20, .055);
  transition: border-color var(--neyfi-transition-fast) ease, box-shadow var(--neyfi-transition-fast) ease;
}
.neyfi-collections-page__stone-media::after {
  position: absolute;
  inset: .34rem;
  z-index: 1;
  border: 1px solid rgba(183, 118, 36, .17);
  content: '';
  pointer-events: none;
}
.neyfi-collections-page__stone-media img { z-index: 0; }
.neyfi-collections-page__stone-media:hover,
.neyfi-collections-page__stone-media:focus-visible {
  border-color: var(--ca) !important;
  box-shadow: 0 .8rem 1.7rem rgba(44, 35, 20, .11);
}
.neyfi-collections-page .neyfi-catalog-add-to-cart {
  inline-size: 100%;
  min-block-size: 2.7rem;
  padding-inline: .75rem;
  font-weight: 600;
  text-align: center;
}

/* Selection: reduce the oversized hero and make each documented stone a stable artboard. */
.neyfi-selection-table .neyfi-trade__hero { padding-block: clamp(2.25rem, 5vw, 5.5rem); }
.neyfi-selection-table .neyfi-trade__identity h1 {
  max-inline-size: 13ch;
  font-size: clamp(2.8rem, 6.2vw, 5.8rem);
  letter-spacing: -.055em;
}
.neyfi-trade__online-gem {
  display: grid;
  grid-template-columns: .55rem minmax(0, 1fr);
  column-gap: .55rem;
  align-items: center;
  margin: -.15rem 0 0;
  color: var(--tm);
  font-size: var(--neyfi-text-xs);
  line-height: 1.35;
}
.neyfi-trade__online-gem > span {
  inline-size: .48rem;
  block-size: .48rem;
  border-radius: 999px;
  background: var(--neyfi-status-pass);
  box-shadow: 0 0 0 .2rem rgba(49, 95, 73, .12);
}
.neyfi-trade__online-gem strong {
  color: var(--ts);
  font-size: .61rem;
  font-weight: 600;
  letter-spacing: .12em;
}
.neyfi-trade__online-gem small {
  grid-column: 2;
  color: var(--tm);
  font-size: .7rem;
}
.neyfi-selection-table .neyfi-trade__stone-media {
  position: relative;
  padding: clamp(.45rem, 1.2vw, .8rem);
  border-color: var(--neyfi-line-strong);
  background: linear-gradient(145deg, #fff 0%, var(--neyfi-surface-soft) 100%);
  box-shadow: 0 .55rem 1.25rem rgba(17, 17, 17, .06);
}
.neyfi-selection-table .neyfi-trade__stone-media::after {
  position: absolute;
  inset: .35rem;
  border: 1px solid rgba(217, 215, 209, .7);
  content: '';
  pointer-events: none;
}
.neyfi-selection-table .neyfi-trade__stone-media img { position: relative; z-index: 1; }
.neyfi-selection-table .neyfi-trade__stone > a:hover .neyfi-trade__stone-media,
.neyfi-selection-table .neyfi-trade__stone > a:focus-visible .neyfi-trade__stone-media {
  border-color: var(--neyfi-ink-strong);
  box-shadow: 0 .8rem 1.6rem rgba(17, 17, 17, .11);
}
.neyfi-selection-table .neyfi-catalog-add-to-cart {
  display: inline-grid;
  min-inline-size: 100%;
  min-block-size: 2.7rem;
  place-items: center;
  margin-block-start: .9rem;
  padding-inline: .9rem;
  border: 1px solid var(--neyfi-ink-strong);
  background: var(--neyfi-ink-strong);
  color: var(--neyfi-surface-commerce) !important;
  font-size: .62rem;
  font-weight: 600;
  letter-spacing: .12em;
  line-height: 1.15;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background var(--neyfi-transition-fast) ease, color var(--neyfi-transition-fast) ease, transform var(--neyfi-transition-fast) ease;
}
.neyfi-selection-table .neyfi-catalog-add-to-cart:hover,
.neyfi-selection-table .neyfi-catalog-add-to-cart:focus-visible {
  background: var(--neyfi-surface-commerce);
  color: var(--neyfi-ink-strong) !important;
  transform: translateY(-1px);
}
.neyfi-selection-table .neyfi-trade__primary {
  justify-content: center;
  border: 1px solid var(--neyfi-ink-strong);
  font-size: .66rem;
  font-weight: 600;
  letter-spacing: .11em;
  text-transform: uppercase;
}

/* Account: retain Woo endpoints, but present one intentional dashboard and a calm entry surface. */
body.woocommerce-account.woocommerce-dashboard .neyfi-account-dashboard__intro h1,
body.woocommerce-account.woocommerce-dashboard .neyfi-account-dashboard__intro h2 {
  margin: 0;
  color: var(--neyfi-ink-strong);
  font-family: var(--neyfi-font-editorial);
  font-size: clamp(2.5rem, 5.4vw, 5rem);
  font-weight: 400;
  letter-spacing: -.06em;
  line-height: .9;
}
body.woocommerce-account.woocommerce-dashboard .neyfi-account-dashboard__selection-actions {
  justify-content: center;
  text-align: center;
}
body.neyfi-account-surface:not(.woocommerce-dashboard) .woocommerce-notices-wrapper + .woocommerce-message { display: none; }
body.neyfi-account-surface:not(.woocommerce-dashboard) .woocommerce {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(1rem, 3vw, 2rem) !important;
  max-inline-size: 76rem !important;
}
body.neyfi-account-surface:not(.woocommerce-dashboard) .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
body.neyfi-account-surface:not(.woocommerce-dashboard) .woocommerce > .woocommerce-form-login,
body.neyfi-account-surface:not(.woocommerce-dashboard) .woocommerce > .woocommerce-form-register {
  min-inline-size: 0;
  margin: 0;
  padding: clamp(1.25rem, 3vw, 2.25rem);
  border: var(--neyfi-rule);
  background: var(--neyfi-surface-commerce);
}
body.neyfi-account-surface:not(.woocommerce-dashboard) .woocommerce > .woocommerce-form-login > h2,
body.neyfi-account-surface:not(.woocommerce-dashboard) .woocommerce > .woocommerce-form-register > h2 {
  margin-block: 0 1.5rem;
  color: var(--neyfi-ink-strong);
  font-family: var(--neyfi-font-editorial);
  font-size: clamp(2rem, 3.4vw, 3rem);
  font-weight: 400;
  letter-spacing: -.045em;
  line-height: .95;
  text-align: center;
}
body.neyfi-account-surface:not(.woocommerce-dashboard) .woocommerce-form-login .form-row:last-child,
body.neyfi-account-surface:not(.woocommerce-dashboard) .woocommerce-form-register .form-row:last-child {
  display: flex;
  justify-content: center;
}
body.neyfi-account-surface:not(.woocommerce-dashboard) .woocommerce-form-login .woocommerce-button,
body.neyfi-account-surface:not(.woocommerce-dashboard) .woocommerce-form-register .woocommerce-button {
  min-inline-size: 10rem;
  font-size: .68rem;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
}

@media (max-width: 48rem) {
  .neyfi-selection-table .neyfi-trade__identity h1 { max-inline-size: 11ch; font-size: clamp(2.6rem, 14vw, 4.2rem); }
  .neyfi-trade__online-gem { margin-block-start: 0; }
  body.neyfi-account-surface:not(.woocommerce-dashboard) .woocommerce { grid-template-columns: 1fr !important; }
}

/* Record surfaces: keep verification and documentary imagery inside the same calm frame. */
main.neyfi-public-record[data-neyfi-surface="verify"] {
  min-block-size: calc(100svh - 9rem);
  padding-block: clamp(2.5rem, 7vw, 6.5rem);
  background: var(--neyfi-surface-editorial);
}
main.neyfi-public-record[data-neyfi-surface="verify"] > header,
main.neyfi-public-record[data-neyfi-surface="verify"] > form,
main.neyfi-public-record[data-neyfi-surface="verify"] > [role="status"] {
  inline-size: min(calc(100% - (2 * var(--neyfi-gutter))), var(--neyfi-shell-max));
  margin-inline: auto;
}
main.neyfi-public-record[data-neyfi-surface="verify"] > header {
  display: grid;
  gap: .65rem;
  padding-block-end: clamp(1.5rem, 3vw, 2.5rem);
  border-block-end: var(--neyfi-rule);
}
main.neyfi-public-record[data-neyfi-surface="verify"] > header p,
main.neyfi-public-record[data-neyfi-surface="verify"] > header h1 { margin: 0; }
main.neyfi-public-record[data-neyfi-surface="verify"] > header p,
main.neyfi-public-record[data-neyfi-surface="verify"] > form label {
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .13em;
  line-height: 1.35;
  text-transform: uppercase;
}
main.neyfi-public-record[data-neyfi-surface="verify"] > header h1 {
  font-family: var(--neyfi-font-editorial);
  font-size: clamp(2.35rem, 6vw, 5.5rem);
  font-weight: 400;
  letter-spacing: -.055em;
  line-height: .93;
}
main.neyfi-public-record[data-neyfi-surface="verify"] > form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .7rem 1rem;
  align-items: end;
  margin-block-start: clamp(1.5rem, 3vw, 2.5rem);
  padding: clamp(1rem, 2vw, 1.4rem);
  border: var(--neyfi-rule);
  background: var(--neyfi-surface-commerce);
}
main.neyfi-public-record[data-neyfi-surface="verify"] > form label,
main.neyfi-public-record[data-neyfi-surface="verify"] > form input { grid-column: 1; }
main.neyfi-public-record[data-neyfi-surface="verify"] > form label { margin: 0; }
main.neyfi-public-record[data-neyfi-surface="verify"] > form input {
  inline-size: 100%;
  min-block-size: 3.25rem;
  margin: 0;
  border: var(--neyfi-rule);
  border-radius: 0;
  background: transparent;
  padding-inline: .9rem;
  font: inherit;
}
main.neyfi-public-record[data-neyfi-surface="verify"] > form button {
  grid-column: 2;
  grid-row: 1 / span 2;
  min-block-size: 3.25rem;
  border: 0;
  border-radius: 0;
  background: var(--neyfi-ink);
  color: var(--neyfi-surface-commerce);
  padding-inline: 1.25rem;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
}
main.neyfi-public-record[data-neyfi-surface="verify"] > [role="status"] { margin-block-start: 1rem; }

.neyfi-record .neyfi-record__image-stage {
  position: relative;
  padding: clamp(.5rem, 1.1vw, .9rem);
  border: var(--neyfi-rule);
  background: var(--neyfi-surface-commerce);
}
.neyfi-record .neyfi-record__image-stage img {
  position: relative;
  z-index: 1;
  display: block;
  inline-size: 100% !important;
  block-size: 100% !important;
  max-inline-size: 100% !important;
  max-block-size: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
}

@media (max-width: 48rem) {
  main.neyfi-public-record[data-neyfi-surface="verify"] > form { grid-template-columns: 1fr; }
  main.neyfi-public-record[data-neyfi-surface="verify"] > form label,
  main.neyfi-public-record[data-neyfi-surface="verify"] > form input,
  main.neyfi-public-record[data-neyfi-surface="verify"] > form button { grid-column: 1; }
  main.neyfi-public-record[data-neyfi-surface="verify"] > form button {
    grid-row: auto;
    inline-size: 100%;
  }
}

/* Keep the legal links on one quiet desktop line; narrow screens may wrap naturally. */
@media (min-width: 70rem) {
  .neyfi-universal-footer__links {
    flex-wrap: nowrap;
    white-space: nowrap;
  }
}
