/* main Layout */

.layout{
    min-height: calc(100vh - 277px);
    padding-bottom: var(--krds-pc-gap-layout-contents-footer);
}
.in-between{
    display: flex;
    align-items: normal;
    justify-content: flex-start;
    flex-direction: row;
    gap: var(--krds-gap-12);
}
.contents{
    width:100%;
}

/* lnb(sideMenu) */
.krds-side-navigation{
    flex-shrink: 0;
    width: 24.8rem;
    padding: var(--krds-padding-8) 0 0;
    border: none;
}

/* Headeer */
#krds-header{
    border-bottom: 0.1rem solid var(--krds-color-light-gray-20);
}
#krds-header .left{
    margin-left:20px;
}
.header-actions button a{
    font-weight: 700;
}
.header-actions button a.active{
    color: #246BEB;
    font-weight: 700;
}

.conts-area{
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    gap: var(--krds-gap-9);
    position: relative;
    width: 100%;
    height: 100%;
}
.conts-wrap{
    margin-bottom:var(--krds-number-9);
}

.krds-side-navigation .lnb-list .lnb-item.active .lnb-btn:not(.lnb-toggle-popup)::after{
    transform: rotate(180deg);
}

.krds-side-navigation .lnb-list .lnb-item .lnb-submenu .lnb-subitem.active .lnb-btn,
.krds-side-navigation .lnb-list .lnb-item .lnb-submenu .lnb-subitem.active .lnb-submenu-lv2 ul li.active .lnb-btn{
    color: var(--krds-side-navigation--color-text-selected);
    font-weight: var(--krds-font-weight-bold);
    background-color: var(--krds-side-navigation--color-action-selected);
}

.krds-side-navigation .lnb-list .lnb-item .lnb-submenu .lnb-subitem.active .lnb-submenu-lv2 .lnb-btn{
    color:black;
    font-weight: var( --krds-typo-font-weight-regular);
    background-color:transparent;
}

.krds-main-menu .gnb-menu .gnb-main-trigger.active::before{
    bottom: -1.6rem;
}

.krds-breadcrumb-wrap .breadcrumb {
    flex-wrap:wrap;
}

/* Pagination */
.krds-pagination .page-navi.disabled {
	color: #8a949e
}

/* Search Wrap */
.search-wrap{
    display: flex;
    gap: 1rem;
    margin-bottom: var(--krds-number-9);
}
.search-body{
    display:flex;
    align-items: center;
    gap: 1rem;
    width: 100%;
}
.search-wrap .searchOption{
    width: auto;
    flex-grow: 1;
}
.search-wrap  .searchKeyword{
    width: auto;
    flex-grow: 3;
}
.search-wrap .search-tit{
    align-self: center;
    text-wrap: nowrap;
}

/* btn wrap*/
.page-btn-wrap{
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    /*margin-top: var(--krds-number-7);*/
}
.page-btn-wrap .btn-wrap{
    display: flex;
    gap: 1rem;
    width:auto;
}

/* input-form */
.input-form{
    border: 1px solid;
    border-radius: var(--krds-number-6);
    padding: var(--krds-number-9);
    margin: var(--krds-number-9) 0;
}

/* dd */
.def-list-wrap .def-list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--krds-gap-5) 0;
    border-top: var(--krds-light-border-width-variable-regular) solid var(--krds-light-color-divider-gray);
    border-bottom: var(--krds-light-border-width-variable-regular) solid var(--krds-light-color-divider-gray);
    padding: var(--krds-padding-8) 0;
}

.def-list-wrap .def-list > dt {
    width: 18rem;
    margin-right: var(--krds-gap-7);
    font-weight: var(--krds-font-weight-bold);
}

.def-list-wrap .def-list > dd {
    width: calc(100% - (18rem + var(--krds-gap-7)));
}

/* table */
.krds-table-wrap .tbl.data tbody td {
    word-break: break-word;
}
.krds-table-wrap .tbl.data .text-center, .krds-table-wrap .tbl.data .text-center a{
    text-align: center;
}

/* title*/
.heading-large{
    margin-bottom: 1.5rem;
}

/* =========================================
   SIMS 공통 레이아웃
   ========================================= */

