/* Color variables */
:root {
  --wedding-green: #165016;
}

/* Common text styles */
.wedding-text {
  font-family: serif;
  color: var(--wedding-green);
}

.wedding-text-center {
  font-family: serif;
  color: var(--wedding-green);
  text-align: center;
}

/* Button styles */
.wedding-button {
  border: 2px solid var(--wedding-green);
  background: transparent;
  padding: 0.5rem 2rem;
  font-family: serif;
  color: var(--wedding-green);
  cursor: pointer;
  transition: background-color 0.2s, color 0.2s;
}

.wedding-button:hover {
  background-color: var(--wedding-green);
  color: white;
}

.wedding-button-red {
  border: 2px solid #b91c1c;
  background: transparent;
  padding: 0.5rem 2rem;
  font-family: serif;
  color: #b91c1c;
  cursor: pointer;
  transition: background-color 0.2s, color 0.2s;
}

.wedding-button-red:hover {
  background-color: #b91c1c;
  color: white;
}

/* Input styles */
.wedding-input {
  width: 100%;
  border: 0;
  border-bottom: 2px solid var(--wedding-green);
  outline: none;
  background: transparent;
  padding: 0 0.25rem;
  text-align: center;
  font-family: serif;
  color: var(--wedding-green);
}

.wedding-input::placeholder {
  color: #d1d5db;
}

.wedding-input:focus {
  outline: none;
}

/* Input container with corner lines */
.wedding-input-container {
  position: relative;
}

.wedding-input-container::before,
.wedding-input-container::after {
  content: '';
  position: absolute;
  bottom: 0;
  width: 2px;
  height: 50%;
  background-color: var(--wedding-green);
}

.wedding-input-container::before {
  left: 0;
}

.wedding-input-container::after {
  right: 0;
}
