/*xxl*/ @media (max-width: 1399px) {
}
/*xl*/ @media (max-width: 1199px) {
}
/*lg*/ @media (max-width: 991px) {
}
/*Mobile+Tablet 가로모드*/ @media (max-width: 991px) and (orientation:landscape) {
}
/*md*/ @media (max-width: 767px) {
}
/*sm*/ @media (max-width: 575px) {
}
/*Galaxy Fold 280*/ @media (max-width: 300px) {
}


/* 리셋 시작 */

:root {
    --color-background: #fff;
    --color-background-light: #fcfcfc;
    --color-background-dark: #ededed;
    --color-main: #193c93;
    --color-main-light: #80a4d9;
    --color-main-dark: #0a3470;
    --color-main-background: #f1f6ff;
    --color-main-second: #5d03ad;
    --color-gray: #a1a1a1;
    --color-gray-xlight: #f7f7f7;
    --color-gray-light: #dcdcdc;
    --color-gray-dark: #6e6e6e;
    --color-text: #383838;
    --color-text-light: #8d8d8d;
    --color-red: #ff606e;
    --color-red-dark: #a9444d;
    --color-green: #10b701;
    --color-blue: #067bda;

    --container-width: 1200px;
    --container-full-width: 2000px;

    --section-margin: 2rem;
    --section-margin-sm: 1rem;

    --bs-font-sans-serif: 'Montserrat', 'Noto Sans KR', sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
}

html { font-size: 16px; }
/*md*/ @media (max-width: 767px) {
    html { font-size: 15px; }
}
/*sm*/ @media (max-width: 575px) {
    html { font-size: 14px; }
}

