/* Layout - Structural containers and main layout */

#app-root {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  background: rgba(0, 0, 0, 0.2);
}

#canvas-wrap {
  position: relative;
  flex: 1 1 auto;
  width: 100vw;
  height: 100dvh;
  margin: 0;
  background: rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

#threejs-canvas {
  position: absolute;
  inset: 0;
  touch-action: none;
  display: block;
  width: 100%;
  height: 100%;
}

.hidden {
  display: none !important;
}

#linear-view {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 6.5rem 0.75rem 4.5rem;
  max-width: 760px;
  margin: 0 auto;
  flex: 1 1 auto;
  overflow-y: auto;
}

.page-view {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 6.5rem 1rem 4.5rem;
  max-width: var(--lg);
  margin: 0 auto;
  flex: 1 1 auto;
  overflow-y: auto;
}

#profile-view.page-view,
#settings-view.page-view {
  min-width: 320px;
}
