@use "@styles/abstracts/functions" as fun; @use "@styles/abstracts/placeholders"; .list { @extend %flex-list; align-items: stretch; gap: var(--spacing-xs); margin-bottom: var(--spacing-md); } .item { width: min(calc(100vw - var(--spacing-md)), 25ch); text-align: center; } .article { display: flex; flex-flow: column nowrap; height: 100%; padding: 0 0 var(--spacing-md); } .title { flex: 1; margin: var(--spacing-sm) 0; padding: 0 var(--spacing-md); text-decoration: underline solid transparent 0; transition: all 0.3s linear 0s; } .link { display: block; height: 100%; background: var(--color-bg); color: inherit; text-decoration: none; border: fun.convert-px(3) solid var(--color-primary); border-radius: fun.convert-px(5); box-shadow: fun.convert-px(1) fun.convert-px(1) fun.convert-px(1) var(--color-shadow-light), fun.convert-px(1) fun.convert-px(2) fun.convert-px(2) fun.convert-px(-2) var(--color-shadow-light), fun.convert-px(3) fun.convert-px(4) fun.convert-px(5) fun.convert-px(-4) var(--color-shadow-light); transition: all 0.3s ease-in-out 0s; &:hover, &:focus, &:active { color: inherit; } &:hover, &:focus { box-shadow: fun.convert-px(1) fun.convert-px(1) fun.convert-px(1) var(--color-shadow-lighter), fun.convert-px(1) fun.convert-px(2) fun.convert-px(2) fun.convert-px(-2) var(--color-shadow-lighter), fun.convert-px(3) fun.convert-px(4) fun.convert-px(5) fun.convert-px(-4) var(--color-shadow-lighter), fun.convert-px(7) fun.convert-px(10) fun.convert-px(12) fun.convert-px(-3) var(--color-shadow-lighter); transform: scale(1.05); } &:focus { .title { text-decoration: underline solid var(--color-primary) 0.3ex; } } &:active { box-shadow: 0 0 0 0 var(--color-shadow-light); transform: scale(0.95); .title { text-decoration: none; } } } .cover { width: 100%; height: clamp(fun.convert-px(100), 20vw, fun.convert-px(150)); position: relative; border: fun.convert-px(1) solid var(--color-border-light); } .meta { display: block; margin: 0; padding: 0 var(--spacing-md); font-size: var(--font-size-sm); }