/* ===== BODY (full red background) ===== */
body {
  margin: 0;
  padding: 0;
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: 'Poppins', sans-serif;

  /* RED background covers the whole page */
  background: url("https://i.ibb.co/z2tVYX6/back.jpg") no-repeat center center;
  background-size: cover;
}

/* ===== OUTER BOX (blue background + white border) ===== */
.outer-box {
  padding: 40px;
  border-radius: 20px;

  /* BLUE background on top of the red */
  background: url("https://i.ibb.co/XzWyQGm/outer.jpg") no-repeat center center;
  background-size: cover;

  /* White border between red and blue */
  border: 4px solid white;
}

/* ===== CONTAINER (white background for items) ===== */
.container {
  padding: 30px;
  border-radius: 20px;
  text-align: center;
  color: #054787;

  /* WHITE background for the content area */
  background: white;

  box-shadow: 0 4px 20px rgba(0,0,0,0.2);
}
/* === Styling for the main title (h1) === */
h1 {
  font-size: 3em;
  margin: .25em 0 .75em 0;
  font-family: 'Caveat';
}
/* === Font for label, button, and placeholder === */
label, button, input::placeholder {
    font-family: 'Poppins';
}
/* === Placeholder styling === */
input::placeholder {
    font-size: .8em;
}
/* === Input styling === */
#item-input {
  width: 200px;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 4px;
}
/* === Button styling (blue → green → yellow) === */
button {
  padding: 10px 20px;
  border: none;
  background-color: #054787;
  color: #fff;
  cursor: pointer;
  border-radius: 4px;
}

button:hover, button:focus {
  background-color: #218838;
}

button:active {
    background-color: #FFC300;
    color: black;
}
/* === Positioning the label above the input === */
label {
    position: absolute;
    top: -10px;
    left: 10px;
    align-self: flex-start;
    margin-left: 1px;
    background-color: white;
    padding: 0 10px;
}
/* === Layout of the input group === */
.input-group {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  margin-bottom: 20px;
  position: relative;
}
/* === The gift icon in the list === */
#shopping-list {
  list-style: "🎁 ";
}

/* === Caveat font for the list items === */
#shopping-list li {
  margin: 10px 0;
  border-radius: 4px;
  text-align: left;
  font-size: 1.9em;
  font-family: 'Caveat';
}
