/* ===== D-Day Counter ===== */
.dday-counter{
  padding: 40px 30px;
  text-align: center;
  margin: 30px 0;
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  background: rgba(255,255,255,.75);
  backdrop-filter: blur(8px);
}

.dday-title{
  font-size: 1.3rem;
  font-weight: 700;
  margin-bottom: 16px;
  opacity: .95;
}

/* 한 줄 정렬 */
.dday-counter-container{
  display: flex;
  justify-content: center;
  gap: 16px;
  margin: 18px 0 6px;
  flex-wrap: nowrap;     /* ← 기본은 한 줄 */
}

.time-unit{
  background: rgba(0,0,0,.05);
  border-radius: 14px;
  padding: 14px 12px;
  min-width: 80px;       /* 살짝 늘림 */
}

.time-number{
  font-size: 2.2rem;
  font-weight: 800;
  text-shadow: 2px 2px 4px rgba(0,0,0,.2);
  display: block;
  line-height: 1;
}

.time-label{
  font-size: .78rem;
  opacity: .8;
  margin-top: 6px;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.dday-message{
  font-size: 1.05rem;
  font-weight: 600;
  margin-top: 14px;
  opacity: .95;
}

/* === 신혼부부 일차 (D-Day 이후) === */
.newlywed-wrap{
  background: linear-gradient(135deg, #ff4d7e 0%, #ff86a8 100%);
  border-radius: 18px;
  padding: 18px 16px;
  margin: 4px auto 6px;
  max-width: 360px;
  color: #fff;
}
.newlywed-day{
  font-size: 3rem;
  font-weight: 900;
  line-height: 1;
  text-shadow: 2px 2px 4px rgba(0,0,0,.25);
}
.newlywed-label{
  margin-top: 8px;
  font-size: 1.05rem;
  font-weight: 700;
}

/* 화면이 아주 좁을 땐 자동 줄바꿈 */
@media (max-width: 480px){
  .dday-counter-container{ flex-wrap: wrap; }
  .time-unit{ min-width: 68px; padding: 12px 10px; }
  .time-number{ font-size: 1.8rem; }
  .dday-title{ font-size: 1.15rem; }
  .dday-message{ font-size: .98rem; }
}
