@use '@gear-js/ui/mixins' as *; @use '@/shared/assets/styles/shared' as *; @use '@/shared/assets/styles/mixins' as *; @use '@/shared/assets/styles/variables' as *; @use '@/shared/assets/styles/animations' as *; .programCard { @include transition(background-color); display: flex; position: relative; border-radius: toRem(16); background-color: $bgColor4; overflow: hidden; &:hover { background-color: $gray100; .content::after { background: radial-gradient(50% 50% at 50% 50%, rgba($successColor, 0.45) 25%, rgba(24, 24, 27, 0) 100%); } } &.vertical { .content { padding: 16px; } .otherInfo { grid-template-columns: 1fr; gap: 8px; } .name { max-width: 85%; } } } .link { @include transition; position: relative; z-index: 1; &:hover { opacity: 0.5; } } .content { flex: 1 1; padding: toRem(24); overflow: hidden; position: relative; &::after { content: ''; position: absolute; right: -40%; bottom: -100%; width: 100%; height: 200%; background: radial-gradient(50% 50% at 50% 50%, rgba($successColor, 0.23) 0%, rgba(24, 24, 27, 0) 100%); } .otherInfo { display: grid; grid-template-columns: 4fr 2fr 3fr; gap: 16px; } .name { max-width: 60%; overflow: hidden; text-overflow: ellipsis; font-size: $fontSizeBig; font-family: 'Kanit'; font-weight: 600; line-height: 1.3; margin-right: $margin; margin-bottom: 10px; } } .actions { @include childrenMargin(12px); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; flex: 0.3 1; padding: toRem(12) toRem(24); }