:root {
  color-scheme: dark;
  font-family: "IBM Plex Mono", ui-monospace, monospace;
  background: #000;
  color: #f4f4f1;
  --panel: #050607;
  --text: #f4f4f1;
  --muted: #a3a7aa;
  --accent: #ed7445;
}

* { box-sizing: border-box; }

html,
body {
  width: 100%;
  min-height: 100%;
  min-height: 100lvh;
  margin: 0;
  overflow: hidden;
  overscroll-behavior: none;
}

body { background: #000; }

.home-page > main,
.about-page > main,
.pricing-page > main {
  animation: page-fade-in 250ms linear;
}

body.page-exit > main {
  opacity: 0;
  transition: opacity 250ms linear;
}

@keyframes page-fade-in {
  from { opacity: 0; }
  to { opacity: 1; }
}

.site-nav {
  position: fixed;
  z-index: 3;
  top: max(12px, env(safe-area-inset-top));
  right: max(14px, env(safe-area-inset-right));
  display: flex;
  gap: 12px;
  font-size: 14.4px;
  line-height: 1;
}

.site-nav a {
  display: inline-block;
  padding: 8px 4px;
  color: var(--muted);
  text-decoration: none;
}

.site-nav a:hover,
.site-nav a[aria-current="page"] { color: var(--text); }
.site-nav a:focus-visible { color: var(--text); text-decoration: underline; outline: 0; }


main {
  position: fixed;
  inset: 0 0 auto;
  height: 100vh;
  height: 100lvh;
  display: grid;
  place-items: center;
  padding: 0;
}

.wave-panel {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: grid;
  place-items: center;
  background: var(--panel);
  isolation: isolate;
}

#wave-field {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  cursor: crosshair;
  touch-action: none;
}

.content {
  position: relative;
  z-index: 1;
  width: min(100% - 40px, 760px);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  pointer-events: none;
}

h1 {
  margin: 0;
  font-size: clamp(48px, 9vw, 116px);
  font-weight: 500;
  line-height: 0.9;
  letter-spacing: 0;
}

.bio {
  max-width: 680px;
  margin: clamp(22px, 4vh, 34px) 0 0;
  color: var(--text);
  font-size: clamp(12px, 1.6vw, 17px);
  line-height: 1.55;
}

.release {
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 10px;
  text-transform: uppercase;
}

.waitlist-shell {
  width: min(100%, 560px);
  min-height: 106px;
  margin-top: clamp(24px, 5vh, 42px);
  pointer-events: auto;
}

button,
input {
  min-height: 48px;
  border: 0;
  border-radius: 0;
  font: 500 11px "IBM Plex Mono", ui-monospace, monospace;
}

button {
  padding: 0 24px;
  background: var(--text);
  color: #050607;
  cursor: pointer;
  text-transform: uppercase;
}

button:hover { background: var(--accent); }
form button:hover { background: var(--text); }
button:focus-visible { outline: 1px solid var(--accent); outline-offset: 2px; }
button:disabled { cursor: wait; opacity: 0.7; }

form[hidden] { display: none; }
#form-status[hidden] { display: none; }
.form-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; }

input {
  min-width: 0;
  width: 100%;
  padding: 0 14px;
  background: var(--accent);
  color: #050607;
  outline: none;
}

#privacy,
#form-status {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 9px;
  line-height: 1.4;
}

#form-status {
  min-height: 13px;
  margin-top: 12px;
  color: var(--text);
}

#form-status.error { color: #ff9b7b; }
#form-status.success {
  min-height: 48px;
  margin: 0;
  display: grid;
  place-items: center;
  color: var(--text);
  text-align: center;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.about-document {
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior-y: auto;
}

.about-page {
  height: auto;
  min-height: 100%;
  overflow: visible;
  overscroll-behavior: auto;
  background: var(--panel);
}

.pricing-page {
  height: auto;
  min-height: 100%;
  overflow: visible;
  overscroll-behavior: auto;
  background: var(--panel);
}

.pricing-main {
  position: static;
  width: min(100% - 40px, 720px);
  height: auto;
  min-height: 100vh;
  min-height: 100lvh;
  margin: 0 auto;
  display: block;
  padding: clamp(88px, 12vh, 140px) 0 96px;
  text-align: center;
}

.pricing-main > header { margin-bottom: 40px; }

.pricing-main h1 {
  margin: 0;
  font-size: clamp(32px, 6vw, 64px);
  line-height: 1;
}

.pricing-tabs {
  position: relative;
  isolation: isolate;
  background: #000;
  width: 230px;
  height: 46px;
  margin: 0 auto 42px;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid #3b3d3f;
  border-radius: 999px;
}

.pricing-tabs::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0 auto 0 0;
  width: 50%;
  border-radius: 999px;
  background: #fff;
  transition: transform 160ms cubic-bezier(0.22, 1, 0.36, 1);
}

.pricing-tabs:has(#mcp-tab[aria-selected="true"])::before {
  transform: translateX(100%);
}

.pricing-tabs button {
  min-height: 0;
  padding: 0 18px;
  border-radius: 999px;
  background: transparent;
  color: var(--muted);
  font-size: 12px;
  text-transform: none;
  transition: color 140ms ease;
}

