.DropTarget { border-radius: var(--border-radius-default); background: var(--color-background); padding: 1.25rem; flex: 1 1 auto; width: 100%; max-width: 43.75rem; margin-left: auto; margin-right: auto; margin-bottom: 0.3125rem; position: relative; display: flex; color: #a4acb3; box-shadow: 0 1px 2px var(--color-default-shadow); @media (max-height: 350px) { padding: 0.75rem; } &.hovered { .target-content { color: var(--color-primary); } .target-outline { stroke: var(--color-primary); animation-play-state: running; } } & + & { margin-top: 0.3125rem; } &:last-child { margin-bottom: 0; } .target-outline-container { pointer-events: none; overflow: visible; width: 100%; height: 100%; } .target-outline { fill: none; stroke: var(--color-placeholders); stroke-width: 2; stroke-dasharray: 11, 8; stroke-linecap: round; stroke-dashoffset: 0; transition: 0.2s stroke; animation: outline 0.5s linear infinite; animation-play-state: paused; } .target-content { pointer-events: none; border-radius: 0.5rem; flex: 1 1 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; transition: 0.2s color; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } .icon { font-size: 6.25rem; line-height: 4.6875rem; margin-bottom: 2.25rem; @media (max-height: 520px) { font-size: 4.25rem; line-height: 3.5rem; margin-bottom: 1rem; } @media (max-height: 450px) { font-size: 2rem; line-height: 1rem; margin-bottom: 0.5rem; margin-top: 0.25rem; } } .title { font-size: 1.3125rem; font-weight: 500; letter-spacing: -0.18px; @media (max-height: 450px) { font-size: 1rem; } } .description { font-size: 1rem; letter-spacing: 0.3px; @media (max-height: 450px) { font-size: 0.875rem; } } @keyframes outline { from { stroke-dashoffset: 0; } to { stroke-dashoffset: -19; } } }