@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Hanken+Grotesk:ital,wght@0,100..900;1,100..900&family=Play:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap');


:root {
    --color-main: 44, 98, 148 ; /* 메인 컬러 #2C6294 */
    --color-main--hover: 30, 53, 79; /* 메인 호버 #1E354F */
    --color-second: 153, 17, 78; /* 세컨 컬러 #99114E */
    --color-second--hover: 92, 10, 37; /* 세컨 호버 #5C0A25 */
    --color-third: 77, 161, 169; /* 써드 컬러 #4DA1A9 */
    --color-third--hover: 42, 86, 90; /* 써드 호버 #2A565A */
    --color-white: 255, 255, 255; /* #ffffff */
}


html, body, input, textarea, select, button, table {
    font-family: 'Play', 'Noto Sans KR', sans-serif, 'Malgun Gothic','Roboto', Dotum, '돋움', Gulim, Helvetica;
    -webkit-text-size-adjust: none;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
    letter-spacing: -1px;
}



/** button, color **************************************/
/*******************************************************/
.btn {
    border-radius: 8px;
}
.btn-icon {
    display: inline-flex;
    align-items: center;
}
.btn-main {
    color: #ffffff !important;
    /*background: linear-gradient(135deg, #f17b1c 1%, #f82f2f 100%) !important;*/
    background-color: rgb(var(--color-main)) !important;
    border-color: rgb(var(--color-main)) !important;
}
.btn-main:hover, .btn-main:focus {
    background-color: rgb(var(--color-main--hover)) !important;
}
.btn-second {
    color: #ffffff !important;
    background-color:  rgb(var(--color-second)) !important;
    border-color:  rgb(var(--color-second)) !important;
}
.btn-second:hover, .btn-second:focus {
    background-color:  rgb(var(--color-second--hover)) !important;
    border-color:  rgb(var(--color-second--hover)) !important;
}
.btn-third {
    color: #ffffff !important;
    background-color:  rgb(var(--color-third)) !important;
    border-color:  rgb(var(--color-third)) !important;
}
.btn-third:hover, .btn-third:focus {
    background-color:  rgb(var(--color-third--hover)) !important;
    border-color:  rgb(var(--color-third--hover)) !important;
}
.btn-outline-main {
    border: 1px solid rgb(var(--color-main)) !important;
    color: rgb(var(--color-main)) !important;
}
.btn-outline-main:hover, .btn-outline-main:focus {
    background: rgb(var(--color-main)) !important;
    color: rgb(var(--color-white)) !important;
}
.btn-outline-second {
    border: 1px solid rgb(var(--color-second)) !important;
    color: rgb(var(--color-second)) !important;
}
.btn-outline-second:hover, .btn-outline-second:focus {
    background: rgb(var(--color-second--hover)) !important;
    color: rgb(var(--color-white)) !important;
}
.btn-outline-third {
    border: 1px solid rgb(var(--color-third)) !important;
    color: rgb(var(--color-third)) !important;
}
.btn-outline-third:hover, .btn-outline-third:focus {
    background: rgb(var(--color-third--hover)) !important;
    color: rgb(var(--color-white)) !important;
}
.color-main {
    color: rgb(var(--color-main)) !important;
}
.color-second {
    color: rgb(var(--color-second)) !important;
}
.color-third {
    color: rgb(var(--color-third)) !important;
}


.card .card-header.header-bg {
	background: rgba(var(--color-main),0.1);
	border-top-left-radius: var(--bs-card-border-radius);
	border-top-right-radius: var(--bs-card-border-radius);
}
.card .card-body .inner-group:not(:first-child) {
	margin-top: 0.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid #cacaca;
}
/** alert **********************************************/
/*******************************************************/
.bg-alert-failed .alert-icon,
.bg-alert-failed .alert-title {
    color: #ef5f5f;
}
.bg-alert-success .alert-icon,
.bg-alert-success .alert-title {
    color: #1c84ee;
}
.bg-alert-info .alert-icon,
.bg-alert-info .alert-title {
    color: #22c55e;
}
.bg-alert-custom .alert-icon,
.bg-alert-custom .alert-title {
    color: rgb(var(--color-second));
}
/** main-nav *******************************************/
/*******************************************************/
.wrapper .main-nav {
    background: #0f0308;
}
.wrapper .main-nav .navbar-nav .nav-item .nav-link.active {
    border-left-color: rgb(var(--color-second));
}
.wrapper .main-nav .navbar-nav .nav-item .nav-link.active .nav-icon {
    /*color: rgb(var(--color-second));*/
    color: #fff;
}


/** popup page *****************************************/
/*******************************************************/
.popup .topbar {
    padding-left: 0;
}
.wrapper.popup .page-content {
    margin-left: 0;
}


/** pagination *****************************************/
/*******************************************************/
.page-item:hover .page-link, .page-link:hover {
    color: rgb(var(--color-second));
}
.page-item.active .page-link {
    background: rgb(var(--color-second));
    border-color: rgb(var(--color-second));
    color: rgb(var(--color-white));
}


/** choices select + select ****************************/
/*******************************************************/
.choices__list--dropdown .choices__item--selectable,
.choices__list[aria-expanded] .choices__item--selectable {
    padding-right: 0 !important;
}
.input-group > select.form-select {
    flex: 0 0 auto !important;
    width: auto !important;
}


/** auth ***********************************************/
/*******************************************************/
.auth__bg {
    position: absolute;
    width: 100%;
    z-index: -1;
    inset: 0;
}
.auth__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.auth-login {
    width: 500px;
}
.auth-login .card > div {
    padding: 4.2rem 3.5rem;
}
.authentication-form label.form-label {
    color: rgb(var(--bs-card-title-color));
}
.auth-login .authentication-form label.form-label {
    color: #0f0308;
}
.auth-login .form-check label {
    font-size: 0.8rem;
    vertical-align: text-bottom;
}
.auth-login .form-check-input:checked {
    background-color: rgb(var(--color-second));
    border-color: rgb(var(--color-second));
}

@media (max-width: 768px ) {
    .auth-login .card > div {
        padding: 3.5rem 1.5rem;
    }
}


/** list ***********************************************/
/*******************************************************/
.table th,
.table td {
	white-space: nowrap;
}
.table th.fixed-width,
.table td.fixed-width {
	width: 100px;
	max-width: 100px;
	white-space: nowrap;
}
.table th.fixed-width.fixed-150,
.table td.fixed-width.fixed-150 {
	width: 150px;
	max-width: 150px;
}
.table th.fixed-width.fixed-200,
.table td.fixed-width.fixed-200{
	width: 200px;
	max-width: 200px;
}
.table th.fixed-width.fixed-250,
.table td.fixed-width.fixed-250{
	width: 250px;
	max-width: 250px;
}
.table th.fixed-width.fixed-300,
.table td.fixed-width.fixed-300{
	width: 300px;
	max-width: 300px;
}
.table th.fixed-width.fixed-350,
.table td.fixed-width.fixed-350 {
	width: 350px;
	max-width: 350px;
}
.table th.fixed-width.fixed-400,
.table td.fixed-width.fixed-400{
	width: 400px;
	max-width: 400px;
}
.table th.fixed-width .text-truncate,
.table td.fixed-width .text-truncate {
	display: block;
	/*width: calc(100% - 20px);*/
	width: 80px;
}
.table th.fixed-width .text-truncate,
.table td.fixed-width .text-truncate {
	display: block;
	width: 100%;
}

/** detail *********************************************/
/*******************************************************/
.page-detail .checkbox-list {
    margin-bottom: 2.5rem;
}
.page-detail .checkbox-list:last-child {
    margin-bottom: 0;
}
.page-detail .checkbox-list label {
    font-weight: normal;
}
.page-detail .overflow-x-auto .row {
    min-width: 1024px;
    max-width: 1280px;
}
.page-detail textarea {
    resize: none;
}
.form-check-input:checked {
    background-color: rgb(var(--color-main));
    border-color:  rgb(var(--color-main));
}


/* 폼 인풋 */
.form-group label {
	position: relative;
}
.form-group > label {
	margin-bottom: 0.5rem;
}
.form-group label.label__icon {
	padding-left: 1rem;
}
.form-group label.label__icon:after {
	position: absolute;
	top: 1px;
	left: 0.2rem;
	font-family: "Font Awesome 7 Free";
	content: "\f0da";  /*\f0da 가 > 화살표  \f015가 집 --- 집은 되는 상황*/
	font-weight: 600;
}
.form-group label.label__icon-center:after {
	top: 50%;
	transform: translateY(-50%);
}
.form-group .label__btn {
	padding: 0 0.5rem;
	margin-left: 0.5rem;
}
