.theme-switcher {
  position: fixed;
  bottom: 32px;
  left: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  border: none;
  border-radius: 16px;
  cursor: pointer;
}
.theme-dark .theme-switcher {
  background-color: #416765;
  color: #c4cecf;
}
.theme-dark .theme-switcher:hover {
  filter: brightness(1.1);
}
.theme-light .theme-switcher {
  background-color: #9cc9c9;
  color: #3b4141;
}
.theme-light .theme-switcher:hover {
  filter: brightness(0.9);
}
::view-transition-old(circle),
::view-transition-new(circle) {
  animation: none;
}

@keyframes skeleton-loading-dark {
  0% {
    background-color: #3b4141;
  }
  100% {
    background-color: #416765;
  }
}
@keyframes skeleton-loading-light {
  0% {
    background-color: #c4cecf;
  }
  100% {
    background-color: #9cc9c9;
  }
}
.avatar,
.avatar-skeleton {
  max-width: 180px;
  max-height: 180px;
  border-radius: 100%;
}
.avatar-skeleton {
  width: 180px;
  height: 180px;
}
.theme-dark .avatar-skeleton {
  animation: skeleton-loading-dark 1s linear infinite alternate;
}
.theme-light .avatar-skeleton {
  animation: skeleton-loading-light 1s linear infinite alternate;
}

.rickroll-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 16px;
  width: 200px;
  height: 200px;
  max-width: 100%;
  cursor: pointer;
}
.rickroll-btn * {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 300;
  font-size: 28px;
}
.rickroll-btn {
  background-color: #f5aa7b;
  color: #c26b35;
}
.rickroll-btn:hover {
  filter: drop-shadow(0 0 8px #c26b35);
}
.rickroll {
  border-radius: 16px;
  max-width: 100%;
  view-transition-name: match-element;
}
@media only screen and (max-width: 768px) {
  .theme-switcher {
    bottom: 16px;
    left: 16px;
  }
}

.theme-dark {
  background-color: #191c1d;
  background-image: url(static/dark-theme.svg);
}
.theme-light {
  background-color: #fafdfc;
  background-image: url(static/light-theme.svg);
}
.app {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  position: relative;
  overflow-y: auto;
  width: 100%;
  height: 100%;
  padding: 32px 16px;
  view-transition-name: circle;
}
.app::-webkit-scrollbar {
  height: 6px;
  width: 6px;
}
.app::-webkit-scrollbar-thumb {
  border-radius: 3px;
}
.theme-dark.app::-webkit-scrollbar-thumb {
  background-color: #3b4141;
}
.theme-light.app::-webkit-scrollbar-thumb {
  background-color: #c4cecf;
}
.content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 460px;
  gap: 32px;
}
.avatar-section,
.name-section,
.menu-section {
  display: flex;
}
.name-section {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.name,
.second-name {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}
.name {
  font-weight: 400;
  font-size: 42px;
}
.second-name {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
}
.theme-dark .name,
.theme-dark .second-name {
  color: #c4cecf;
}
.theme-light .name,
.theme-light .second-name {
  color: #3b4141;
}
.menu {
  display: flex;
  flex-direction: column;
  padding: 12px;
  border-radius: 24px;
  max-width: 100%;
}
.theme-dark .menu {
  background-color: #3b4141;
}
.theme-light .menu {
  background-color: #c4cecf;
}
@media only screen and (max-width: 768px) {
  .app {
    padding-bottom: 16px;
  }
}

html {
  box-sizing: border-box;
}
*,
*::after,
*::before {
  box-sizing: inherit;
}
ul[class],
ol[class] {
  padding: 0;
}
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0;
}
ul[class] {
  list-style: none;
}
img {
  max-width: 100%;
  display: block;
}
input,
button,
textarea,
select {
  font: inherit;
}
a {
  text-decoration: none;
}
html,
body {
  -webkit-text-size-adjust: none;
  height: 100%;
  min-height: 100%;
  width: 100%;
  min-width: 100%;
  padding: 0;
  margin: 0;
  overflow: hidden;
}
::view-transition {
  pointer-events: none;
}
::selection {
  background-color: #c4cecf7d;
}

