.file__wrapper {
    --link-size: theme('fontSize.lg');
    --icon-size: 1.5em;
}

.file__wrapper:has(.file__icon) {
    @apply grid gap-x-2 gap-y-1 items-center;

    grid-template-columns: auto auto 1fr;

    > *:not(.file__icon) {
        @apply col-start-2;
    }
}

.file__wrapper > a {
    @apply font-semibold row-start-1 leading-snug;

    font-size: var(--link-size);
}

.file__meta {
    @apply text-neutral-600 text-sm relative my-0;
}

.file__icon {
    @apply row-span-1 self-start;
}

.file__type {
    @apply uppercase;
}
