UNPKG

@indiekit/frontend

Version:
94 lines (80 loc) 1.76 kB
.card { --anchor-decoration-color: transparent; --icon-margin: var(--space-2xs); --icon-size: 1.125em; background-color: var(--color-offset); border-radius: var(--border-radius-small); display: flex; flex-grow: 1; flex-wrap: wrap; overflow: hidden; position: relative; &:hover { background-color: var(--color-offset-variant); } &:has(:focus-visible) { overflow: visible; } } .card__photo { flex-basis: var(--card-photo-size, 8em); flex-grow: 1; & :is(img, video) { aspect-ratio: 1; background-color: var(--color-offset); block-size: 100%; display: block; inline-size: 100%; object-fit: cover; } } .card__body { display: flex; flex-basis: 0; flex-direction: column; flex-grow: 999; gap: calc(var(--card-space, var(--space-s)) / 2); margin-block-start: 0; min-inline-size: 67%; padding: var(--card-space, var(--space-s)); a:not([rel="bookmark"]) { position: relative; z-index: 1; } } .card__title { font: var(--card-title-font, var(--font-subhead)); } .card a[rel="bookmark"] { &::before { border-radius: var(--border-radius-small); content: ""; display: block; inset: 0; position: absolute; } &:focus-visible { box-shadow: none; position: initial; } &:focus-visible::before { box-shadow: 0 0 0 var(--focus-width) var(--color-focus); } } .card__meta { --flow-line-measure: 40rem; --prose-font: var(--font-caption); margin-block-start: 0; } .card__footer { align-items: start; display: flex; flex-direction: column; gap: var(--space-xs); margin-block-start: auto; padding-block-start: var(--space-2xs); & time { color: var(--color-on-offset); font-size: var(--font-size-xs); } }