/* 共通のスタイル */
@import url("../../common/common.css");
body {
  background: url('../common/images/character bg.jpg') no-repeat center center fixed;
  background-size: cover;
  color: #f5f5f5;
  line-height: 1.6;
  overflow-x: hidden;
}

main {
    margin: 50px auto;
}
/* キャラクター外見設定セクション */
.appearance-section {
    padding: 20px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    margin: 20px;
    text-align: center;
}

.appearance-section h2 {
    margin-bottom: 15px;
    font-size: 1.8em;
    color: #ffd700;
}
.appearance-section h3 {
    margin: 15px;
    font-size: 1.5em;
    color: #ffd700;
}

.name-input label {
    display: block;
    margin-bottom: 10px;
    font-weight: bold;
    color: #fff;
}

.name-input input {
    width: 50%;
    padding: 10px;
    font-size: 1.2em;
    border: 2px solid #fff;
    border-radius: 5px;
    outline: none;
    text-align: center;
}

/* アバター選択部分 */
.avatar-images {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 10px;
}

.avatar-images label {
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
    text-align: center;
}

.avatar-images img {
    width: 200px;
    height: 200px;
    border-radius: 10px;
    border: 2px solid transparent;
    transition: border-color 0.3s;
    padding: 10px;
}

.avatar-images input[type="radio"]:checked + img {
    border-color: #fff;
}

.avatar-images span {
    margin-top: 5px;
    font-weight: bold;
    color: #fff;
}
/*ステータス*/
.stats-section {
    text-align: center;
    margin: 20px 0;
    padding: 20px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 10px;
}

.stats-section h2 {
    font-size: 1.8em;
    color: #ffd700;
    margin-bottom: 15px;
}

.status-display {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 10px;
    margin: 20px auto;
    text-align: center;
    font-size: 1.5em;
    color: #fff;
}

#rollDiceButton {
    display: inline-block;
  background: #46B3A7; /* ボタン背景色 */
  color: #fff;
  text-decoration: none;
  padding: 10px 20px;
  border-radius: 10px;
  transition: background 0.3s, transform 0.2s;
  border: 2px solid #fff; /* 白い枠線を追加 */
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

#rollDiceButton:hover {
    background: #26615a; /* ボタンのホバー時の色 */
  transform: scale(1.1); /* ホバー時の拡大 */
  box-shadow: 0 0 15px rgba(255, 255, 255, 0.7); /* ホバー時のシャドウ強調 */
}

.character-creation {
  max-width: 800px;
  margin: auto;
  padding: 20px;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  border-radius: 10px;
  text-align: center;
}
.customization-panel {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.appearance-section, .stats-section {
  padding: 20px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 10px;
}
.save-character-section {
    text-align: center;
    margin-top: 20px;
}

#saveCharacterButton {
    display: inline-block;
  background: #46B3A7; /* ボタン背景色 */
  color: #fff;
  text-decoration: none;
  padding: 10px 20px;
  border-radius: 10px;
  transition: background 0.3s, transform 0.2s;
  border: 2px solid #fff; /* 白い枠線を追加 */
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

#saveCharacterButton:hover {
   background: #26615a; /* ボタンのホバー時の色 */
  transform: scale(1.1); /* ホバー時の拡大 */
  box-shadow: 0 0 15px rgba(255, 255, 255, 0.7); /* ホバー時のシャドウ強調 */
}

/* タブレット向け (1024px以下) */
@media screen and (max-width: 1024px) {
  .character-creation {
    margin: 20px auto;
    padding: 15px;
  }

  .name-input input {
    width: 80%; 
    font-size: 1em; 
  }

  .avatar-images img {
    width: 150px; 
    height: 150px;
  }

  .stats-section h2 {
    font-size: 1.5em;
  }

  .status-display {
    font-size: 1.2em; 
  }

  #rollDiceButton, #saveCharacterButton {
    width: 40%;
    font-size: 1em; 
    margin-top: 15px;
  }
}

/* スマートフォン向け (768px以下) */
@media screen and (max-width: 767px) {
  .character-creation {
    margin: 10px auto;
    padding: 10px;
  }

  .avatar-images {
    flex-direction: column; 
    gap: 10px; 
  }

  .avatar-images img {
    width: 120px;
    height: 120px;
  }

  .stats-section h2 {
    font-size: 1.2em;
  }

  .status-display {
    font-size: 1em;
  }

  #rollDiceButton, #saveCharacterButton {
    font-size: 0.9em;
  }
}

/* 小型スマートフォン向け (480px以下) */
@media screen and (max-width: 480px) {
	.appearance-section h2 {
		 font-size: 1.2em;
	}
  .name-input label {
    font-size: 1em;
  }

  .name-input input {
    width: 90%;
    font-size: 0.9em;
  }

  .avatar-images img {
    width: 100px;
    height: 100px;
  }

  .stats-section h2 {
    font-size: 1.2em;
  }
.stats-section p {
    font-size: 1em;
  }
  .status-display {
    font-size: 0.9em;
  }
}
