.panel {
  background-color: var(--color-surface);
  border: var(--border);
  color: var(--color-ink);
  border-radius: var(--panel-border-radius, 1em);
  padding: calc(var(--block-space) * 2);
  /* position: relative; */

  html[data-theme="dark"] & {
    --panel-border-color: var(--color-gray-dark);
  }

  @media (prefers-color-scheme: dark) {
    html:not([data-theme]) & {
      --panel-border-color: var(--color-gray-dark);
    }
  }
}

.panel--small {
  display: flex;
  background-color: var(--color-surface);
  border: var(--border);
  color: var(--color-ink);
  border-radius: var(--border-radius);
  padding: var(--space-xs);

  @media (min-width: 50rem) {
    padding: var(--space-xs) var(--space-m);
  }
}

.panel--narrow {
  inline-size: var(--panel-size, 40ch);
  max-inline-size: calc(100% - var(--inline-space) * 2);
}

/* Info box — used for wizard info/legal/warning panels */
.info-box {
  border-radius: var(--panel-border-radius, 1em);
  padding-block: var(--block-space);
  padding-inline: var(--inline-space-double);
  font-size: var(--font-small-responsive);

  & > :first-child { margin-block-start: 0; }
  & > :last-child { margin-block-end: 0; }
}

.panel__close {
  border: 0;
  font-size: 0.6rem;
  inset: calc(var(--block-space) / 3) calc(var(--block-space) / 3) auto auto;
  position: absolute;
}
