body {
    font-family: Arial;
    background-color: #1e1e1e;
    color: white;
    padding: 20px;
}

h1 {
    text-align: center;
}

.contenedor {
    max-width: 600px;
    margin: auto;
    background: #2c2c2c;
    padding: 20px;
    border-radius: 10px;
}

label {
    display: block;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
}

input[type="checkbox"] {
    width: auto;
    margin: 2px;
}


/* Inicio Boton de Generacion*/


*,*:before,*:after { _outline: 1px dashed red }

button {
  --theme-color: #2EFFB5;
  --s: 10px;                 /* corner size for the mask */
  --animation-timing: .3s;
  --pad: 2px;               /* animated border padding */

  font-family: "DM Mono", monospace;
  font-weight: 400;
  font-style: normal;
  position: relative;
  cursor: pointer;
  appearance: none;
  color: white;
  border: 1px solid rgb(255 255 255 / 20%);
  padding: 10px 16px;
  font-size: 16px;
  display: inline-flex;
  align-items: center;
  background:
    linear-gradient(to right, rgb(255 255 255 / 5%), rgb(255 255 255 / 20%));
  transition: background var(--animation-timing) ease,
              border var(--animation-timing) ease;

  
  
  span { 
    font-weight: 700;
    font-size: 18px;
    transition: color var(--animation-timing) ease;
    margin-left: 8px;
  }

  &::before {
    content: "";
    position: absolute;
    box-sizing: border-box;
    /* Keep the inner edge aligned with the button by offsetting outward */
    inset: calc(-1 * var(--pad));
    padding: var(--pad);

    border: 2px solid white;
    background: transparent content-box;
    mask:
      conic-gradient(#000 0 0) content-box,
      conic-gradient(at var(--s) var(--s), #0000 75%, #000 0)
      0 0 / calc(100% - var(--s)) calc(100% - var(--s));
    backface-visibility: hidden;
    pointer-events: none;

    transition:
      inset var(--animation-timing) ease,
      padding var(--animation-timing) ease,
      border-color var(--animation-timing) ease;
    will-change: inset, padding; /* hint for smoother anim */
  }
}

button:hover {
  border: 1px solid var(--theme-color);
  background:
    linear-gradient(
      to right,
      color(from var(--theme-color) srgb r g b / 5%),
      color(from var(--theme-color) srgb r g b / 20%)
    );

  span {
    color: var(--theme-color);
  }

  /* Animate outward growth without scaling */
  --pad: 8px;

  &::before { border-color: var(--theme-color); }
}


/* Fin de boton de generacion*/

.container2 {
    max-width: 1400px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(5, 1fr); /* 👈 5 per row */
    gap: 20px;
    padding: 30px 20px 50px;
    justify-items: left;
}

/* CARD (MEDIUM RECTANGLE) */
.card {
    width: 260px;
    height: 170px;
    position: relative;
    overflow: hidden;
    border-radius: 18px;
    cursor: pointer;
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}


/* IMAGE */
.card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
}

/* OVERLAY */
.card-overlay {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 15px;
    text-align: center;
    background: linear-gradient(to top, rgba(0,0,0,0.75), transparent);
}

.card-overlay h2 {
    margin: 0;
    font-size: 1.2rem;
    letter-spacing: 1px;
}

/* GLOW BASE */
.card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 18px;
    opacity: 0;
    transition: opacity 0.35s ease;
    z-index: 1;
}

/* HOVER EFFECT */
.card:hover {
    transform: translateY(-8px) scale(1.03);
}

.card:hover img {
    transform: scale(1.1);
}

.card:hover::before {
    opacity: 1;
}

/* COLOR GLOWS */
.gold:hover {
    box-shadow: 0 0 25px #FFBA49, 0 0 60px rgba(255,186,73,0.4);
}
.gold::before {
    background: radial-gradient(circle, rgba(255,186,73,0.25), transparent 70%);
}

.teal:hover {
    box-shadow: 0 0 25px #20A39E, 0 0 60px rgba(32,163,158,0.4);
}
.teal::before {
    background: radial-gradient(circle, rgba(32,163,158,0.25), transparent 70%);
}

.coral:hover {
    box-shadow: 0 0 25px #EF5B5B, 0 0 60px rgba(239,91,91,0.4);
}
.coral::before {
    background: radial-gradient(circle, rgba(239,91,91,0.25), transparent 70%);
}

.dark:hover {
    box-shadow: 0 0 25px #A4A9AD, 0 0 60px rgba(164,169,173,0.4);
}
.dark::before {
    background: radial-gradient(circle, rgba(164,169,173,0.2), transparent 70%);
}

.gray:hover {
    box-shadow: 0 0 25px #A4A9AD, 0 0 60px rgba(164,169,173,0.4);
}
.gray::before {
    background: radial-gradient(circle, rgba(164,169,173,0.25), transparent 70%);
}



input {
    width: 100%;
    padding: 8px;
    margin-top: 10px;
}

button {
    margin-top: 15px;
    padding: 10px;
    width: 100%;
    background-color: #4CAF50;
    border: none;
    color: white;
    font-size: 16px;
    cursor: pointer;
}

textarea {
    width: 100%;
    margin-top: 10px;
    background: black;
    color: lime;
}

.archivo {
    margin-top: 20px;
    background: #1a1a1a;
    padding: 10px;
    border-radius: 8px;
}

.archivo h3 {
    margin-bottom: 5px;
    color: #4CAF50;
}

textarea {
    width: 100%;
    background: black;
    color: lime;
    padding: 10px;
}