* {
  box-sizing: border-box;
  margin: 0px;
}

.background {
  width: 100%;
  height: 720px;
  background-image: url("../images/background.png");
  padding: 20px 0px 0px 20px;
}

.outerbox {
  width: 808px;
  height: 544px;
  background-image: url("../images/outerbox.png");
}

.wrapper {
  display: flex;
  flex-direction: row;
  padding: 32px 0px 0px 32px;
}

.wrapper__left {
  width: 208px;
  height: 472px;
  display: flex;
  flex-direction: column;
}

.wrapper__left__header {
  width: 100%;
  height: 30px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

.today {
  font-size: 9px;
}

.wrapper__left__body {
  width: 100%;
  height: 100%;
  border: 1px solid gray;
  border-radius: 15px;
  background-color: white;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 20px 30px;
}

.left__body__header {
  width: 100%;
  display: flex;
  flex-direction: column;
}

.left__body__header__profile {
  width: 148px;
  height: 133px;
  background-image: url('../images/profile2.jpg'); background-size: cover; background-position: center;
}

.left__body__header__line {
  border-top: 1px dotted black;
  margin: 12px 0px;
}

.left__body__profile {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.profile__detail {
  font-size: 10px;
  color: #999999;
  margin-bottom: 10px;
  display: flex;
  flex-direction: row;
}

.fa-solid {
  color: gray;
  margin-right: 10px;
  width: 5px;
  height: 5px;
}

.left__body__footer {
  width: 100%;
}

.wrapper__feel {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.feel__title {
  color: gray;
  font-size: 11px;
  margin-bottom: 5px;
}

.wrapper__right {
  width: 524px;
  height: 472px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.wrapper__right__header {
  width: 510px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  padding: 0px 14px;
}

.right__header__title,
.right__header__setting {
  color: #55b2e4;
  font-size: 9px;
}

.right__header__title {
  font-size: 16px;
}

.wrapper__right__body {
  width: 510px;
  height: 445px;
  border: 1px solid gray;
  border-radius: 15px;
  background-color: white;
}

iframe {
  width: 100%;
  height: 100%;
  border: none;
}

.navigation {
  width: 62px;
  height: 100px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: absolute;
  left: 770px;
  top: 110px;
}

.navigation__item {
  width: 60px;
  height: 30px;
  background-color: #298eb5;
  border: 1px solid black;
  color: white;
  border-radius: 0px 10px 10px 0px;
  font-size: 10px;
  text-align: center;
  line-height: 30px;
  cursor: pointer;
}
/* ===== 네비게이션 (4개) ===== */
.navigation {
  width: 62px;
  height: auto;
  display: flex;
  flex-direction: column;
  gap: 6px;
  position: absolute;
  left: 750px;
  top: 90px;
}

.navigation__item {
  width: 60px;
  height: 30px;
  background-color: #298eb5;
  border: 1px solid black;
  color: white;
  border-radius: 0px 10px 10px 0px;
  font-size: 10px;
  text-align: center;
  line-height: 28px;
  cursor: pointer;
  user-select: none;
}

.navigation__item:hover { background-color: #37a3cf; }

.navigation__item.active {
  background-color: white;
  color: black;
}

/* ===== 뮤직플레이어 (메뉴 오른쪽) ===== */
.player {
  position: absolute;
  left: 822px;
  top: 90px;
  width: 196px;
  background-color: white;
  border: 1px solid gray;
  border-radius: 10px;
  padding: 8px 9px;
  box-shadow: 2px 2px 6px rgba(0,0,0,.15);
  font-family: 'Malgun Gothic', sans-serif;
}

.player__title {
  font-size: 8px;
  color: #55b2e4;
  font-weight: 700;
  letter-spacing: .5px;
  margin-bottom: 3px;
}

.player__track {
  font-size: 10px;
  color: #333;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 5px;
}

.player__progress {
  width: 100%;
  height: 5px;
  background-color: #e6e6e6;
  border-radius: 3px;
  overflow: hidden;
  margin-bottom: 6px;
}

.player__progress i {
  display: block;
  height: 100%;
  width: 0%;
  background-color: #55b2e4;
}

.player__row {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 5px;
  margin-bottom: 5px;
}

.player__row button {
  width: 30px;
  height: 22px;
  border: 1px solid gray;
  background-color: white;
  border-radius: 5px;
  font-size: 10px;
  cursor: pointer;
  line-height: 1;
}

.player__row button:hover { background-color: #eef7fc; }

.player__vol { font-size: 9px; }

.player__row input[type="range"] { width: 120px; height: 12px; }

.player__time { font-size: 8px; color: #999; text-align: right; }

/* 프로필 소개글 */
.profile__intro {
  width: 100%;
  font-size: 10px;
  color: #666;
  border: 1px solid #e2e2e2;
  border-radius: 8px;
  padding: 8px;
  margin-bottom: 10px;
  line-height: 1.6;
  background: #fafafa;
}

/* ===== 모바일 대응: 전체를 비율로 축소 ===== */
.outerbox {
  position: relative;
  transform-origin: top left;
}
.background { height: auto; min-height: 100vh; overflow-x: hidden; }

/* 스테이지: 미니홈피 + 메뉴 + 플레이어를 한 덩어리로 */
.stage {
  position: relative;
  width: 1040px;
  height: 566px;
  transform-origin: top left;
}
