/* Portada pública (usa los colores y tipografías de styles.css) */
.home {
  position: relative;
  z-index: 1;
  max-width: 640px;
  margin: 0 auto;
  padding: calc(18px + env(safe-area-inset-top)) 16px calc(32px + env(safe-area-inset-bottom));
}
.home-top { padding: 6px 0 14px; }
.home .card { margin-bottom: 16px; }

.hello h1 { font-size: clamp(28px, 8vw, 38px); line-height: 1.1; color: var(--yellow); margin-bottom: 10px; }
.hello p { margin: 0; font-size: 17px; line-height: 1.55; }
.hello b { color: var(--chalk); }

.how h2 { font-size: 24px; margin-bottom: 14px; }
.steps { list-style: none; margin: 0 0 14px; padding: 0; display: grid; gap: 10px; }
.steps li {
  display: grid;
  grid-template-columns: 36px 1fr;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 16px;
  background: #262626;
  font-size: 16px;
  line-height: 1.4;
}
.step-n {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--red);
  box-shadow: 0 3px 0 var(--red-dark);
  font: 400 19px var(--display);
}
.steps li:nth-child(even) .step-n { background: var(--yellow); color: #2a2112; box-shadow: 0 3px 0 var(--yellow-dark); }
.tip { margin: 0 0 16px; padding: 12px 14px; border-radius: 14px; background: rgba(255, 201, 71, 0.1); border: 1px dashed rgba(255, 201, 71, 0.4); line-height: 1.45; }
.how .btn { text-decoration: none; }

.home-cats { margin-top: 22px; }
.home-cats h2 { font-size: 24px; margin: 0 2px 4px; }
.home-cats > p { margin: 0 2px 14px; }
.plus-word { color: var(--yellow); }
.home-grid { padding: 0; }
.home-tile, .home-grid .cat-new { text-decoration: none; }
.home-tile { min-height: 196px; }
.add-box {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  margin-top: 8px;
  border: 2px dashed color-mix(in srgb, var(--c) 70%, #fff 10%);
  border-radius: 14px;
  color: var(--yellow);
  font: 400 26px var(--display);
}
.home-tile:hover .add-box, .home-tile:active .add-box { background: color-mix(in srgb, var(--c) 25%, transparent); }

.home-foot { margin-top: 28px; text-align: center; }
.home-foot p { margin: 0 0 8px; font-weight: 800; }
.wa {
  display: inline-block;
  padding: 12px 22px;
  border-radius: 999px;
  background: #25d366;
  color: #0b2b17;
  font: 400 20px var(--display);
  text-decoration: none;
  box-shadow: 0 4px 0 #179848;
}
