/* Center everything */
.main {
  display: grid;
  place-items: center;
  height: 100vh;
  background: #f5f5f5;
  margin: 0;
}

/* Card styling */
.card {
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  transition: box-shadow 0.3s ease;
  background: white;
  max-width: 350px;
  border-radius: 8px;
  overflow: hidden;
}

.card:hover {
  box-shadow: 0 8px 16px rgba(0,0,0,0.25);
}

/* Image styling */
.dog-image {
  width: 100%;
  max-height: 400px;
  object-fit: cover;
  border-bottom: 1px solid #eee;
  display: block;

  opacity: 0;
  transition: opacity .35s ease;
}

.dog-image.is-loaded {
  opacity: 1;
}

/* Text + button container */
.container {
  padding: 1rem;
  text-align: center;
}

h1 {
  margin: 0.5rem 0 1rem;
  font-size: 1.6rem;
}

/* Button */
button {
  padding: 12px 0;
  background: #4CAF50;
  color: white;
  width: 100%;
  border: none;
  border-radius: 4px;
  font-size: 1rem;
  cursor: pointer;
  transition: background 0.2s ease;
}

button:hover {
  background: #45a049;
}

button:disabled {
  background: #ccc;
  cursor: not-allowed;
}
