* {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  line-height: 1.6;
  color: var(--text-primary);
  background: #141e20;
}

sw-user-status {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1000;
}

site-navigation {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
}

#app {
  margin-top: 60px;
  min-height: calc(100vh - 60px);
}

.loading {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 50vh;
  font-size: 1.2rem;
  color: var(--text-secondary);
}

img {
  max-width: 100%;
  height: auto;
}

button {
  font-family: inherit;
  cursor: pointer;
}

a {
  color: var(--primary-color);
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

@media (max-width: 768px) {
  body {
    font-size: 14px;
  }
}