.pricing-tabs button:hover { background: transparent; color: var(--text); }
.pricing-tabs button[aria-selected="true"] { background: transparent; color: #000; }

@media (prefers-reduced-motion: reduce) {
  .pricing-tabs::before, .pricing-tabs button { transition: none; }
}

.pricing-panel { animation: tile-expand 160ms cubic-bezier(0.22, 1, 0.36, 1); transform-origin: top center; }
.pricing-panel[hidden] { display: none; }

@keyframes panel-enter {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes tile-expand {
  from { opacity: 0; transform: scale(0.975); }
  to { opacity: 1; transform: scale(1); }
}

.pricing-panel h2 {
  margin: 0 0 14px;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.3;
}

.panel-price {
  margin: 0 0 26px;
  font-size: 14px;
  color: #d1d3d3;
}

.simple-list {
  margin: 0 auto;
  padding: 0;
  list-style: none;
}

.simple-list li {
  padding: 11px 0;
  border-bottom: 1px solid #242628;
  color: #d1d3d3;
  font-size: 13px;
  line-height: 1.6;
}

.simple-list li:last-child { border-bottom: 0; }

.rate-group { margin-top: 38px; }
.rate-group:first-of-type { margin-top: 0; }

.rate-heading {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: baseline;
  padding-bottom: 10px;
  border-bottom: 1px solid #3b3d3f;
}

.rate-heading h3,
.rate-heading p { margin: 0; }
.rate-heading h3 { font-size: 14px; font-weight: 500; }
.rate-heading p { color: var(--text); font-size: 14px; }

.rate-row {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 10px 0;
  border-bottom: 1px solid #242628;
  color: #d1d3d3;
  font-size: 12px;
  line-height: 1.55;
  text-align: left;
}

.rate-row span:last-child { flex: 0 0 auto; color: var(--text); text-align: right; }
.future-products {
  margin: 44px 0 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.8;
}

.about-main {
  position: static;
  width: min(100% - 40px, 720px);
  height: auto;
  min-height: 100vh;
  min-height: 100lvh;
  margin: 0 auto;
  display: block;
  padding: clamp(88px, 12vh, 140px) 0 72px;
}

.about-main article { width: 100%; }

.home-page .content h1 { width: 100%; text-align: center; }
.about-main h1, .pricing-main h1 { width: 100%; text-align: center; }

.mcp-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(6px, 1.6vw, 16px); }
.mcp-tile { position: relative; padding: 28px 22px; border: 1px solid #505254; border-radius: 10px; text-align: left; background: #000; }
#map-panel { width: max(280px, calc((100% - 32px) / 3)); max-width: 100%; margin-inline: auto; padding: 22px; border: 1.5px solid #505254; border-radius: 10px; background: #000; text-align: left; transform-origin: top left; }
#map-panel h2 { font-size: 18px; }
#map-panel .simple-list li { font-size: 12px; }
.early-discount-tile { transform-origin: top left; }
/* Substitute only the zero glyph; preserve IBM Plex Mono for all other characters. */
@font-face {
  font-family: "Pricing Plain Zero";
  src: url("/fonts/baseload-plain-zero.ttf") format("truetype");
  unicode-range: U+0030;
}
.tile-price, .rate-row, .early-term {
  font-family: "Pricing Plain Zero", "IBM Plex Mono", ui-monospace, monospace;
}
.mcp-tile h2 { font-size: 18px; white-space: nowrap; }
.tile-price { margin: 0 0 32px; font-size: 28px; }
.tile-price span { font-size: 12px; color: var(--muted); }
.early-word { color: var(--accent); }
.tile-title-row { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.early-saving { flex: 0 0 auto; padding: 3px 7px; border: 0.75px solid var(--accent); border-radius: 999px; background: #000; font-size: 10px; font-weight: 400; color: var(--accent); white-space: nowrap; }
@media (max-width: 600px) { .tile-title-row { flex-wrap: wrap; } .early-saving { font-size: 8px; padding: 2px 4px; } }
.rate-label, .rate-unit { font-size: 12px; color: var(--muted); }
.rate-unit { margin: 12px 0 0; }
.flat-rate { margin: 22px 0; font-size: 30px; }
.early-access { position: absolute; inset: 0 0 auto; width: 100%; min-height: 28px; padding: 5px 12px; margin: 0; border-radius: 2px 2px 0 0; border-bottom: 1px solid #505254; text-transform: none; font-size: 11px; background: #202224; color: var(--text); }
.early-access:hover { background: #343638; }
#early-details { margin-top: 20px; font-size: 12px; color: var(--muted); line-height: 1.6; }
.pricing-page { animation: none; }
#pricing-lines { position: fixed; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.pricing-main { position: relative; width: min(100% - 40px, 960px); background: transparent; padding-inline: 0; text-shadow: none; }
#mcp-panel { overflow: visible; }
.pricing-document { overflow: hidden; }
.pricing-page { height: 100dvh; overflow: hidden; }
.pricing-main { min-height: 0; padding-top: clamp(60px, 9vh, 100px); padding-bottom: 12px; }
.pricing-main > header { margin-bottom: 24px; }
.pricing-tabs { margin-bottom: 24px; }
.mcp-tile { border-width: 1.5px; padding: clamp(10px, 2.2vw, 22px); }
.early-discount-tile { border-width: 0.75px; border-color: var(--accent); padding: calc(clamp(10px, 2.2vw, 22px) + 0.75px); }
.mcp-tile h2 { font-size: clamp(11px, 1.8vw, 18px); white-space: normal; min-height: 2.6em; margin-bottom: 8px; }
.tile-price { margin-bottom: 20px; font-size: clamp(18px, 2.8vw, 28px); }
.rate-row { flex-wrap: wrap; gap: 2px 8px; }
.rate-row span { white-space: nowrap; }
#map-panel { position: relative; }
.tile-link { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; border-radius: inherit; background: transparent; cursor: pointer; padding: 0; }
.tile-link:hover { background: transparent; }
#map-panel:hover, .early-discount-tile:hover { border-color: var(--text); }
.mcp-tile:not(.early-discount-tile) .tile-link { cursor: default; }
.tile-link:focus-visible { outline: 2px solid var(--text); outline-offset: 3px; }
#checkout-status { font-size: 12px; color: var(--muted); }
.future-products { margin-top: 22px; }
@media (max-width: 600px) {
  .pricing-page .pricing-main { padding-top: 60px; }
  .rate-row, .rate-label, .rate-unit, .early-term, .tile-price span { font-size: 10px; }
  .rate-row span:last-child { width: 100%; text-align: left; }
}
.early-term { font-size: 9px; line-height: 1.6; color: #fff; margin: 20px 0 0; }


.about-main h1 {
  margin: 0 0 40px;
  font-size: clamp(32px, 6vw, 64px);
  line-height: 1;
  text-align: center;
}

.about-main h2 {
  margin: 52px 0 18px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
}

.about-main p {
  margin: 0 0 18px;
  color: #d1d3d3;
  font-size: 13px;
  line-height: 1.75;
}

@media (max-width: 600px) {
  .content { width: min(100% - 28px, 440px); }
  h1 { font-size: clamp(40px, 13vw, 58px); }
  .bio { max-width: 340px; font-size: 11px; }
  .waitlist-shell { margin-top: 28px; }
  button, input { min-height: 44px; }
  input { font-size: 16px; }
  button { padding-inline: 16px; font-size: 9px; }
  .about-main { width: min(100% - 32px, 720px); padding-top: 84px; }
  .about-main h1 { margin-bottom: 32px; }
  .about-main p { font-size: 12px; }
  .pricing-main { width: calc(100% - 32px); padding-top: 84px; }
  .rate-heading, .rate-row { gap: 12px; }
}

@media (max-height: 600px) {
  .bio { margin-top: 16px; }
  .waitlist-shell { min-height: 82px; margin-top: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .home-page > main,
  .about-page > main,
  .pricing-page > main { animation: none; }
  body.page-exit > main { transition: none; }
  .pricing-panel { animation: none; }
}

/* Home and pricing share one persistent canvas; never fade the document. */
.home-page > main, .pricing-page > main, .shared-shell > main, .shared-shell .pricing-panel { animation: none; }
.shared-shell .home-main { position: fixed; inset: 0; width: 100%; height: 100lvh; z-index: 0; }
.shared-shell .pricing-main { z-index: 1; }
.shared-shell .content { transition: none; }
.shared-shell [hidden] { display: none !important; }
.shared-shell .site-nav { z-index: 3; }
.shared-shell .site-nav { width: calc(16ch + 28px); overflow: hidden; }
.shared-shell .site-nav a { flex: 0 0 calc(8ch + 8px); text-align: right; }
.shared-shell .nav-outgoing { position: absolute; inset: 0; display: flex; gap: 12px; pointer-events: none; }

/* Uniformly shrink each tile while preserving its top-center position. */
#map-panel, .mcp-tile {
  scale: 0.9;
  transform-origin: top center;
}

.future-products { color: #fff; }
#map-panel { padding-bottom: calc(22px + var(--line-alignment, 0px)); }

.rate-row span.rate-high { color: #c22946; }
.rate-row span.rate-mid { color: #c26b30; }
.rate-row span.rate-discount { color: #56915c; }
.rate-row span.rate-early { color: #38d64d; }
.tile-title-row { flex-wrap: wrap; }
.early-saving strong { font-weight: 600; }

/* The badge sits in the reserved title space, without shifting price rows. */
.tile-title-row { position: relative; display: block; font-size: clamp(11px, 1.8vw, 18px); }
.tile-title-row .early-saving {
  position: absolute;
  left: 0;
  top: calc(clamp(11px, 1.8vw, 18px) * 1.95 + 4px);
  transform: translateY(-50%);
}
.infinity-symbol {
  display: inline-block;
  width: 1.45em;
  height: 0.72em;
  vertical-align: -0.06em;
  color: inherit;
  overflow: visible;
}
.infinity-symbol path { fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }

.map-coming-soon {
  font-size: clamp(12px, 2.25vw, 29px);
  -webkit-user-select: none;
  user-select: none;
  cursor: default;
}
@media (max-width: 600px) {
  .map-coming-soon { font-size: clamp(10px, 3.25vw, 14.5px); }
}

.future-products {
  position: relative;
  display: grid;
  grid-auto-rows: var(--background-spacing, 14px);
  row-gap: var(--background-spacing, 14px);
  font-size: min(11px, calc(var(--background-spacing, 14px) * 0.8));
  line-height: 1;
}
.future-products p { margin: 0; display: grid; place-items: center; }

.legal-page,
.commerce-page { min-height: 100%; overflow-y: auto; background: var(--panel); }
.legal-main,
.commerce-main {
  position: static;
  width: min(100% - 40px, 720px);
  height: auto;
  min-height: 100vh;
  margin: 0 auto;
  display: block;
  padding: 92px 0 72px;
}
.legal-main h1,
.commerce-main > section > h1 { font-size: clamp(32px, 6vw, 64px); line-height: 1; margin: 0 0 40px; }
.legal-main h2 { margin: 48px 0 16px; font-size: 17px; }
.legal-main h3 { margin: 32px 0 14px; font-size: 14px; }
.legal-main p,
.legal-main li,
.commerce-main > section > p { color: #d1d3d3; font-size: 12px; line-height: 1.75; }
.legal-main a,
.commerce-main a,
#privacy a { color: var(--text); }
.legal-main table { width: 100%; margin: 24px 0; border-collapse: collapse; font-size: 10px; text-align: left; }
.legal-main th, .legal-main td { padding: 10px 8px; border-bottom: 1px solid #303234; }
.legal-list { display: grid; gap: 1px; background: #303234; }
.legal-list a { padding: 18px; background: #000; text-decoration: none; }
.legal-list a:hover { color: var(--accent); }
.commerce-main > section { padding: 32px; border: 1px solid #505254; border-radius: 10px; background: #000; }
.commerce-kicker { color: var(--accent) !important; }
.commerce-main #purchase { margin-top: 32px; }
.terms-acceptance { display: grid; grid-template-columns: 18px 1fr; gap: 12px; align-items: start; margin-bottom: 24px; color: #d1d3d3; font-size: 11px; line-height: 1.6; }
.terms-acceptance input { width: 16px; height: 16px; min-height: 0; margin: 2px 0 0; accent-color: var(--accent); }
#auth { margin: 28px 0; }
#auth h1, #auth h2 { font-size: 20px; line-height: 1.3; margin: 0; letter-spacing: normal; }
#auth .cl-rootBox, #auth .cl-cardBox { width: 100%; max-width: 100%; }
#commerce-status { min-height: 20px; margin: 18px 0 0; color: var(--muted); }
#account-status { margin-top: 28px; color: var(--text); font-size: 13px; line-height: 1.6; }

.shared-shell .about-main { animation: none; }

.pricing-account-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 18px; margin-top: 12px; font-size: 10px; }
.pricing-account-links a { color: var(--muted); }

/* Documents scroll independently of the fixed home/pricing presentation. */
html.legal-document, html.commerce-document { height: auto; overflow-y: auto; overscroll-behavior: auto; }
.legal-page, .commerce-page { height: auto; overflow: visible; }
html.legal-document, .legal-page { background: #fff; color: #111; font-family: Arial, Helvetica, sans-serif; }
.legal-main { width: min(100% - 40px, 720px); font-size: 14px; line-height: 1.6; }
.legal-main h1 { font-size: 24px; line-height: 1.25; margin-bottom: 28px; font-weight: 400; letter-spacing: normal; }
.legal-main h2 { font-size: 17px; margin: 32px 0 12px; font-weight: 400; letter-spacing: normal; }
.legal-main h3 { font-size: 14px; margin: 24px 0 10px; font-weight: 400; letter-spacing: normal; }
.legal-main p, .legal-main li { color: #111; font-size: 14px; line-height: 1.6; }
.legal-main strong { font-weight: 500; }
.legal-page a { color: #0645ad; text-decoration: underline; }
.legal-page .site-nav { background: #fff; font-family: Arial, Helvetica, sans-serif; }
.legal-list { display: block; background: none; }
.legal-list a { display: block; padding: 8px 0; background: none; }
.legal-list a:hover { color: #063281; }
.legal-main table { font-size: 12px; }
.legal-main th, .legal-main td { border-color: #ddd; font-weight: 400; }
.purchase-notice { font-size: 11px; line-height: 1.6; color: #d1d3d3; margin-top: 16px; }

.unavailable-tag { color: #aaa; border-color: #777; }
#map-panel .tile-title-row h2 { min-height: 2.6em; margin-bottom: 8px; }

/* Persistent account access; page-transition links keep their existing movement. */
.shared-shell .site-nav { width: auto; overflow: visible; }
.site-nav .account-nav { flex: 0 0 24px; width: 24px; padding: 4px; display: inline-flex; align-items: center; justify-content: center; }
.account-nav svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.account-controls { display: flex; gap: 16px; margin: 16px 0; }
.account-controls button { background: none; color: inherit; border: 0; padding: 0; font: inherit; text-decoration: underline; cursor: pointer; }

.recovery-link { background: none; color: inherit; border: 0; padding: 12px 0; font: inherit; text-decoration: underline; cursor: pointer; }
.recovery-form { display: grid; gap: 16px; }
.recovery-form label { display: grid; gap: 8px; margin-bottom: 12px; }
.recovery-form input { width: 100%; box-sizing: border-box; }

/* Compact account settings use the same quiet, black tiles as pricing. */
[data-account-page] .commerce-main { width: min(100% - 40px, 760px); padding-top: 110px; }
[data-account-page] .commerce-main > section { padding: 0; border: 0; background: none; }
[data-account-page] .commerce-main h1 { text-align: center; font-size: clamp(32px, 5vw, 48px); margin-bottom: 32px; }
[data-account-page] #auth { width: 100%; margin: 0 auto; }
.account-tiles { display: grid; grid-template-columns: 1.15fr 1fr; gap: 14px; text-align: left; }
.account-tile { background: #000; border: 1px solid #505254; border-radius: 12px; padding: 24px; min-width: 0; }
#account-settings .account-tile h2 { font-size: 15px; font-weight: 500; margin: 0 0 24px; }
.account-tile p, .account-tile li, .account-tile label { font-size: 12px; line-height: 1.6; }
.account-email-list { list-style: none; padding: 0; margin: 0 0 24px; }
.account-email-list li { padding: 0 0 12px; overflow-wrap: anywhere; }
.account-email-list small { display: block; color: #999; font-size: 10px; margin-top: 4px; }
.account-tile button { background: transparent; border: 1px solid #505254; border-radius: 999px; color: var(--text); font: inherit; font-size: 11px; letter-spacing: 0; text-transform: none; padding: 8px 12px; min-height: 34px; cursor: pointer; }
.account-tile button:hover { border-color: #eee; background: #101112; }
.account-tile button:disabled { opacity: .5; cursor: wait; }
.account-tile button:focus-visible, .account-tile input:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.account-tile form { margin-top: 20px; }
.account-tile form[hidden] { display: none; }
.account-tile label { display: block; margin-bottom: 12px; color: #aaa; }
.account-tile input { display: block; width: 100%; min-width: 0; box-sizing: border-box; margin-top: 6px; padding: 9px 10px; font: inherit; font-size: 12px; border: 1px solid #444; border-radius: 6px; background: #090a0b; color: #fff; }
.account-tile [role=status]:empty { display: none; }
.account-tile [role=status] { margin: 12px 0 0; color: #ddd; }
.account-tile .password-mask { color: #aaa; letter-spacing: 3px; margin: 0 0 36px; }
.account-small { padding-block: 20px; }
.account-tile .delete-confirm { border-color: #c22946; }
@media (max-width: 600px) { .account-tiles { grid-template-columns: 1fr; } [data-account-page] .commerce-main { padding-top: 90px; } }
@media (prefers-reduced-motion: no-preference) { .account-tiles { animation: tile-expand 160ms ease-out; } }

.account-tile { display: flex; flex-direction: column; }
.account-tile > button { align-self: flex-start; margin-top: auto; }

/* Two stable page-link slots plus an account slot that never moves. */
.shared-shell .site-nav { display: grid; grid-template-columns: 8ch 8ch 28px; gap: 12px; align-items: center; width: auto; overflow: visible; }
.shared-shell .site-nav > a:not(.account-nav) { width: 100%; box-sizing: border-box; text-align: right; white-space: nowrap; }
.shared-shell .site-nav > .account-nav { justify-self: end; }

/* Account-only controls; legal page styles are intentionally unaffected. */
[data-account-page] #auth[hidden] { display: none !important; }
.account-tile [data-toggle="delete"], .account-tile .delete-confirm, .account-confirm button.delete-confirm { background: #651e28; border-color: #8b303d; color: #fff; }
.account-tile [data-toggle="delete"]:hover, .account-tile .delete-confirm:hover, .account-confirm button.delete-confirm:hover { background: #7a2532; }
.account-confirm { width: min(360px, calc(100vw - 48px)); box-sizing: border-box; padding: 24px; background: #080909; border: 1px solid #505254; border-radius: 12px; color: #f4f4f1; font: 12px/1.6 "IBM Plex Mono", monospace; }
.account-confirm::backdrop { background: rgb(0 0 0 / 65%); }
.account-confirm h2 { font-size: 17px; font-weight: 500; margin: 0 0 16px; }
.account-confirm p { margin: 0 0 24px; }
.account-confirm form > div { display: flex; justify-content: flex-end; gap: 10px; }
.account-confirm button, [data-account-page] .recovery-link { border: 1px solid #505254; border-radius: 999px; background: #000; color: #f4f4f1; padding: 10px 16px; font: inherit; font-size: 12px; text-decoration: none; cursor: pointer; }
.account-confirm button:focus-visible, [data-account-page] .recovery-link:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
[data-account-page] #password-recovery { max-width: 400px; margin: 20px auto 0; text-align: center; }
[data-account-page] .recovery-link:hover { border-color: #f4f4f1; background: #111; }
[data-account-page] .recovery-form { text-align: left; }

/* Mobile pricing uses readable, full-width cards and natural page scrolling. */
@media (max-width: 699px) {
  html.pricing-document { overflow-x: hidden; overflow-y: auto; }
  body.pricing-page { height: auto; min-height: 100dvh; overflow: visible; }
  .pricing-page .pricing-main { width: calc(100% - 32px); padding-bottom: 32px; }
  .mcp-tiles { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .mcp-tile { scale: 1; width: 100%; min-width: 0; box-sizing: border-box; padding: 24px; }
  .mcp-tile h2 { font-size: 20px; min-height: 2.6em; }
  .mcp-tile .tile-price { font-size: 32px; }
  .mcp-tile .tile-price span, .mcp-tile .rate-row, .mcp-tile .rate-label, .mcp-tile .rate-unit { font-size: 12px; }
  .mcp-tile .rate-row { flex-wrap: nowrap; gap: 8px; }
  .mcp-tile .rate-row span:last-child { width: auto; text-align: right; }
  .mcp-tile .early-term { font-size: 11px; white-space: normal; }
  .mcp-tile .tile-title-row .early-saving { top: 43px; font-size: 10px; padding: 3px 7px; }
}

[data-purchase-page] .commerce-main { width: min(100% - 32px, 480px); padding-top: 88px; }
[data-purchase-page] .commerce-main > section { padding: 28px; border-radius: 12px; }
[data-purchase-page] h1 { font-size: 24px; line-height: 1.3; margin: 0 0 24px; }
[data-purchase-page] .purchase-price { font-size: 42px; margin: 0 0 24px; color: #f4f4f1; }
[data-purchase-page] .purchase-price span { font-size: 12px; color: #a8acae; }
[data-purchase-page] .purchase-rate { font-size: 13px; line-height: 1.8; }
[data-purchase-page] .purchase-secondary { font-size: 11px; color: #a8acae; }
[data-purchase-page] .purchase-details { margin: 24px 0; font-size: 11px; line-height: 1.7; }
[data-purchase-page] .purchase-details summary { cursor: pointer; }
[data-purchase-page] .purchase-details p { font-size: 11px; }
[data-purchase-page] .terms-acceptance, [data-purchase-page] .purchase-notice { font-size: 10px; line-height: 1.65; }
[data-purchase-page] .purchase-continue { width: 100%; border-radius: 999px; text-transform: none; font-size: 12px; }
[data-purchase-page] .purchase-continue:disabled { opacity: .45; cursor: not-allowed; }
[data-purchase-page] #auth .cl-card { box-shadow: none; }
.waitlist-shell[hidden] { display: none !important; }

/* Keep text readable while using the site’s translucent selection color. */
::selection { background-color: rgb(92 190 219 / 35%); }

/* Purchase workflow: scoped so account and legal pages retain their layouts. */
.purchase-workflow { background:#1b1c1d; overflow:auto; min-height:100vh; }
.checkout-main { position:relative; inset:auto; height:auto; display:block; place-items:normal; width:min(1120px,calc(100% - 48px)); margin:130px auto 60px; }
.checkout-heading { width:100%; display:flex; align-items:baseline; justify-content:space-between; gap:24px; }
.checkout-heading h1 { font-size:clamp(20px,3vw,30px); font-weight:400; margin:0; }
.checkout-heading p { font-size:24px; white-space:nowrap; }
.checkout-heading p span { display:block; font-size:12px; color:#bbb; margin-top:8px; }
.checkout-progress { width:100%; list-style:none; padding:0; margin:28px 0 32px; display:flex; gap:8px; }
.checkout-progress li { flex:1; border-top:2px solid #626466; padding:12px 0; color:#aeb0b1; font-size:12px; }
.checkout-progress li[aria-current], .checkout-progress li.done { border-color:#fff; color:#fff; }
.checkout-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:18px; align-items:start; }
.reading-tile,.payment-tile { background:#090909; border:1px solid #454545; border-radius:7px; overflow:hidden; min-width:0; }
.reading-tile>header,.payment-tile>header { display:flex; justify-content:space-between; align-items:center; padding:20px 24px; border-bottom:1px solid #333; gap:12px; }
.checkout-grid h2 { font-size:15px; font-weight:400; margin:0; }
.reading-tile header span { font-size:11px; color:#aaa; }
#agreement-scroll { max-height: min(650px,70vh); overflow:auto; overscroll-behavior:contain; padding:24px; scrollbar-color:#777 #151515; color:#ddd; font:14px/1.65 Arial,sans-serif; }
#agreement-scroll:focus-visible { outline:1px solid white; outline-offset:-2px; }
#agreement-scroll h1,#agreement-scroll h2,#agreement-scroll h3 { font:500 16px/1.4 Arial,sans-serif; margin:24px 0 14px; }
#agreement-scroll a { color:#8fc9ea; }
#agreement-scroll section { border-top:1px solid #353535; margin-top:28px; padding-top:12px; }
#agreement-scroll table { display:block; max-width:100%; overflow:auto; border-collapse:collapse; font-size:12px; }
#agreement-scroll td,#agreement-scroll th { padding:8px; border:1px solid #444; }
#agreement-scroll p,#agreement-scroll li { overflow-wrap:anywhere; }
.checkout-summary h3 { margin-top:0!important; }
#purchase-consent { border-top:1px solid #444; padding-top:24px; margin-top:32px; }
#purchase-consent label { display:flex; gap:12px; margin:0 0 20px; font-size:13px; align-items:flex-start; }
#purchase-consent input { flex:none; margin-top:4px; accent-color:white; width:16px; height:16px; }
#purchase-consent button { width:100%; border-radius:4px; background:#f5f5f3; color:#111; padding:14px; border:0; font:14px inherit; cursor:pointer; }
#purchase-consent button:disabled { opacity:.4; cursor:default; }
#purchase-consent .purchase-notice { font:11px/1.6 Arial,sans-serif; }
.payment-tile { min-height:250px; }
#payment-placeholder { padding:36px 24px; color:#aaa; font-size:13px; line-height:1.6; }
#stripe-checkout { background:white; }
.purchase-workflow #commerce-status { font-size:13px; margin-top:20px; }
@media(max-width:720px) { .checkout-main { position:relative; inset:auto; height:auto; display:block; width:calc(100% - 32px); margin-top:105px; } .checkout-grid { grid-template-columns:1fr; } .checkout-heading { align-items:start; } .checkout-heading h1 { max-width:190px; } .checkout-heading p { margin:0; font-size:22px; } .checkout-heading p span { font-size:10px; } #agreement-scroll { max-height:60vh; padding:20px; } }

/* A shared frame keeps every purchase stage in the same visual position. */
.purchase-workflow { display:flex; align-items:center; padding:64px 0 32px; min-height:100dvh; }
.purchase-workflow .checkout-main { width:min(1040px,calc(100% - 64px)); margin:0 auto; }
.checkout-heading { align-items:center; gap:20px; }
.checkout-heading h1 { font-size:24px; letter-spacing:-.5px; }
.checkout-heading p { margin:0; text-align:right; font-size:24px; }
.checkout-progress { margin:24px 0; }
.checkout-progress li { padding:10px 0; }
.checkout-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.reading-tile,.payment-tile { height:clamp(300px,calc(100dvh - 320px),560px); display:flex; flex-direction:column; }
.reading-tile>header,.payment-tile>header { flex:none; padding:18px 22px; }
#agreement-scroll { flex:1; min-height:0; max-height:none; padding:22px; font-size:13px; }
#stripe-checkout { overflow:auto; min-height:0; flex:1; }
#payment-placeholder { margin:auto; max-width:260px; text-align:center; padding:24px; }
.identity-tile { width:min(460px,100%); min-height:300px; margin:0 auto; padding:36px; border:1px solid #414243; border-radius:7px; background:#090909; display:flex; flex-direction:column; justify-content:center; text-align:center; }
.identity-tile[hidden],#preview-controls[hidden],.purchase-workflow [hidden] { display:none!important; }
.identity-eyebrow { color:#999; font-size:11px; margin:0 0 20px; }
.identity-tile h2 { font-size:18px; font-weight:400; line-height:1.5; margin:0; overflow-wrap:anywhere; }
#identity-email { color:#aaa; font-size:12px; overflow-wrap:anywhere; }
.identity-actions { display:grid; gap:12px; margin-top:24px; }
.identity-actions button { font:12px/1.5 inherit; text-transform:none; padding:12px 16px; border-radius:4px; cursor:pointer; border:0; background:#f4f4f1; color:#111; overflow-wrap:anywhere; }
.identity-actions #identity-no { background:transparent; color:#aaa; font-size:11px; }
.purchase-workflow #auth { width:min(400px,100%); margin:0 auto; }
.purchase-workflow #password-recovery { text-align:center; }
#preview-controls { display:flex; justify-content:center; align-items:center; gap:12px; margin:0 0 20px; font-size:10px; color:#888; }
#preview-controls button { border:1px solid #444; border-radius:4px; padding:6px 10px; background:#101112; color:#ddd; font:inherit; text-transform:none; cursor:pointer; }
.payment-design-preview { padding:22px; color:#242424; background:#f5f5f3; font:13px/1.5 Arial,sans-serif; }
.payment-design-preview h3 { font-size:18px; font-weight:400; margin:14px 0 20px; }
.preview-caption { font-size:10px; color:#777; }
.preview-field { padding:12px; border:1px solid #d3d3d0; border-radius:4px; color:#888; margin:6px 0 14px; }
.preview-field span { display:block; border-top:1px solid #ddd; padding-top:10px; margin-top:10px; }
.payment-design-preview button { background:#171819; color:#fff; padding:13px; border:0; border-radius:4px; width:100%; font:13px Arial,sans-serif; }
.purchase-workflow #commerce-status:empty { display:none; }
@media(max-width:720px) { .purchase-workflow { padding:80px 0 24px; align-items:flex-start; } .purchase-workflow .checkout-main { width:calc(100% - 32px); } .checkout-heading h1 { font-size:19px; } .checkout-heading p { font-size:22px; } .checkout-grid { grid-template-columns:1fr; } .reading-tile,.payment-tile { height: min(570px,65dvh); } .payment-tile.stage-muted { display:none; } body[data-checkout-stage="2"] .reading-tile { display:none; } #preview-controls { flex-wrap:wrap; gap:8px; } .identity-tile { padding:28px; } }

#stripe-checkout:empty { display:none; }
#preview-controls button { min-height:28px; height:28px; }

.payment-design-preview { padding:18px 22px; font-size:12px; }
.payment-design-preview h3 { margin:10px 0 14px; font-size:16px; }
.payment-design-preview .preview-field { padding:8px 10px; margin:4px 0 10px; }
.payment-design-preview .preview-field span { padding-top:6px; margin-top:6px; }
/* Three quiet stages: the content yields to a single completion mark. */
.purchase-workflow { padding:72px 24px 44px; }
.purchase-workflow .checkout-main { width:min(1440px,100%); margin:auto; }
.purchase-workflow .checkout-progress { position:fixed; z-index:4; top:14px; left:24px; width:calc(100% - 270px); margin:0; gap:16px; }
.purchase-workflow .checkout-progress li { border-top:0; border-bottom:2px solid #454648; padding:8px 0 10px; transition:border-color 260ms ease,color 260ms ease; }
.purchase-workflow .checkout-progress li[aria-current] { border-color:white; color:white; }
.checkout-three-tiles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; align-items:center; }
.purchase-workflow #purchase,.purchase-workflow #purchase[hidden],.purchase-workflow .checkout-grid { display:contents!important; }
.purchase-workflow .stage-tile { position:relative; width:100%; height:min(650px,calc(100dvh - 156px)); min-height:0; margin:0; background:#050505; border:1px solid #373839; border-radius:7px; overflow:hidden; transition:opacity 300ms ease,transform 360ms cubic-bezier(.22,.61,.36,1),border-color 300ms ease; }
.stage-tile.is-upcoming { opacity:0; transform:translateY(9px); pointer-events:none; }
.stage-content { height:100%; display:flex; flex-direction:column; opacity:1; transition:opacity 220ms ease,transform 300ms ease; }
.stage-tile.is-complete .stage-content { opacity:0; transform:translateY(-5px); pointer-events:none; }
.stage-check { position:absolute; inset:0; display:grid; place-items:center; opacity:0; transform:scale(.92); pointer-events:none; transition:opacity 280ms ease 80ms,transform 350ms ease 80ms; }
.stage-check svg { width:58px; height:58px; fill:none; stroke:#fff; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.is-complete .stage-check { opacity:1; transform:scale(1); }
.purchase-workflow .stage-tile .stage-content>header { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:20px; border-bottom:1px solid #303132; flex:none; }
.purchase-workflow .stage-tile h2 { font-size:14px; font-weight:400; margin:0; }
.purchase-workflow .stage-content>header span { font-size:10px; color:#aaa; }
.purchase-workflow .identity-tile { border:0; border-radius:0; margin:auto; padding:24px; width:100%; min-height:0; background:transparent; }
.purchase-workflow #auth { margin:auto; max-height:100%; overflow:auto; }
.purchase-workflow .account-stage .stage-content { justify-content:center; }
.purchase-workflow #agreement-scroll { padding:20px; }
.purchase-workflow #preview-controls { position:fixed; bottom:9px; left:0; width:100%; margin:0; z-index:5; }
.purchase-workflow #commerce-status { position:static; margin:0; text-align:center; }
.purchase-workflow #payment-placeholder { margin:auto; }
.purchase-workflow .stage-tile { animation:purchase-tile-enter 360ms ease both; }
@keyframes purchase-tile-enter { from { opacity:0; translate:0 6px; } to { opacity:1; translate:0 0; } }
.purchase-workflow .stage-tile.is-upcoming { animation:none; }
@media(max-width:900px) {
 .purchase-workflow { padding:104px 16px 52px; }
 .purchase-workflow .checkout-progress { top:48px; left:16px; width:calc(100% - 32px); gap:12px; }
 .checkout-three-tiles { display:block; }
 .purchase-workflow .stage-tile { height:calc(100dvh - 164px); max-height:700px; }
 .purchase-workflow .stage-tile:not(.is-current) { display:none; }
 .purchase-workflow .stage-tile.is-current { display:block; }
 .purchase-workflow[data-checkout-stage="3"] .checkout-three-tiles { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
 .purchase-workflow[data-checkout-stage="3"] .stage-tile { display:block; height:200px; }
 .purchase-workflow .stage-tile .stage-check svg { width:44px; }
 .purchase-workflow #preview-controls { gap:5px; }
 .purchase-workflow #preview-controls span { display:none; }
}
@media(prefers-reduced-motion:reduce) { .purchase-workflow .stage-tile,.stage-content,.stage-check,.purchase-workflow .checkout-progress li { animation:none; transition:none; } }

/* Full-width progress and quiet agreement tools. */
.purchase-workflow .checkout-progress { top:50px; left:24px; width:calc(100% - 48px); }
.purchase-workflow { padding-top:106px; transition:background-color 1000ms ease; }
.purchase-workflow .stage-tile { height:min(620px,calc(100dvh - 190px)); }
#copy-agreements { align-self:flex-end; flex:none; margin:10px 14px 0; padding:4px 7px; min-height:24px; border:0; background:transparent; color:#aaa; font:11px 'IBM Plex Mono',monospace; text-transform:none; cursor:pointer; }
#copy-agreements:hover { color:#fff; }
.purchase-workflow #agreement-scroll { padding-top:4px; }
#agreement-content>section:first-child { border-top:0; margin-top:0; padding-top:0; }
#agreement-content>section:first-child h1 { margin-top:8px; }
.purchase-workflow.purchase-darkening { background:#000; }
.purchase-workflow.purchase-finished > * { opacity:0; transition:opacity 800ms ease; pointer-events:none; }
@media(max-width:900px) { .purchase-workflow .checkout-progress { left:16px; width:calc(100% - 32px); } }
@media(prefers-reduced-motion:reduce) { .purchase-workflow,.purchase-workflow.purchase-finished > * { transition:none; } }

/* Isolated purchase page: full-bleed progress, no site navigation. */
.purchase-workflow .checkout-progress { top:0; left:0; right:0; width:100%; gap:0; }
.purchase-workflow .checkout-progress li { padding:18px 24px 14px; }
.purchase-workflow { padding-top:76px; }
.purchase-preview-return { position:fixed; z-index:20; bottom:16px; left:50%; transform:translateX(-50%); padding:10px 16px; background:#141414; color:#ddd; border:1px solid #444; border-radius:4px; font:11px 'IBM Plex Mono',monospace; text-decoration:none; white-space:nowrap; }
@media(max-width:900px) { .purchase-workflow .checkout-progress { top:0; left:0; width:100%; } .purchase-workflow .checkout-progress li { padding:16px 12px 12px; } .purchase-workflow { padding-top:76px; } }

.purchase-footer { position:fixed; bottom:42px; left:24px; right:24px; display:flex; flex-direction:column; align-items:center; gap:10px; }
.purchase-help { display:flex; flex-wrap:wrap; justify-content:center; gap:6px 18px; font-size:10px; }
.purchase-help a,.purchase-help button { color:#a6a6a6; background:none; border:0; min-height:0; padding:0; font:inherit; text-transform:none; text-decoration:none; cursor:pointer; }
.purchase-help a:hover,.purchase-help button:hover { color:white; }
body[data-checkout-stage="0"] #review-agreement { display:none; }
.purchase-finished .purchase-help { opacity:0; pointer-events:none; }

/* Local preview controls stay outside the checkout layout and never render live. */
.purchase-workflow #preview-controls { bottom:12px; width:max-content; max-width:calc(100% - 16px); left:50%; transform:translateX(-50%); padding:6px; background:#080808; border:1px solid #555; border-radius:6px; z-index:50; gap:5px; }
.purchase-workflow #preview-controls button { color:#fff; }

/* The completion curtain also covers fixed descendants and embedded surfaces. */
.purchase-workflow::after { content:''; position:fixed; inset:0; z-index:9999; background:#000; opacity:0; pointer-events:none; transition:opacity 800ms ease; }
.purchase-workflow.purchase-finished::after { opacity:1; }
@media(prefers-reduced-motion:reduce) { .purchase-workflow::after { transition:none; } }

/* Resolve authentication and saved progress before revealing a stage. */
.purchase-loading .checkout-progress,.purchase-loading .purchase-help,
.purchase-loading #commerce-status,.purchase-loading #preview-controls,
.purchase-loading .stage-content,.purchase-loading .stage-check { visibility:hidden!important; }
.purchase-loading .checkout-three-tiles { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr)); }
.purchase-loading .stage-tile { display:block!important; opacity:1; transform:none; outline:none;
  border-color:#343536; background:#222324; animation:checkout-skeleton-pulse 1600ms ease-in-out infinite!important; }
@keyframes checkout-skeleton-pulse { 0%,100% { opacity:.45; } 50% { opacity:.85; } }
@media(max-width:900px) { .purchase-loading .stage-tile { height:min(440px,55dvh); } }
@media(prefers-reduced-motion:reduce) { .purchase-loading .stage-tile { animation:none!important; opacity:.65; } }


/* Reserve footer space in layout; status text must never float over a tile. */
.purchase-workflow .purchase-footer { position:static; inset:auto; margin-top:18px; min-height:52px; padding-bottom:12px; flex:none; gap:12px; }
.purchase-workflow #commerce-status { flex:none; max-width:100%; min-height:20px; line-height:1.5; overflow-wrap:anywhere; }
.purchase-workflow .purchase-help { flex:none; line-height:1.5; }
.purchase-workflow .stage-tile { height:min(620px,calc(100dvh - 240px)); }

/* Purchase completion: finite opacity/transform transitions, no animation loop. */
.purchase-thanks { position:fixed; inset:0; z-index:10001; color:#fff; outline:none; }
.purchase-thanks-message { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:min(680px,calc(100% - 40px)); text-align:center; }
.purchase-thanks-target { height:58px; margin-bottom:32px; }
.purchase-thanks-copy p { position:relative; margin:0 0 12px; font-size:clamp(14px,2vw,21px); line-height:1.6; font-weight:400; }
.purchase-thanks-copy p:first-child { font-size:clamp(24px,3vw,32px); margin-bottom:20px; }
.purchase-thanks-reserve { visibility:hidden; }
.purchase-thanks-typed { position:absolute; inset:0; }
.purchase-thanks-check { position:fixed; fill:none; stroke:white; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; transition:transform 700ms cubic-bezier(.4,0,.2,1); }
.purchase-thanks-start .stage-check { visibility:hidden; }
.purchase-thanks-fading > :not(.purchase-thanks) { opacity:0; transition:opacity 800ms ease; pointer-events:none; }
.purchase-thanks-hint { position:absolute; top:100%; width:100%; margin:24px 0 0; color:#999; font-size:12px; opacity:0; transition:opacity 600ms ease; }
.purchase-thanks-hint.is-visible { opacity:1; }
@media(prefers-reduced-motion:reduce) { .purchase-thanks-check,.purchase-thanks-hint,.purchase-thanks-fading > :not(.purchase-thanks) { transition:none; } }

/* Keep the pricing footer text centered between the same lines as the labels. */
@media(min-width:700px) {
 .pricing-account-links { position:relative; align-items:center; min-height:var(--background-spacing,14px); line-height:1; font-size:min(10px,calc(var(--background-spacing,14px) * .8)); }
}

/* Each public destination gets its own content-sized navigation column. */
.shared-shell.contact-nav .site-nav {
 grid-template-columns:none;
 grid-auto-flow:column;
 grid-auto-columns:max-content;
 width:max-content;
 max-width:calc(100vw - 28px);
 gap:clamp(8px,1.2vw,12px);
}
.shared-shell.contact-nav .site-nav > a:not(.account-nav) { width:auto; }
@media(max-width:380px) { .shared-shell.contact-nav .site-nav { font-size:12px; } }

/* Center signed-out Clerk cards; keep account settings and short-screen scrolling intact. */
[data-account-page] .commerce-main:has(#auth:not([hidden])) {
 display:flex; align-items:center; justify-content:center;
 min-height:100svh; padding:160px 0;
}
[data-account-page] .commerce-main:has(#auth:not([hidden])) > section {
 position:relative; width:min(480px,100%);
}
[data-account-page] .commerce-main:has(#auth:not([hidden])) > section > h1 {
 position:absolute; left:0; right:0; bottom:calc(100% + 32px); margin:0;
}
[data-account-page] #account-status:empty,
[data-account-page] #commerce-status:empty { display:none; }
