@charset "UTF-8";
:root {
  --header-size: 44px;
  --header-padding: 4px;
}

body {
  display: flex;
  position: relative;
  overflow: hidden;

  width: 100dvw;
  height: 100dvh;
}

header {
  display: flex;
  position: relative;
  flex-direction: column;
  padding: 0 0 0 var(--header-padding);

  width: calc(var(--header-size) + var(--header-padding));
  height: 100%;

  background-color: var(--anti);
}

header::before {
  content: "";
  
  display: block;
  position: absolute;
  left: 0;
  top: 0;

  width: var(--header-padding);
  height: 100%;

  background-color: var(--accent);
}

header button {
  align-items: center;
  justify-content: center;

  min-width: unset;
  min-height: unset;
  width: var(--header-size);
  height: var(--header-size);

  border-radius: unset;
  --icon: var(--main);
}

.logo { mask: no-repeat center center/auto 100% url("../assets/essentials/logomark.svg"); }

.logotype {
  position: absolute;
  left: 0;
  top: 0;

  width: 130px;
  height: 44px;

  background: no-repeat 10px center/auto 20px url("../assets/essentials/logotype.svg");
}

main {
  display: flex;
  position: relative;
  flex-direction: column;
  padding: 100px 8px;
  gap: 15px;

  width: 100%;
  height: 100%;
  flex: 1;
}

#title {
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;

  width: 100%;
  height: max-content;
}

#cards {
  display: flex;
  position: relative;
  
  width: 100%;
  height: 100%;
  flex: 1;
}

footer {
  display: flex;
  position: relative;
  align-items: center;

  width: 100%;
  height: max-content;

  font-size: small;
  color: var(--font-sub);
}

footer span {
  font-size: inherit;
  color: inherit;
}

#backdrop {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;

  width: 100vw;
  height: 100vh;

  background-image: linear-gradient(90deg, oklch(0% 0 0/0), oklch(0% 0 0/0), oklch(0% 0 0/0.03));
  mask: repeat center/80px url("../assets/images/backdrop.svg");
  pointer-events: none;
}

@media screen and (max-width: 900px) {
  body { flex-direction: column; }

  header {
    padding: var(--header-padding) 0 0 0;

    width: 100%;
    height: calc(var(--header-size) + var(--header-padding));
  }

  header::before {
    width: 100%;
    height: var(--header-padding);
  }

  main {
    padding: 130px 8px 100px;
  }

  #backdrop { background-image: linear-gradient(oklch(0% 0 0/0), oklch(0% 0 0/0), oklch(0% 0 0/0.03)); }
}