/* diegotrigal.com/lab — catalogo de software
 *
 * Hereda la paleta y las fuentes de main.css; aqui solo vive lo propio del
 * catalogo. La idea: la portada grita y esta pagina explica, asi que la
 * tipografia baja de tamaño y aparece el texto corrido que alla no cabe.
 */

.lab-cabeza {
    padding: clamp(3rem, 9vh, 7rem) 6vw clamp(2.5rem, 6vh, 4rem);
    border-bottom: 1px solid rgba(254, 254, 254, 0.08);
}

.volver {
    font-family: var(--fuente-alt);
    font-size: 0.8rem;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: rgba(254, 254, 254, 0.5);
    display: inline-flex; align-items: center; gap: 0.7rem;
    transition: color 400ms var(--curva), gap 400ms var(--curva);
}
.volver:hover { color: var(--oro); gap: 1.1rem; }

.lab-titulo {
    font-size: clamp(3.2rem, 13vw, 11rem);
    font-weight: 700;
    line-height: 0.85;
    letter-spacing: -0.03em;
    margin: 0.35em 0 0;
    text-transform: uppercase;

    /* El mismo gesto de la portada, para que se note que es la misma casa.
     *
     * Tres detalles que no son decorativos:
     * - `fit-content`: un h1 ocupa todo el ancho, y con la caja a 1300 px el
     *   recorte agarraba la franja oscura del panel. Abrazando las letras cae
     *   donde tiene que caer.
     * - `230%`: acercado, para que el horizonte cruce las tres letras. A
     *   tamaño natural solo la "A" pillaba cielo y las otras dos salian negras.
     * - `42%`: la altura de la linea de horizonte en la captura. */
    width: fit-content;
    background-image: url("../media/lab.webp");
    background-size: 230% auto;
    background-position: 50% 42%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}

.lab-bajada {
    max-width: 46ch;
    margin-top: 1.6rem;
    font-weight: 300;
    font-size: clamp(1rem, 1.6vw, 1.2rem);
    line-height: 1.6;
    color: rgba(254, 254, 254, 0.62);
}

/* ============================================================ FICHAS */

/* Mismo motivo que en main.css: la ruta se resuelve contra esta hoja. */
.a-wt   { --arte: url("../media/app-wtindicators.webp"); }
.a-msta { --arte: url("../media/app-musicsttattion.webp"); }

.fichas {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
    gap: 1px;
    background: rgba(254, 254, 254, 0.08);
    border-bottom: 1px solid rgba(254, 254, 254, 0.08);
}

.ficha {
    background: var(--negro);
    padding: clamp(1.8rem, 3vw, 2.8rem);
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
    position: relative;
    transition: background 500ms var(--curva);
}
.ficha:hover { background: var(--negro-2); }

/* Las que aun no existen no deben competir por la mirada con las que si. */
.ficha.pronto { opacity: 0.5; }
.ficha.pronto:hover { opacity: 0.75; }

.ficha-arte {
    aspect-ratio: 16 / 10;
    border: 1px solid rgba(254, 254, 254, 0.08);
    /* Longhands y no el atajo: con `background: ... var(--arte) ...` una ficha
       sin --arte deja el atajo invalido y se cae la regla entera. El valor de
       respaldo cubre a las que aun no tienen captura, para que no enseñen un
       hueco negro. */
    background-color: #000;
    background-image: var(--arte, linear-gradient(135deg, #262626, #131313));
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.ficha-fila { display: flex; align-items: baseline; gap: 0.9rem; flex-wrap: wrap; }

.ficha-nombre {
    font-size: clamp(1.5rem, 2.4vw, 2rem);
    font-weight: 700;
    letter-spacing: -0.01em;
}

.etiqueta {
    font-family: var(--fuente-alt);
    font-size: 0.68rem;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    padding: 0.3em 0.75em;
    border: 1px solid currentColor;
    white-space: nowrap;
}
.etiqueta.viva  { color: var(--oro); }
.etiqueta.beta  { color: #7bc8e0; }
.etiqueta.espera { color: rgba(254, 254, 254, 0.45); }

.ficha-que {
    font-weight: 300;
    line-height: 1.65;
    color: rgba(254, 254, 254, 0.62);
    flex-grow: 1;
}

.ficha-meta {
    font-family: var(--fuente-alt);
    font-size: 0.75rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(254, 254, 254, 0.38);
}


@media (max-width: 560px) {
    .fichas { grid-template-columns: 1fr; }
}