/* SIMS 로고 */
.sims-logo-text {
    font-size: 1.75rem;
    font-weight: 800;
    color: var(--krds-color-primary, #246BEB);
    letter-spacing: -0.04em;
    line-height: 1;
}

/* 로그인 페이지 */
.login-wrap {
    display: flex;
    justify-content: center;
    padding: var(--krds-number-10) 0 var(--krds-number-13);
}
.login-box {
    width: 100%;
    max-width: 48rem;
}
.login-box .login-title {
    text-align: center;
    margin-bottom: var(--krds-number-9);
}
.login-box .login-title .login-logo {
    font-size: 2rem;
    font-weight: 800;
    color: var(--krds-color-primary, #246BEB);
    letter-spacing: -0.04em;
    display: block;
    margin-bottom: var(--krds-gap-4);
}
.login-box .btn-login-submit {
    width: 100%;
    justify-content: center;
    margin-top: var(--krds-gap-6);
}
.login-box .login-util {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: var(--krds-gap-6);
}
.login-box .login-links {
    display: flex;
    gap: var(--krds-gap-6);
}
.login-box .login-links a {
    font-size: var(--krds-font-size-body-s, 1.4rem);
    color: var(--krds-color-gray-70, #555);
    text-decoration: none;
}
.login-box .login-links a:hover {
    text-decoration: underline;
}
.login-hint {
    text-align: center;
    margin-top: var(--krds-gap-6);
    font-size: var(--krds-font-size-body-s, 1.4rem);
    color: var(--krds-color-gray-60, #777);
}

/* 메인 대시보드 */
.main-section-title {
    font-size: var(--krds-font-size-heading-s, 1.8rem);
    font-weight: var(--krds-font-weight-bold, 700);
    margin-bottom: var(--krds-number-7);
    color: var(--krds-color-gray-90, #1A1A1A);
}
.quick-menu-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--krds-gap-7);
    margin-bottom: var(--krds-number-10);
}
.quick-menu-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--krds-gap-5);
    padding: var(--krds-padding-8);
    border: 1px solid var(--krds-color-light-gray-20, #e0e0e0);
    border-radius: var(--krds-number-6);
    text-decoration: none;
    color: var(--krds-color-gray-80, #333);
    background: #fff;
    transition: border-color 0.2s, background 0.2s;
}
.quick-menu-item:hover {
    border-color: var(--krds-color-primary, #246BEB);
    background: var(--krds-color-primary-light, #EBF2FF);
    color: var(--krds-color-primary, #246BEB);
}
.quick-menu-item .svg-icon {
    width: 3.2rem;
    height: 3.2rem;
}
.quick-menu-item .menu-label {
    font-size: var(--krds-font-size-body-m, 1.6rem);
    font-weight: var(--krds-font-weight-bold, 700);
}
.dashboard-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--krds-gap-7);
}
.dashboard-card {
    border: 1px solid var(--krds-color-light-gray-20, #e0e0e0);
    border-radius: var(--krds-number-6);
    overflow: hidden;
    background: #fff;
}
.dashboard-card .card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--krds-padding-6) var(--krds-padding-8);
    border-bottom: 1px solid var(--krds-color-light-gray-20, #e0e0e0);
    background: var(--krds-color-gray-5, #FAFAFA);
}
.dashboard-card .card-head .card-title {
    font-size: var(--krds-font-size-body-l, 1.7rem);
    font-weight: var(--krds-font-weight-bold, 700);
    margin: 0;
}
.dashboard-card .card-body {
    padding: var(--krds-padding-7) var(--krds-padding-8);
}
.notice-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--krds-gap-5);
}
.notice-item {
    display: flex;
    align-items: center;
    gap: var(--krds-gap-4);
}
.notice-link {
    flex: 1;
    font-size: var(--krds-font-size-body-s, 1.4rem);
    color: var(--krds-color-gray-80, #333);
    text-decoration: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.notice-link:hover { text-decoration: underline; color: var(--krds-color-primary, #246BEB); }
.notice-date {
    font-size: var(--krds-font-size-body-xs, 1.2rem);
    color: var(--krds-color-gray-60, #777);
    flex-shrink: 0;
}
.status-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--krds-gap-6);
}
.status-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.status-running {
    display: flex;
    align-items: center;
    gap: var(--krds-gap-3);
    color: var(--krds-color-success, #1D6A35);
    font-size: var(--krds-font-size-body-s, 1.4rem);
    font-weight: var(--krds-font-weight-bold, 700);
}
.my-info-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--krds-gap-6);
    text-align: center;
}
.my-info-box .my-avatar {
    width: 6.4rem;
    height: 6.4rem;
    border-radius: 50%;
    border: 2px solid var(--krds-color-light-gray-20, #e0e0e0);
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--krds-color-gray-5, #FAFAFA);
}
.my-info-box .my-avatar .svg-icon { width: 3.2rem; height: 3.2rem; }
.my-info-dl {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: var(--krds-gap-3) var(--krds-gap-6);
    text-align: left;
    width: 100%;
}
.my-info-dl dt {
    font-size: var(--krds-font-size-body-s, 1.4rem);
    color: var(--krds-color-gray-60, #777);
}
.my-info-dl dd {
    font-size: var(--krds-font-size-body-s, 1.4rem);
    font-weight: var(--krds-font-weight-bold, 700);
    color: var(--krds-color-gray-80, #333);
    margin: 0;
}

@media (max-width: 768px) {
    .quick-menu-grid { grid-template-columns: repeat(2, 1fr); }
    .dashboard-grid { grid-template-columns: 1fr; }
}

/* 공통 유틸 (sims.css에 없는 것만) */
.txt-left { text-align: left !important; }
.form-hint {
    margin-top: 0.4rem;
    font-size: 1.3rem;
    color: var(--krds-color-neutral-60, #666);
}
.tbl-link { color: inherit; text-decoration: none; }
.tbl-link:hover { text-decoration: underline; }