body {
  font-family: Arial, sans-serif;
  line-height: 1.6;
}

/* 各模块通用样式 */
section { padding: 20px; }
h1, h2, h3 { margin: 10px 0; }

.container {
	margin: 0 auto;
}

.container p{
	font-size: 1.2rem;
}

/* 注册表单 */
#registration {
  background: #f7f9fc;
  padding: 10px 20px;
  border-radius: 12px;
  /*max-width: 960px;*/
  margin: 0 auto;
}

#registration p {font-size: 1.1rem;}

#registration i { margin-right: 5px; color: #F07D8C; }

#registration h2 {
  text-align: center;
  margin-bottom: 30px;
}

#register-form {
  background: #fff;
  padding: 30px;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
  font-size: 1rem;
}

.form-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 分成3列 */
  gap: 20px;
  margin-bottom: 40px;
}

.form-group {
  display: flex;
  flex-direction: column;
  padding: 0 20px;
}

.form-group label {
  font-weight: bold;
  margin-bottom: 6px;
}

form select {
  padding: 8px;
  border-radius: 5px;
  border: 1px solid #ccc;
  font-size: 1rem;
}

select, input[type="text"], input[type="email"], input[type="tel"] {
  padding: 10px;
  font-size: 1rem;
  border-radius: 5px;
  border: 1px solid #ccc;
  width: 100%;
}

.form-group input,
.form-group select {
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 1em;
  transition: border-color 0.3s;
}

.form-group input:focus,
.form-group select:focus {
  border-color: #007BFF;
  outline: none;
}

.form-button {
  text-align: center;
  margin-top: 30px;
}

.form-button button {
  background: #e73654;
  color: white;
  padding: 12px 30px;
  border: none;
  border-radius: 6px;
  font-size: 1.1em;
  cursor: pointer;
  transition: background 0.3s;
}

.form-button button:hover {
  background: #0056b3;
}

/* === 单选 & 多选通用样式 === */
input[type="radio"], 
input[type="checkbox"] {
  transform: scale(1.5);      /* 放大2倍 */
  margin-right: 8px;
  accent-color: #e73654;    /* 设置选中颜色 */
  cursor: pointer;
}

label>span, h3>span{
    color: #d63636;
}

.question-block {
  background: #fdfdfd;
  border: 1px solid #ddd;
  border-radius: 10px;
  padding: 15px 20px;
  margin: 20px 0;
}
.question-block h3 {
  margin-bottom: 10px;
  color: #333;
}
.question-options {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* 单选/多选文字与控件对齐 */
.question-options label {
  display: flex;
  align-items: center;
  font-size: 1rem;
}

/* 单选/多选文字与控件对齐 */
.question-options label {
  display: flex;
  align-items: center;
  font-size: 1rem;
}

/* === 第 4、5、6 题多选框：PC 端 3 列显示 === */
#q4 .question-options,
#q5 .question-options,
#q6 .question-options {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3 列 */
  gap: 12px 20px; /* 行间距、列间距 */
}

#q4 .question-options label,
#q5 .question-options label,
#q6 .question-options label {
  width: 100%;
}


.question-options.error {
  border: 2px solid red;
}

.question-options.error label {
  color: red;
}

.hidden { display: none; }

@media (max-width: 600px) {
  #registration {
    padding: 20px 10px;
  }
  
  #register-form {
    padding: 20px;
  }

  .form-grid {
    grid-template-columns: 1fr;
  }
}

/* 响应式示例：屏幕窄时调整布局 */
@media only screen and (max-width: 768px) {
    
  .container {
	width: 100%;
	margin: 0 auto;
 }    
 
  .form-grid {
    grid-template-columns: 1fr; /* 一列 */
  }
  
  .form-group select {
    height: 40px;
  }
  
  #q4 .question-options, #q5 .question-options, #q6 .question-options {
      display: block;
  }

  /* 表单标签全宽 */
  #registration label { flex: 1 1 100%; margin: 5px 0; }
}

/* === 小屏幕优化：第 4、5、6 题多选框竖排 === */
@media (max-width: 600px) {
  #q4 .question-options,
  #q5 .question-options,
  #q6 .question-options {
    flex-direction: column;   /* 垂直排列 */
    gap: 10px;               /* 垂直间距 */
  }

  #q4 .question-options label,
  #q5 .question-options label,
  #q6 .question-options label {
    min-width: auto;         /* 移除固定宽度，方便缩放 */
    width: 100%;
  }
}

