@charset "utf-8";
/*
 * features/ai/image/style.css
 * generate / edit / card 공통 좌우 워크스페이스
 */

main.sub-content.ai-image-page,
main.sub-content.image-generate-page,
main.sub-content.image-edit-page,
main.sub-content.image-card-page {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 16px;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	box-sizing: border-box;
}

main.sub-content.ai-image-page > .prompt-area,
main.sub-content.image-generate-page > .prompt-area,
main.sub-content.image-edit-page > .prompt-area,
main.sub-content.image-card-page > .prompt-area {
	flex: 0 0 420px !important;
	width: 420px !important;
	max-width: 420px !important;
	min-width: 0 !important;
	align-self: stretch !important;
	box-sizing: border-box;
}

main.sub-content.ai-image-page > .result-area,
main.sub-content.image-generate-page > .result-area,
main.sub-content.image-edit-page > .result-area,
main.sub-content.image-card-page > .result-area {
	flex: 1 1 0% !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	align-self: stretch !important;
	box-sizing: border-box;
}

@media (max-width: 1200px) {
	main.sub-content.ai-image-page,
	main.sub-content.image-generate-page,
	main.sub-content.image-edit-page,
	main.sub-content.image-card-page {
		flex-wrap: wrap !important;
	}

	main.sub-content.ai-image-page > .prompt-area,
	main.sub-content.image-generate-page > .prompt-area,
	main.sub-content.image-edit-page > .prompt-area,
	main.sub-content.image-card-page > .prompt-area,
	main.sub-content.ai-image-page > .result-area,
	main.sub-content.image-generate-page > .result-area,
	main.sub-content.image-edit-page > .result-area,
	main.sub-content.image-card-page > .result-area {
		flex: 1 1 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}

/* generate / edit 공통 결과 영역: #response를 채우고 이미지는 contain */
.image-generate-page .result-area,
.image-edit-page .result-area {
	display: flex;
	flex-direction: column;
	min-height: 0;
}

.image-generate-page .result-area #response.result-img,
.image-edit-page .result-area #response.result-img {
	flex: 1 1 auto;
	align-self: stretch;
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	max-height: none !important;
	overflow: hidden !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 20px !important;
	box-sizing: border-box;
}

.image-generate-page .result-area #response .image-grid,
.image-generate-page .result-area #response .txt-box,
.image-edit-page .result-area #response .image-grid,
.image-edit-page .result-area #response .txt-box {
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	margin: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	box-sizing: border-box;
}

.image-generate-page .result-area #response .img-box,
.image-edit-page .result-area #response .img-box {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	margin: 0;
	position: relative;
	display: flex !important;
	align-items: center;
	justify-content: center;
}

.image-generate-page .result-area #response .img-box figure,
.image-edit-page .result-area #response .img-box figure {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	padding-bottom: 0 !important;
	margin: 0;
	overflow: hidden;
	position: relative !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	background: color-mix(in srgb, var(--rp-border, #ddd) 25%, transparent);
}

.image-generate-page .result-area #response .img-box figure img,
.image-edit-page .result-area #response .img-box figure img {
	position: static !important;
	top: auto !important;
	left: auto !important;
	transform: none !important;
	display: block;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain;
	border-radius: 10px;
}

.image-generate-page .result-area #response .img-box .tool-list,
.image-edit-page .result-area #response .img-box .tool-list {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 2;
	box-sizing: border-box;
	padding: 16px 14px !important;
}

@media (max-width: 768px) {
	.image-generate-page .result-area #response.result-img,
	.image-edit-page .result-area #response.result-img {
		padding: 12px !important;
		min-height: 360px !important;
	}
}
