import styled from "styled-components";

const Wrapper = styled.div`
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	justify-content: space-between;
`;

const CropArea = styled.div`
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
`;

const CropContent = styled.div`
	display: flex;
	align-items: center;
	gap: 24px;
	position: relative;
`;

const CropContainer = styled.div`
	position: relative;
	width: 236px;
	height: 236px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
`;

const ZoomControls = styled.div`
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: ${(p) => p.theme.spacing.xs};
	position: absolute;
	right: -48px;
	top: 50%;
	transform: translateY(-50%);
	pointer-events: none;
`;

const ZoomButton = styled.button`
	background: none;
	border: none;
	cursor: pointer;
	color: ${(p) => p.theme.color.interactive01};
	font-size: 24px;
	line-height: 1;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	pointer-events: auto;

	&:hover {
		opacity: 0.7;
	}
`;

const ZoomSlider = styled.input`
	appearance: slider-vertical;
	writing-mode: vertical-lr;
	direction: rtl;
	width: 4px;
	height: 120px;
	cursor: pointer;
	accent-color: ${(p) => p.theme.color.interactive01};
	pointer-events: auto;
`;

const CancelButtonContainer = styled.div`
	display: flex;
	justify-content: center;
	width: 100%;
	margin-top: ${(p) => p.theme.spacing.s};
`;

const Actions = styled.div`
	display: flex;
	gap: ${(p) => p.theme.spacing.m};
	justify-content: flex-end;
	width: 100%;
`;

export {
	Wrapper,
	CropArea,
	CropContent,
	CropContainer,
	ZoomControls,
	ZoomButton,
	ZoomSlider,
	CancelButtonContainer,
	Actions,
};
