/* admin system style */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    color: #212529;
    font-family: 'Pretendard', sans-serif;
}

[class^=xi], [class^=bi] {
    color: initial;
}

dl, ol, ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none;
}

a {
    text-decoration: none;
}

body {
    background-color: #FAFAFF;
}


/* capsule */

.white-space-no-wrap {
    white-space: nowrap !important;
}

.modal-content {
    border-radius: 10px;
    overflow: hidden;
}

[data-href],
a,
input[type=radio],
input[type=checkbox] {
    cursor: pointer;
}

.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 25px;
}

.pagination > a {
    text-decoration: none;
    color: #5A5A5A;
}

.pagination > a > i {
    line-height: 24px;
    font-size: 0.85rem;
    color: #939599;
}

.pagination > a.active {
    text-decoration: none;
    color: #7fe246;
}

.image-container {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.image-fill {
    width: 100%;
    height: 100%;
    object-fit: fill;
}

.image-contain {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.round-4 { border-radius: 4px !important; }
.round-16 { border-radius: 16px !important; }
.round-32 { border-radius: 32px !important; }

/* start of header */

.sr-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 50px;
    z-index: 1020;
    overflow: hidden;
}

.sr-header > * {
    float: left;
}

.sr-header-logo {
    width: 260px;
    height: 100%;
    background-color: #333333;
    text-align: center;
    line-height: 50px;
}

.sr-header-tab {
    display: flex;
    justify-content: space-between;
    align-items: center; 
    width: calc(100% - 260px);
    height: 100%;
    background-color: #FFFFFF;
    border-bottom: 1px solid #bebebe;
    padding: 0 50px;
}

.sr-header-tab > div:not(.sr-header-info), .sr-header-tab > div:not(.sr-header-info) > a, .sr-header-tab > div:not(.sr-header-info) > a > span {
    display: inline-block;
    height: 100%;
}

.sr-header-tab > div:not(.sr-header-info) > a > span {
    line-height: 52px;
}


.sr-header-tab > div > a > span.tab-active {
    color: #000000;
    font-weight: bolder;
    position: relative;
}

.sr-header-tab > div > a > span.tab-active::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 4px;
    height: 4px;
    border-radius: 4px;
    background-color: #333333;
}

.sr-header-info {
    display: flex;
    align-items: center;
}

.sr-header-info>span {
    display: flex;
    align-items: center;
}

.sr-header-info>span>i {
    color: #2176c0;
    font-size: 1.25rem;
    margin-right: 5px;
}

.sr-logo-wrapper {
    width: 260px;
    height: 50px;
}

.sr-logo-wrapper img {
    object-fit: fill;
    width: 100%;
    height: 100%;
}

.sr-btn {
    display: flex;
    align-items: center;
}

.sr-btn > i {
    font-size: 1rem;
    color: #FFFFFF;
    margin-right: 5px;
}
/* end of header css */


/* start of side nav css */

.sr-nav {
    position: fixed;
    top: 50px;
    bottom: 0;
    width: 260px;
    background-color: #424242;
    z-index: 1030;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
}

.sr-nav .sr-gnb {
    user-select: none;
    cursor: pointer;
}

.sr-nav .sr-gnb li {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 13px 0 13px 0;
    width: 260px;
    background-color: transparent;
    flex-wrap: wrap;
}

.sr-nav .sr-gnb li > span {
    position: relative;
    display: flex;
    align-items: center;
    gap: 1.5rem;
    padding-left: 24px;
}

.sr-nav .sr-gnb li.active {
    background-color: #6B6B6B;
}

.sr-nav .sr-gnb li .sr-nav-title {
    color: #CFCFCF;
}

.sr-nav .sr-gnb li.active .sr-nav-title {
    color: #FFFFFF;
    font-weight: bolder;
}

.sr-session {
    margin-top: auto;
}

.sr-session-info {
    display: flex;
    flex-direction: column;
    padding: 0 20px 20px 20px;
    gap: 10px;
    margin-top: auto;
}

.sr-session-info span {
    text-align: center;
}

.sr-session-info span, .sr-session-info span * {
    color: #CFCFCF;
}

.sr-session-info-footer {
    background-color: #505050;
    height:50px;
    display: flex;
    flex-direction: column;
    padding-top:8px;
    margin-top: auto;
}

.sr-session-info-footer span {
    text-align: center;
}

