import React from 'react'
import styled, { css } from 'styled-components'
import { Close, ArrowBack } from '@lidofinance/icons'
import { ButtonIcon } from '@lidofinance/button'
export const ModalStyle = styled.div<{ $center: boolean }>`
${({
theme: { fontSizesMap, borderRadiusesMap, colors, boxShadows },
$center,
}) => css`
width: 432px;
max-width: 100%;
font-weight: 400;
font-size: ${fontSizesMap.xs}px;
line-height: 1.5em;
text-align: ${$center ? 'center' : 'left'};
border-radius: ${borderRadiusesMap.xl}px;
box-shadow: ${boxShadows.xxl} ${colors.shadowDark};
`}
`
export const ModalBaseStyle = styled.div`
${({ theme: { colors } }) => css`
color: ${colors.text};
background: ${colors.foreground};
border-radius: inherit;
position: relative;
z-index: 1;
`}
`
export const ModalHeaderStyle = styled.div<{
$short: boolean
}>`
${({ theme: { spaceMap, fontSizesMap, mediaQueries }, $short }) => css`
display: flex;
align-items: flex-start;
min-height: 32px;
margin-bottom: ${$short ? -spaceMap.md : 0}px;
padding: ${spaceMap.xl}px ${spaceMap.xxl}px;
font-size: ${fontSizesMap.md}px;
line-height: 1.5em;
${mediaQueries.md} {
padding: ${spaceMap.lg}px;
}
`}
`
export const ModalTitleStyle = styled.div<{
$center: boolean
$withTitleIcon: boolean
$withCloseButton: boolean
$withBackButton: boolean
}>`
${({
theme: { fontSizesMap, spaceMap, mediaQueries },
$center,
$withBackButton,
$withCloseButton,
$withTitleIcon,
}) => css`
font-size: ${fontSizesMap.sm}px;
line-height: 1.5em;
font-weight: 700;
margin-left: ${$center && !$withBackButton ? spaceMap.xxl : '0'}px;
margin-right: ${$center && !$withCloseButton ? spaceMap.xxl : '0'}px;
padding-top: ${$withTitleIcon ? spaceMap.sm : '0'}px;
padding-left: 0;
padding-right: ${spaceMap.sm}px;
flex-grow: 1;
align-self: center;
${mediaQueries.md} {
padding-right: ${spaceMap.xs}px;
}
`}
`
export const ModalTitleIconStyle = styled.div<{
$center: boolean
}>`
${({ theme: { spaceMap }, $center }) => css`
display: ${$center ? 'flex' : 'block'};
justify-content: ${$center ? 'center' : 'flex-start'};
line-height: 0.7;
margin-bottom: ${spaceMap.md}px;
`}
`
export const ModalTitleTextStyle = styled.div`
margin: ${({ theme }) => theme.spaceMap.xs}px 0;
`
export const ModalSubtitleStyle = styled.div`
${({ theme: { colors, fontSizesMap, spaceMap, mediaQueries } }) => css`
color: ${colors.textSecondary};
font-size: ${fontSizesMap.xs}px;
font-weight: 400;
line-height: 24px;
margin-top: -${spaceMap.xl}px;
padding: 0 ${spaceMap.xxl}px ${spaceMap.sm}px;
${mediaQueries.md} {
padding-left: ${spaceMap.xl}px;
padding-right: ${spaceMap.xl}px;
}
`}
`
export const ModalContentStyle = styled.div`
${({ theme: { spaceMap, mediaQueries } }) => css`
padding: 0 ${spaceMap.xxl}px ${spaceMap.xxl}px;
${mediaQueries.md} {
padding: 0 ${spaceMap.lg}px ${spaceMap.lg}px;
}
`}
`
export const ModalCloseStyle = styled(ButtonIcon).attrs({
icon: ,
color: 'secondary',
variant: 'ghost',
size: 'xs',
})`
margin: 0 -10px 0 0;
color: ${({ theme }) => theme.colors.textSecondary};
flex-shrink: 0;
border-radius: 50%;
`
export const ModalBackStyle = styled(ButtonIcon).attrs({
icon: ,
color: 'secondary',
variant: 'ghost',
size: 'xs',
})`
${({ theme: { colors, spaceMap } }) => css`
color: ${colors.textSecondary};
flex-shrink: 0;
margin: 0 ${spaceMap.sm}px 0 -6px;
border-radius: 50%;
background: transparent !important;
`}
`