/* A single, tappable date field keeps date and weekday visually together. */
.dateControl {
  display: flex;
  position: relative;
  gap: 6px;
}

.dateField {
  flex: 1 1 0;
  display: grid;
  place-items: center;
  position: relative;
  height: 34px;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #f3f5f3;
  color: #385342;
}

.dateControl button {
  flex: 0 0 34px;
}

.dateField span {
  pointer-events: none;
  color: var(--ink);
  font-weight: 700;
  font-size: 13px;
  letter-spacing: .1px;
}

.dateField input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: .01;
  cursor: pointer;
}

@media (max-width: 680px) {
  .dateControl {
    gap: 8px;
  }

  .dateControl button {
    flex-basis: 46px;
  }

  .dateControl button,
  .dateField {
    height: 40px;
  }

  .dateField span {
    font-size: 14px;
  }
}

/* Google Calendar 연결 상태: 연결 전은 주의색, 연결 후는 성공색으로 구분합니다. */
.account {
  border-width: 1px;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.account.disconnected {
  background: #fff6df;
  border-color: #f1cd75;
  box-shadow: inset 4px 0 0 #e3a42e;
}

.account.disconnected b { color: #704a00; }
.account.disconnected span { color: #856222; }
.account.disconnected button { background: #b87300; color: #fff; }

.account.connected {
  background: #e5f5ea;
  border-color: #9bd0aa;
  box-shadow: inset 4px 0 0 #2d8955;
}

.account.connected b { color: #185b35; }
.account.connected b::before { content: "✓ "; }
.account.connected span { color: #38704e; }
.account.connected button { background: #fff; color: #1d663d; }