.sr-session-info-footer span, .sr-session-info-footer span * {
    color: #A1A1A1;
    font-size:12px;
}

.sr-logout-btn {
    border: 1px solid #7B7B7B;
    width: 100%;
    height: 50px;
    font-weight: bold;
    color: #CFCFCF;
    background-color: #424242;
    line-height: 50px;
    text-align: center;
    border-radius: 10px;
}

.sr-logout-btn:hover {
    background-color: #3b3b3b;
    color: #d6d6d6;
}

/* end of nav css */


/* start of contents css */

.sr-contents {
    position: relative;
    left: 260px;
    width: calc(100% - 260px);
    margin-top: 50px;
    padding: 40px 0;
}

.sr-contents > * {
    margin-left: 50px;
    margin-right: 50px;
}

.sr-ctitle-group {
    display: flex;
}

.sr-ctitle-group > .sr-ctitle-icon {
    width: 30px;
    height: 30px;
    margin-bottom: 1.5rem;
}

.sr-ctitle {
    margin-left: 8px;
    font-size: 22px;
    font-weight: bolder;
    color: #000000;
}

.sr-contents>.row {
    --bs-gutter-x: 0rem;
}

.sr-panel {
    background-color: #FFFFFF;
    padding: 25px 40px;
    border: 1px solid rgba(160, 162, 168, 0.5);
    border-radius: 8px;
}

.sr-panel:not(:last-child) {
    margin-bottom: 1.5rem;
}

.sr-panel label.col-form-label::before {
    content: '\2022';
    font-size: 1.5rem;
    color: #60a4db;
    padding-right: 12px;
    vertical-align: top;
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.25rem;
}

.sr-toast-area-wrapper {
    position: fixed;
    bottom: 80px;
    right: 40px;
    width: 350px;
    z-index: 1030;
    display: flex;
    align-items: flex-end;
}

/* end of contents css */


/* start of info box css */

.info-box {
    flex: 1;
    margin-bottom: 2rem;
}

.info-box-head {
    text-align: center;
    padding: 7px 0;
    background-color: #EDF3F8;
    color: #5D6D7E;
    font-weight: bold;
}

.info-box-body {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    padding: 26px 0;
    border: 3px solid #EDF3F8;
    background-color: #FFFFFF;
}

.multi-info-box {
    margin-bottom: 2rem
}

.multi-info-box-head {
    text-align: center;
    padding: 7px 0;
    background-color: #EDF3F8;
    color: #5D6D7E;
    font-weight: bold;
}

.multi-info-box-body {
    display: flex;
    justify-content: space-around;
    align-items: center;
    gap: 10px;
    padding: 14px 0;
    border: 3px solid #EDF3F8;
    background-color: #FFFFFF;
}

.multi-info-box-body .multi-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex: 1;
}

.multi-info-box-body .multi-item .multi-item-head {
    font-size: 1.1rem;
}

.multi-info-box-body .multi-item .multi-item-body {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}


/* end of info box css */


/* start of auth css */

#auth-bg {
    background-color: #eeeeee;
}

#auth-bg form {
	width: 485px;
}

.auth-bg-top {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: calc(100% - 50px);
    background-color: #333333;
}

.auth-login-form {
    position: relative;
    padding: 30px;
    width: 100%;
    background-color: #FFFFFF;
    border-radius: 16px;
    border: 2px solid #333333;
}

.auth-login-form input {
    height: 54px;
}

.auth-login-bg-graphic {
    position: fixed;
    bottom: 0;
    right: 0;
}

.auth-login-form .login-btn {
    width: 100%;
    height: 77px;
    border-radius: 16px;
    color: #FFFFFF;
    background-color: #333333;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    font-size: 28px;
    font-weight: bolder;
    border: 3px #A47F52 solid;
}


/* end of auth css */


/* custom bootstrap */

.flex-item {
    flex: 1 !important;
}

.btn-primary-o {
    background-color: #FFFFFF;
    border: 1px solid #0d6efd;
    color: #0d6efd;
}

.btn-primary-o:hover {
    color: #0d6efd;
}

.btn-primary-o:focus {
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5);
}

.btn-warning-o {
    background-color: #FFFFFF;
    border: 1px solid #ffc107;
    color: #ffc107;
}

.btn-warning-o:hover {
    color: #ffc107;
}

