@charset "utf-8";

/* layerPupup : basic */
.lp-wrap {
	position: fixed;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 1000;
	pointer-events: none;
}

.lp-dim {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.6);
	pointer-events: auto;
}

.lp-popup {
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid #eee;
	border-radius: 12px;
	max-width: 95vw;
	max-height: 95vh;
	overflow: hidden;
	pointer-events: auto;
	position: absolute;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.lp-header {
	padding: 14px 20px;
	border-bottom: 1px solid #eee;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.lp-title {
	font-size: 16px;
	font-weight: 600;
	margin: 0;
}

.btn-close {
	border: none;
	margin-left: 10px;
	background: none;
	font-size: 22px;
	cursor: pointer;
}

.lp-body {
	flex: 1;
	min-height: auto;
	padding: 20px;
	overflow: auto;
}

.lp-foot {
	border-top: 1px solid #e5e5e5;
	padding: 12px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	background: #fafafa;
}
.lp-foot-left{
	display: flex;
	align-items: center;
	gap: 6px;
}
.lp-foot label {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
}

.lp-foot .btns {
	display: flex;
	gap: 8px;
	margin-left: auto;
}

.lp-foot button {
	padding: 6px 14px;
	border: 1px solid #ccc;
	background: #fff;
	border-radius: 6px;
	cursor: pointer;
}

.lp-foot button:hover {
	background: #f2f2f2;
}

/* layerPupup : size */
.lp-popup[data-size='xs'] {
	width: 260px;
}

.lp-popup[data-size='sm'] {
	width: 320px;
}

.lp-popup[data-size='md'] {
	width: 600px;
}

.lp-popup[data-size='lg'] {
	width: 900px;
}

.lp-popup[data-size='xlg'] {
	width: 1200px;
}

.lp-popup[data-size='xxlg'] {
	width: 1500px;
}

.lp-popup[data-size='full'] {
    width: 100vw;
    height: 100vh;
    max-width: 100vw;
    max-height: 100vh;
    border-radius: 0;
}

@keyframes pop {from { opacity:0;
	transform: scale(0.95);
}

to {
	opacity: 1;
	transform: scale(1);
}

}

/* TOAST */
.toast-zone {
	position: fixed;
	z-index: 3000;
	pointer-events: none;
}

.oktomato-toast {
	background: #222;
	color: #fff;
	padding: 12px 16px;
	border-radius: 8px;
	margin: 8px 0;
	font-size: 14px;
	animation: toastIn 0.2s ease;
}

.toast-zone.top-left {
	top: 20px;
	left: 20px;
}

.toast-zone.top-center {
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
}

.toast-zone.top-right {
	top: 20px;
	right: 20px;
}

.toast-zone.center {
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.toast-zone.bottom-left {
	bottom: 20px;
	left: 20px;
}

.toast-zone.bottom-center {
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
}

.toast-zone.bottom-right {
	bottom: 20px;
	right: 20px;
}

@keyframes toastIn {from { opacity:0;
	transform: translateY(10px);
}

to {
	opacity: 1;
	transform: translateY(0);
}

}
.demo button {
	margin: 6px;
	padding: 10px 14px;
}

/* modal팝업 로딩시 Spinner추가 */
.modal-loading { display:flex; align-items:center; justify-content:center; gap:10px; padding:24px; min-height:120px; }
.modal-loading__spinner { width:22px; height:22px; border:3px solid rgba(0,0,0,0.15); border-top-color:rgba(0,0,0,0.6); border-radius:50%; animation:modalLoadingSpin 0.8s linear infinite; }
.modal-loading__text { font-size:14px; font-weight:600; color:#444; }
@keyframes modalLoadingSpin { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }
