@charset "UTF-8";

/*=================================================================================
 * Layout style
 =================================================================================*/
.page-wrapper {position: relative; width:100%; min-height: 100%;}
.dashboard-layout-header {position: fixed; top: 0; left: 0; width: 100%; background-color: #fff; box-shadow: 0px 0 10px 0px rgba(0,0,0,0.10); z-index: 30; padding: 0;}
.dashboard-layout-container {position: relative; display: flex; height: calc(100vh - 74px);}
.dashboard-layout-left {position: fixed; top: 0; left: 0; width: 280px; height: 100%; transition: left 0.3s ease; z-index: 20;}
.dashboard-layout-right {width: calc(100% - 280px); margin-left: 280px; height: 100%; transition: all 0.3s; z-index: 1;}
.layout-contents {position: relative; display: flex; justify-content: center; width: 100%; height: 100%; padding: 24px 24px 24px 24px; margin-top: 74px;}
.layout-contents article {min-width: 680px;}

/*=================================================================================
 * (Layout) Header style
=================================================================================*/
header {display: flex; justify-content: space-between; align-items: center; padding: 12px 24px;}
header .left  {display: flex; justify-content: center; align-items: center;}
header .right .btn-hamburger {display: none; width: 40px; height: 40px; background-color: #fff; padding: 0; text-align: center;}
header .right .btn-hamburger img {margin-right: 0;}

/*=================================================================================
 * (Layout) Nav style
=================================================================================*/
.layout-sidebar {height: 100%; padding: 98px 24px 24px 24px; background-color: #fff; box-shadow: 0px 0 10px 0px rgba(0,0,0,0.10); z-index: 60;}

.layout-sidebar .login {text-align: center; padding: 8px 0 24px 0; border-bottom: 1px solid #ddd;}
.layout-sidebar .login .login-box .user-img {width: 80px; height: 80px; margin: 0 auto; border-radius: 50%; overflow: hidden;}
.layout-sidebar .login .login-box .user-img img {width: 100%;}
.layout-sidebar .login .login-box .user-name {padding: 12px 0 0 0;}
.layout-sidebar .login .login-box .name {color: #000; font-weight: bold; margin-bottom: 8px;}
.layout-sidebar .login .login-box .id {font-size: 14px; color: #9DA4B4;}
.layout-sidebar .login .login-box .push {width: 100%; margin-top: 12px; padding: 12px 8px; border: 1px solid #dedede; border-radius: 8px; font-size: 16px; font-weight: bold;}
.layout-sidebar .login .login-box .push img {margin-right: 8px;}

.layout-sidebar .sidebar {margin: 16px 0;}
.nav {display: flex; flex-flow: column wrap; align-items: center; justify-content: space-between;}
.nav::-webkit-scrollbar {width:7px; height: 10px; border-radius: 10px;}
.nav::-webkit-scrollbar-track {background-color: #f1f1f1;}
.nav::-webkit-scrollbar-thumb {border-radius: 10px; background-color: #b3b6bf;}

.nav > ul {width: 100%;}
.nav > ul li a {color: #333333; transition: all .2s;}
.nav .dep1 {position: relative;}
.nav .dep1 > a {display: flex; flex-flow: row wrap; align-items: center; padding:9px 0; margin-bottom: 8px; font-size: 18px; font-weight: 600; transition: all .2s;}
.nav .dep1 > a::before {content: ""; display: inline-block; width: 40px; height:40px; margin-right: 6px; vertical-align: middle;}
.nav .dep1:nth-child(1) > a::before {background: url('../images/icon/ico-lnb01.svg')no-repeat center;}
.nav .dep1:nth-child(2) > a::before {background: url('../images/icon/ico-lnb02.svg')no-repeat center;}
.nav .dep1:nth-child(3) > a::before {background: url('../images/icon/ico-lnb03.svg')no-repeat center;}
.nav .dep1:nth-child(4) > a::before {background: url('../images/icon/ico-chart.svg')no-repeat center / 25px 30px;}
.nav .dep1:nth-child(5) > a::before {background: url('../images/icon/ico-logout.svg')no-repeat center;}
.nav .dep1.on > a {color: #7A31F6;}
.nav .dep1.on:nth-child(1) > a::before {background: url('../images/icon/ico-lnb01-on.svg')no-repeat center;}
.nav .dep1.on:nth-child(2) > a::before {background: url('../images/icon/ico-lnb02-on.svg')no-repeat center;}
.nav .dep1.on:nth-child(3) > a::before {background: url('../images/icon/ico-lnb03-on.svg')no-repeat center;}
.nav .dep1.on:nth-child(4) > a::before {background: url('../images/icon/ico-chart_active.svg')no-repeat center / 25px 30px;}
.nav .dep1.on:nth-child(5) > a::before {background: url('../images/icon/ico-logout.svg')no-repeat center;}

.layout-sidebar .btn-appdown {display: none;} 
.btn-sidebar-close {display: none; position: absolute; top: 8px; right: -25px; width: 50px; height: 50px; border-radius: 50%; text-align: center; padding: 8px 8px;}

/*=================================================================================
 * Section style
=================================================================================*/
.row {display:flex; margin-bottom: 16px; gap: 16px;}
.row:last-child {margin-bottom: 0;}
.col section, .col .section {margin-bottom: 16px;}
.col section:last-child .col .section:last-child {margin-bottom: 0;}

.page-title {display: flex; align-items: center; margin: 16px 0 24px 0; gap: 16px;}
.title-box {display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px;}
.title-box dl {display: flex; align-items: center; gap: 8px;}

.form-wrap > div {margin-bottom: 12px;}
.form-wrap > div:last-child {margin-bottom: 0;}
.form-wrap h4 {margin: 24px 0 15px 0;}
.form-wrap > div select {width: 100%;}
.info {color: #7F7F8C; font-size: 14px; margin-top: 10px;}
.img-box {position: relative; background-color: #E5E8EF; border-radius: 10px; object-fit: cover;}
.img-box img {width: 100%; object-fit: cover;}

.tag-wrap {display: flex; flex-flow: row wrap; gap: 4px 8px; margin-bottom: 12px;}
.tag {padding: 6px 12px; font-size: 13px; color: #7F7F8C; background-color: #EFF1F6; border-radius: 6px;}

/*=================================================================================
 * Popup style
=================================================================================*/
.popup-overlay, .popup-wrapper {z-index: 999;}
.popup-overlay {position: fixed; top:0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.6);}
.popup-wrapper {position: fixed; top: 50%; left: 50%; min-width: 320px; transform: translate(-50%, -50%); background-color: #fff; padding: 24px; border-radius: 15px; z-index: 999;}
.popup-title {display: flex; align-items: center; justify-content: center; padding-bottom: 10px; margin-bottom: 24px; font-size: 28px; font-weight: 600;}
.popup-title h3, .popup-title h4 {font-size: 28px;}
.popup-title .btn-popup-close {position: absolute; right: 24px;}
.popup-contents {text-align: center;}
.popup-contents h4 {margin-bottom: 30px;}
.popup-contents p {margin: 8px 0;}
.popup-button {display: flex; justify-content: center; align-items: center; gap: 10px; margin-top: 24px; width: 100%;}
.popup-button .btn, .popup-button button {width: 100%;}

/*=================================================================================
 * (Layout) Mobile style
=================================================================================*/
@media screen and (max-width: 1024px) {
    /*Layout*/
    .dashboard-layout-container {height: calc(100vh - 68px);}
    .dashboard-layout-left {display: none;}
    .dashboard-layout-left.active {position: fixed; display: block;}
    .dashboard-layout-right {margin-left: 0; width: 100%;}
    .layout-contents {padding: 60px 16px 16px 16px;}

    /*Header*/
    header {padding: 12px 16px;}
    header .logo img {width: 70%;}
    header .right .btn-hamburger {display: block;}
    header .right .btn-appdown {display: none;}
    header .slot-wrap {position: absolute; top: 12px; left: 18px;  z-index: 1;}
    
    /*LNB*/
    .btn-sidebar-close {display: block;}
    .dashboard-layout-left { z-index: 60;}
    .layout-sidebar {padding: 24px;}
    .layout-sidebar .btn-appdown {display: flex; z-index: 50;} 
}


/*=================================================================================
 * Motion style
 =================================================================================*/
/* Motion */
.slidein {animation: slideIn 0.3s ease-in-out forwards;}
@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateX(-100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.slidedown {animation: slideDown 0.3s ease-in-out forwards;}
@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-100%);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    } 
}