body {
    margin: 0;
    font-family: var(--bs-font-sans-serif);
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: -0.5px;
    color: var(--color-text);
    background-color: var(--color-background);
    /*-webkit-text-size-adjust: 100%;*/ /* 모바일 기기의 설정에서 글자크기를 키우면, Edge에서도 영향을 받으므로 auto로 변경 */
    -webkit-text-size-adjust: auto;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

section { margin-bottom: var(--section-margin); }
/*sm*/ @media (max-width: 575px) {
    section { margin-bottom: var(--section-margin-sm); }
}

/* 리셋 끝 */




/* 공통 시작 */

/* 배경색 */
.bg-main { background-color: var(--color-main); }
.bg-main-light { background-color: var(--color-main-light); }
.bg-main-dark { background-color: var(--color-main-dark); }
.bg-gray { background-color: var(--color-gray); }
.bg-gray-light { background-color: var(--color-gray-light); }
.bg-gray-dark { background-color: var(--color-gray-dark); }
.bg-text { background-color: var(--color-text); }
.bg-text-light { background-color: var(--color-text-light); }
.bg-red { background-color: var(--color-red); }
.bg-green { background-color: var(--color-green); }
.bg-blue { background-color: var(--color-blue); }

/* 버튼 */
.btn-main { background-color: var(--color-main); border-color: var(--color-main); color: #fff; }
.btn-main:hover { background-color: var(--color-main-dark); border-color: var(--color-main-dark); color: #fff; }
.btn-outline-main { background-color: #fff; border-color: var(--color-main); color: var(--color-main); }
.btn-outline-main:hover { border-color: var(--color-main-dark); color: var(--color-main-dark); }
.btn-outline-gray-dark { background-color: #fff; border-color: var(--color-gray-dark); color: var(--color-gray-dark); }
.btn-outline-gray-dark:hover { background-color: var(--color-gray-dark); border-color: var(--color-gray-dark); color: #fff; }
.btn-gray { background-color: var(--color-gray); border-color: var(--color-gray); color: #fff; }
.btn-gray:hover { background-color: var(--color-gray-dark); border-color: var(--color-gray-dark); color: #fff; }
.btn-gray-dark { background-color: var(--color-gray-dark); border-color: var(--color-gray-dark); color: #fff; }
.btn-gray-dark:hover { background-color: #000; border-color: #000; color: #fff; }
.btn-gray-light { background-color: var(--color-gray-light); border-color: var(--color-gray-light); color: var(--color-gray-dark); }
.btn-gray-light:hover { background-color: var(--color-gray); border-color: var(--color-gray); color: #fff; }
.btn-outline-gray-light { background-color: #fff; border-color: var(--color-gray-light); color: var(--color-text); }
.btn-outline-gray-light:hover { background-color: var(--color-gray-light); border-color: var(--color-gray-light); color: var(--color-text); }
.btn-red { background-color: var(--color-red); border-color: var(--color-red); color: #fff; }
.btn-red:hover { background-color: var(--color-red-dark); border-color: var(--color-red-dark); color: #fff; }
.btn-outline-red { background-color: #fff; border-color: var(--color-red); color: var(--color-red); }
.btn-outline-red:hover { border-color: var(--color-red-dark); color: var(--color-red-dark); }
.btn-kakao { background-color: #fae100; border-color: #fae100; color: #3c1e1e; }
.btn-kakao:hover { background-color: #e1ca01; border-color: #e1ca01; }

.btn i { margin-right: 0.25rem; }

/* 부트스트랩 Alert */
.alert-white { background-color: #fff; border-color: var(--color-gray-light); }

/* 모달 */
.modal .modal-header.modal-green { color: var(--color-green); }
.modal .modal-header.modal-red { color: var(--color-red); }
.modal .modal-header.modal-blue { color: var(--color-blue); }
.modal .modal-header i { margin-right: 0.5rem; }

/* 내용이 비어서 크기 지정이 어려운 div에 background-size: cover 사용을 위한 정사각형 빈 이미지 */
.pngsquare { width: 100%; }

/* th */
th { white-space: nowrap; font-size: 1.1rem; font-weight: 500; }
/*sm*/ @media (max-width: 575px) {
    th { font-size: 1rem; }
}

/* 로딩아이콘 */
#divLoading { position: fixed; display: none; width: 100%; height: 100%; left: 0; top: 0; justify-content: center; align-items: center; background-color: #00000069; z-index: 1040; }
#divLoading i { font-size: 10rem; color: #fff; opacity: 1; }
#divLoading i:before { animation: rotate_loading 2.5s cubic-bezier(0, 0, 0, 0) infinite; }
@keyframes rotate_loading {
    100% {
        transform: rotate(360deg);
    }
}

/* 금액 input */
input.pricenumber { text-align: right; }

/* 비밀번호 input */
input[type='password'] { font-size: 1.5rem; letter-spacing: 0.5rem; }

/* IE 접속불가 */
#divIeMessage { display: flex; justify-content: center; align-items: center; width: 100vw; height: 100vh; }
#divIeMessage .content { width: 80%; max-width: 550px; padding: 2rem; text-align: center; border: 5px double gray; }
#divIeMessage .content .title { font-size: 1.5rem; font-weight: bold; }

/* 웹에디터 작성 */
.dropdown-toggle::after { display: none; }
.note-btn-group.note-align { margin-right: 4px !important; }
.note-popover .popover-content .note-para .note-dropdown-menu > div + div, .note-editor .note-toolbar .note-para .note-dropdown-menu > div + div { margin: 0 !important; }
.note-modal-footer { height: 53px !important; }
.note-editor.note-frame,
.note-editor.note-airframe {
    border: 1px solid var(--color-gray-light) !important;
    max-width: var(--container-width);
}
.note-editing-area { font-family: var(--bs-font-sans-serif); color: var(--color-text); }
.note-editing-area p { margin-bottom: 0; }
.note-editor iframe { max-width: 100%; }

/* 웹에디터 출력 */
.note-viewer { overflow: hidden; }
.note-viewer a { transition: 0.4s; }
.note-viewer a:hover { opacity: 0.7; }
.note-viewer p { margin-bottom: 0; }
.note-viewer * { max-width: 100%; }
.note-viewer table { max-width: 100%; }
.note-viewer iframe { max-width: 100%; }
.note-viewer img { max-width: 100%; height: unset; }

/* 날짜선택 */
.datetime-area { display: flex; margin-bottom: 0.5rem; cursor: pointer; }
.datetime-area > div { flex: 1; margin-right: 0.5rem; }
.datetime-area > div:last-child { margin-right: 0; }
.datetime-area:hover .body { border-color: var(--color-main); color: var(--color-main); }
.datetime-area:hover .body .time { border-color: var(--color-main); }
.datetime-area .body { display: flex; align-items: center; margin-bottom: 0.5rem; white-space: nowrap; border: 1px solid var(--color-gray-light); border-radius: 0.25rem; transition: border-color 0.4s, color 0.4s; }
.datetime-area .body.date-invalid { border-color: #dc3545; background: no-repeat right center; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='18' height='18' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); background-position: right 3rem center; }
.datetime-area .body .title { padding-left: 1.5rem; margin-bottom: 0; font-size: 1.25rem; font-weight: 500; }
.datetime-area .body .date { flex: 2.5; display: flex; justify-content: space-between; align-items: center; padding: 1rem 1.5rem; }
.datetime-area .body .time { flex: 1; display: flex; justify-content: space-between; align-items: center; padding: 1rem 1.5rem; border-left: 1px dashed var(--color-gray-light); transition: border-color 0.4s; }
/*lg*/ @media (max-width: 991px) {
    .datetime-area { flex-direction: column; }
    .datetime-area > div { margin-right: 0; }
}
/*sm*/ @media (max-width: 575px) {
    .datetime-area .body .title { padding-left: 0.7rem; }
    .datetime-area .body .date { padding: 1rem 0.7rem; }
    .datetime-area .body .time { padding: 1rem 0.7rem; }
}

/* 공통 끝 */

