@import "/node_modules/@ape-egg/vibe/vibe.css";
@import "/face/css/icons.css";

body {
  margin: 0;
  height: 100dvh;
  display: flex;
  background: var(--background);
}

body.dark {
  background: linear-gradient(to top, #1a2233, #0c0f16 60%);
}

body > component,
body > :where(component) > component {
  display: flex;
  flex: 1;
  min-width: 0;
}

v-readback {
  max-width: 640px;
}

v-network-map {
  max-width: 1000px;
}

gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 148px), 1fr));
  width: 100%;
}

[font-mono] {
  font-family: var(--font-mono);
}

header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: calc(var(--unit) * 3) calc(var(--unit) * 5);
  z-index: 10;
  pointer-events: none;
  mix-blend-mode: difference;
  color: #fff;
}

header logo,
header a {
  pointer-events: auto;
  color: inherit;
  text-decoration: none;
}

logo {
  display: flex;
  align-items: flex-end;
  gap: calc(var(--unit) * 1);
  font-family: var(--font-mono);
  font-size: 17px;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1;
}

logo dot {
  width: 5px;
  height: 5px;
  border-radius: 100%;
  background: #7ee787;
  margin-bottom: 3px;
}
