* {
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
  margin:0; padding:0;
  color:#1E293B;
}

body { font-family:"Pretendard", sans-serif; color:#1E293B; }
h1,h2,h3,h4,h5,h6 { font-family:"Pretendard", sans-serif; margin:0; }
a { cursor:pointer !important; color:#1E293B; }
p { margin:0; }

input[type='text'], input[type='password'], input[type='tel'] {padding: 0 5px}
input[type=submit], input[type=button] {-webkit-appearance: none;}
input[type=button], input[type=submit], button {cursor:pointer}
input:focus, button:focus, textarea {outline:none;}
label { margin:0; }
input[type='text']:disabled { background:#f5f5f5; }
.label { padding:0; color:#1E293B; font-size:14px; font-weight:400; display:inline-block; }

.calendar_wrap { gap:10px; }
.calendar_wrap > span { width:15px; font-weight:500; text-align:center; display:inline-block; }
.calendar_box { position:relative; }
.calendar_box .date_box { width:100%; position:relative; }
.calendar_box .date_box button { min-width:auto; height:auto; padding:0; border:0; position:absolute; top:50%; right:16px; transform:translateY(-50%); background:none; }
.calendar_box .date_box button img { width:25px; }

/*a:focus { outline:none; }*/
img {border:none; vertical-align: top}
dl,dt,dd,ul,ol,li { list-style:none; margin:0; }
em,address {font-style:normal} 

a:link {text-decoration:none; border:none}
a:hover, a:active, a:visited {text-decoration:none; cursor:pointer; color:#1E293B;}
a:hover, a:focus { text-decoration:none; }
legend, caption {position:absolute; top:0; left:0; width:0; height:0; overflow:hidden; visibility:hidden; font-size:0; line-height:0}
textarea {overflow: auto; resize: none; border: 1px solid #dadbdc; border-radius: 5px;}
table { width:100%; border-collapse:collapse; border-spacing:0; }

/* placholder */
/* ::-webkit-input-placeholder{color:#999}
::-moz-placeholder{color:#4A4A4A} /* firefox 19+
:-ms-input-placeholder{color:#999}  ie
input:-moz-placeholder{color:#999} */
/* placholder */
::-webkit-input-placeholder{color:#b5bfcd}
::-moz-placeholder{color:#4A4A4A} /* firefox 19+ */
:-ms-input-placeholder{color:#b5bfcd} /* ie */
input:-moz-placeholder{color:#b5bfcd}

/* layout */
.elp {white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.mlp {overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}

/* ============================================================
   Toast Notification
   ============================================================ */
.hidden { display: none !important; }
.common_toast { position: fixed; bottom: 5.5rem; left: 50%; transform: translateX(-50%); z-index: 99999; animation: toast_pop 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); }
.toast_content { background: #111827; padding: 1rem 1.75rem; border-radius: 1.25rem; display: flex; align-items: center; gap: 0.75rem; box-shadow: 0 25px 50px -12px rgba(0,0,0,0.5); white-space: nowrap; }
.toast_icon { width: 1.75rem; height: 1.75rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.toast_icon svg { width: 0.875rem; height: 0.875rem; }
.toast_content p { font-size: 0.875rem; font-weight: 800; color: #fff !important; }
@keyframes toast_pop {
    0%   { transform: translateX(-50%) translateY(12px); opacity: 0; }
    100% { transform: translateX(-50%) translateY(0);    opacity: 1; }
}