.btn-warning-o:focus {
    box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5);
}

.btn-danger-o {
    background-color: #FFFFFF;
    border: 1px solid #dc3545;
    color: #dc3545;
}

.btn-danger-o:hover {
    color: #dc3545;
}

.btn-danger-o:focus {
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);
}

.btn-success-o {
    background-color: #FFFFFF;
    border: 1px solid #198754;
    color: #198754;
}

.btn-success-o:hover {
    color: #198754;
}

.btn-success-o:focus {
    box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);
}

.btn-secondary-o {
    background-color: #FFFFFF;
    border: 1px solid #6c757d;
    color: #6c757d;
}

.btn-secondary-o:hover {
    color: #6c757d;
}

.btn-secondary-o:focus {
    box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);
}

.btn-dark-o {
    background-color: #FFFFFF;
    border: 1px solid #212529;
    color: #212529;
}

.btn-dark-o:hover {
    color: #212529;
}

.btn-dark-o:focus {
    box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);
}

.btn-info {
    background-color: #17a2b8;
    color: #FFFFFF;
}

.btn-info:is(:hover, :focus) {
    background-color: #1195aa;
    color: #FFFFFF;
}

.btn-info-o {
    background-color: #FFFFFF;
    border: 1px solid #0dcaf0;
    color: #0dcaf0;
}

.btn-info-o:hover {
    color: #0dcaf0;
}

.btn-dark-o:focus {
    box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);
}

.text-skyblue {
    color: #7fa0c0 !important;
}

.table-sm, .alert-sm, .form-check-sm {
    font-size: 0.89rem;
}

.table {
    border-spacing: 0;
    border-collapse: separate;
}

.table thead {
    background-color: #333333;
}

.table thead tr th {
    color: #FFFFFF;
    border-top: 3px solid #A47F52;
    
}

.table tbody tr:last-child td {
    /* border-bottom-width: 1.5px; */
    border-bottom: 1px solid #a3a3a3;
}

.table .sorting::after {
    content: url(../images/sort_both.png);
    position: absolute;
}

.table .sorting-desc::after {
    content: url(../images/sort_desc.png);
    position: absolute;
}

.table .sorting-asc::after {
    content: url(../images/sort_asc.png);
    position: absolute;
}

.table thead tr th, .table tbody tr td {
    padding: 7.5px 4px;
}

.table tbody {
    background-color: #FFFFFF;
}

form[method=GET] .form-select {
    width: auto;
}

.btn.btn-sm {
    white-space: nowrap;
    text-overflow: ellipsis;
}

.border-dashed {
    border: 1px dashed #939599;
}

.top-line {border-top:solid 1px gray;}
.bottom-line {border-bottom:solid 1px gray;}
.left-line {border-left:solid 1px gray;}
.right-line {border-right:solid 1px gray;}
.list {
	height: 32px;
	line-height: 32px;
}
.fl {float:left; }
.tc {text-align:center; }

.location-wrapper {
    display: flex;
    position: absolute;
    flex-direction: column;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.location-wrapper #map {
    height: calc(100% - 40px);
    width: 100%;
}

.location-wrapper .current-location {
    height: 40px;
    width: 100%;
    text-align: center;
    line-height: 40px;
    font-size: 18px;
}

.modal .modal-header {
    background-color: #333333;
    border: 2px solid #A47F52;
    border-bottom: 0;
}

.modal .modal-title {
    color: #ffffff;
    font-weight: bolder;
}
.bi-list {
    display: none;
}


@media (min-width: 0px) and (max-width: 768px) {
	#auth-bg form {
		width: 95%;
	}
    .bi-list {
        display: block;
    }
    .sr-nav {
        top: 0;   
        display: none;
    }
    .sr-header-logo {
        display:  none;
    }
    .sr-contents {
        width: 100%;
        padding: 0;
        left: 0;
        margin-top: 60px;
    }
    .sr-contents > * {
        margin: 0 10px;
    }
    .sr-header-tab {
        width: 100%;
        padding-left: 10px !important;
    }
    .bi-list {
        font-size: 30px;
        color: #000;
    }
    .list-filter select, .list-filter .input-group  {
        display: none !important;
    }
    .modal {
        margin: 0;
    }
    .sorting-desc::after, .sorting-asc::after, .sorting::after {
        content: '';
        display: none;
    }
}

