@import url("font-awesome/css/font-awesome.min.css");

/* =========================================================
   Registration_2025A.css  (Clean & Maintainable)
   - keep your original look
   - remove duplicates / dead code / !important blocks
   ========================================================= */

/* 页面兜底 */
html, body { margin:0; padding:0; }
*, *::before, *::after { box-sizing:border-box; }

/* 可访问性：跳转主内容 */
.skip-to-content{
  position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden;
}
.skip-to-content:focus{
  position:static; width:auto; height:auto; padding:8px 10px; background:#fff; border:1px solid #999;
}

/* =========================================================
   Outer spacing + main card (your new wrapper)
   ========================================================= */
.main_content_2025A{
  padding: 22px 22px;
}

.reg_card_2025A{
  max-width: 920px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.10);
  border-radius: 14px;
  padding: 26px 26px;
  box-shadow: 0 10px 28px rgba(0,0,0,0.08);
}

/* =========================================================
   Page container (keep, but avoid double-width conflicts)
   ========================================================= */
.reg__container{
  /* 这里不要再限制宽度了，否则会和 reg_card_2025A 冲突 */
  margin: 0 auto;
  padding: 0; /* 由 main_content_2025A 控制留白 */
}

/* =========================================================
   Hero
   ========================================================= */
.reg__hero{
  padding: 6px 0;
}

.reg__title{
  font-family: "Times New Roman", Times, serif;
  font-size: 30px;
  margin: 0 0 6px 0;
  text-shadow: 0 -1px 1px #eee;
}

.reg__lead{
  margin: 0;
  font-family: Verdana, Geneva, sans-serif;
  font-size: 13px;
  line-height: 20px;
  color:#222;
}

/* =========================================================
   Notice
   ========================================================= */
.reg__notice{
  margin-top: 10px;
  border: 1px solid #cfd8dc;
  background: #f7fbff;
  border-radius: 12px;
  padding: 10px 12px;
}

.reg__list{
  margin: 0;
  padding-left: 18px;
  font-family: Verdana, Geneva, sans-serif;
  font-size: 12px;
  line-height: 18px;
}

/* =========================================================
   Form section wrapper
   - NOTE: reg_card_2025A is already the main "card"
   - so reg__card becomes a section block (no extra shadow)
   ========================================================= */
.reg__card{
  margin-top: 12px;
  border-top: 1px solid rgba(0,0,0,0.08);
  padding-top: 14px;
}

/* section title */
.reg__sectionTitle{
  font-family: Verdana, Geneva, sans-serif;
  font-size: 14px;
  font-weight: bold;
  padding: 10px 10px;
  margin: 0 0 10px 0;
  border-radius: 10px;
  border: 1px solid #ddd;
  background: url(/PCB-fabrication/PCB-fabrication-images/title_bg2.jpg);
}

.reg__req{
  color:#c00;
  font-weight:bold;
  font-size: 12px;
}

/* =========================================================
   Grid & fields
   ========================================================= */
.reg__grid{
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 10px 12px;
  align-items: start;
}

.reg__label{
  font-family: Verdana, Geneva, sans-serif;
  font-size: 12px;
  padding-top: 6px;
}

.reg__field{
  font-family: Verdana, Geneva, sans-serif;
  font-size: 12px;
}

.reg__field--row{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}

/* inputs */
.reg__input{
  font-family: Verdana, Geneva, sans-serif;
  border: 1px solid #999;
  font-size: 12px;
  height: 32px;
  padding: 5px 10px;
  border-radius: 8px;
  width: 220px;
  max-width: 100%;
  background:#fff;
}

.reg__input:focus{
  outline: none;
  border-color: rgba(0,0,0,0.45);
  box-shadow: 0 0 0 3px rgba(0,0,0,0.10);
}

.reg__input--long{ width: 420px; }
.reg__input--highlight{ background: #ffffcc; width: 320px; }

.reg__hint{
  margin-top: 6px;
  font-size: 12px;
  color:#333;
}

.reg__divider{
  height: 14px;
  border-bottom: 1px dashed #c7c7c7;
  margin: 14px 0;
}

/* =========================================================
   Alternative Emails
   ========================================================= */
.reg__altToggle{
  display:flex;
  align-items:center;
  gap:8px;
  font-family: Verdana, Geneva, sans-serif;
  font-size: 12px;
  margin: 6px 0 10px 0;
}

.reg__altWrap{
  border:1px solid #e3e3e3;
  border-radius: 12px;
  background:#fafafa;
  padding: 10px;
}

.reg__altGrid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 12px;
}

.reg__altLabel{
  font-family: Verdana, Geneva, sans-serif;
  font-size: 12px;
  margin-bottom: 4px;
}

/* =========================================================
   Shipping/Billing
   ========================================================= */
.reg__checkRow{
  font-family: Verdana, Geneva, sans-serif;
  font-size: 12px;
  margin: 6px 0 10px 0;
}

/* =========================================================
   Hint block
   ========================================================= */
.reg__hintBlock{
  margin-top: 12px;
  padding: 10px 12px;
  border: 1px solid #e2e2e2;
  border-radius: 12px;
  background:#fbfbfb;
  font-family: Verdana, Geneva, sans-serif;
  font-size: 12px;
  line-height: 18px;
}
.reg__hintBlock a{ color:#1b1e89; }

/* =========================================================
   Verification
   ========================================================= */
.reg__vcodeRow{
  margin-top: 6px;
  padding: 10px 12px;
  border: 1px solid #e2e2e2;
  border-radius: 12px;
  background:#f7fbff;
}
.reg__vcodeTitle{
  font-family: Verdana, Geneva, sans-serif;
  font-size: 12px;
  margin-bottom: 8px;
}
.reg__vcodeInputs{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.reg__input--vcode{ width: 90px; }

.reg__vcodeShow{
  width: 70px;
  height: 32px;
  border-radius: 8px;
  border: 1px solid #000;
  background: #ccc;
  color:#900;
  font-size: 14px;
  text-align:center;
  cursor:pointer;
  padding: 3px 6px;
}
.reg__vcodeHelp{
  font-family: Verdana, Geneva, sans-serif;
  font-size: 12px;
  color:#333;
}

/* =========================================================
   Actions
   ========================================================= */
.reg__wait{
  margin-top: 12px;
  font-family: Tahoma, Geneva, sans-serif;
  color:#c00;
  font-size: 14px;
  font-weight:bold;
  text-align:center;
}

.reg__actions{
  margin-top: 14px;
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:center;
}

.reg__btn{
  background-color:#4caf50;
  border:1px solid #666;
  border-radius:10px;
  color:white;
  padding:8px 14px;
  text-align:center;
  text-decoration:none;
  display:inline-block;
  font-size:12px;
  cursor:pointer;
  transition-duration:.2s;
}

.reg__btn:hover{ background-color:#900; color:#fff; }

.reg__btn--outline{
  background:#ffffff;
  color:#0b4f4a;
  border:1px solid #0b4f4a;
}

.reg__btn--outline:hover{
  background:#0b4f4a;
  color:#ffffff;
}

/* =========================================================
   Responsive
   ========================================================= */
@media screen and (max-width: 820px){
  .main_content_2025A{ padding: 14px 12px; }
  .reg_card_2025A{ padding: 18px 14px; border-radius: 12px; }

  .reg__grid{ grid-template-columns: 1fr; }
  .reg__label{ padding-top: 0; }
  .reg__input{ width: 100%; }
  .reg__input--long{ width: 100%; }
  .reg__input--highlight{ width: 100%; }
  .reg__altGrid{ grid-template-columns: 1fr; }
}
