/* ==== 10-tokens/order-early.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.foundation.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.surface.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.rw-bridge.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell-compat.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.legacy.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.my-component {
border: 2px dashed red;
    padding: 1em;
    margin: 1em 0;
    background-image: url("/_content/WaveWorks.RxComponents/css/background.png");
}
.autocomplete {
position: relative;
    display: inline-block;
}
.autocomplete-items.bottom {
top: initial;
        bottom: 100%;
}
.autocomplete-container {
width: 100%;
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: stretch;
    background-color: var(--bg-white);
    border-bottom: 0px solid red; /* 포커스가 있을 때 강조 표시 */
}
.autocomplete-container.autocomplete-tagify:disabled {
background-color: rgba(0,0,0,0) !important;
        border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.autocomplete-container.autocomplete-selector {
border: 1px solid rgba(var(--bs-gray-300-rgb), 1);
        padding: 0px;
        min-height: 26px;
}
.autocomplete-container .autocomplete-input {
width: 100%;
        padding: 8px;
        border: none;
        outline: none;
        color: var(--bs-dark); /* ksh 2025-04-07 다크모드 텍스트 검색 시*/
        background-color: #f3f3f3;
        border-radius: 4px;
        height: 26px; 
        font-family: var(--ww-font-ibm-sans-kr);
        font-size: 12px;
        font-weight: 400;
}
.autocomplete-container.autocomplete-multi-selector .input-container {
background-color: transparent;
        top: 0;
        left: 0;
        border-bottom: 1px solid #efefef;
}
.autocomplete-container.autocomplete-single-selector .input-container {
background-color: transparent;
        top: 0;
        left: 0;
}
.autocomplete-list {
position: absolute;
    width: 100%;
    border: 1px solid #ccc;
    background-color: var(--cds-rw-ctrl-bg);
    max-height: 200px;
    overflow-y: auto;
    margin: 0 0 0 -3px;
    padding: 0;
    list-style-type: none;
    z-index: 1;
/*    font-family: 'Pretendard';*/
    font-size: 12px;
    /* min-width: 150px; */
}
.autocomplete-container .tag {
/*    font-family: 'Pretendard';*/
    font-size: 10px;
    display: flex;
    align-items: center;
    padding: 4px 8px;
    font-weight: 500;
    background-color: #ebecec;
    border-radius: 10px;
    text-overflow: ellipsis;
    overflow: hidden;
    height: 24px;
    color: var(--bs-text-dark);
    white-space: nowrap; /* 한 줄로 유지하고 줄 바꿈 방지 */
}
.autocomplete-container.autocomplete-selector .tag {
/*    font-family: 'Pretendard';*/
    font-size: 10px;
    display: flex;
    background: red;
    align-items: center;
    padding: 4px 8px;
    font-weight: 500;
    background-color: transparent;
    border-radius: 10px;
    text-overflow: ellipsis;
    overflow: hidden;
    height: 26px;
    white-space: nowrap; /* 한 줄로 유지하고 줄 바꿈 방지 */
}
.autocomplete-container.autocomplete-tagify {
border: 1px solid rgba(var(--bs-gray-300-rgb), 1);
    min-height: 26px;
    padding: 2px;
}
.autocomplete-container.focused {
border-bottom: 0px solid blue; /* 포커스가 있을 때 강조 표시 */
}
[data-bs-theme=dark]
.autocomplete-container .tag {
background-color: #333;
}
.rwgrid {
height: 100%;
    width: 100%;
    overflow: auto;
    /*    font-family: 'Pretendard', sans-serif;*/
    font-family: 'IBM Plex Sans KR', var(--ww-font-ibm-sans-kr), sans-serif !important;
    font-size: 12.0px;
    font-weight: 400;
    text-shadow: 0px 0px 1px rgba(0,0,0,0.1);
    border-left: solid 0px var(--border-left-color);
    border-top: solid 1px var(--border-top-color);
    border-bottom: solid 1px var(--border-bottom-color);
    border-right: solid 0px var(--border-right-color);
    border-radius: 2px; /*var(--rs-grid-style-outer-bdradius)*/

    color: var(--bs-text-dark);
    background-color: var(--bs-white);
    border-radius: 0;
    /* 스크롤바 클릭/드래그는 허용하되 키보드 동작은 막기 */
    /* scrollbar-width: thin; ksh 2025-04-07 thin > 스크롤바 색상 지정 되지 않음. */
    scroll-behavior: auto;
    -webkit-overflow-scrolling: touch;
    /* 필요한 경우 */
    scroll-snap-type: none;
}
.rwgrid .header {
background-color: var(--header-bg-color);
        display: block; /*inline-table;*/
        /* display: contents; */
        width: 100%;
        font-weight: 700;
        font-size: 11.5px;
        letter-spacing: -0.4px;
        padding: 0;
        margin: 0;
        height: auto;
        min-height: 30px;
        /*        border-bottom: solid 1px var(--cds-border-subtle-01, #e0e0e0);*/
        border-bottom: solid 0px #d9d9d9;
        position: sticky;
        /*        will-change: transform; 그리드 선택 시 틀어짐 */
        /* Keep sticky headers above fixed body cells, which use z-index:2 inline. */
        z-index: 3;
        top: 0;
        /*transform: translateZ(0);*/
}
.rwgrid .header .group-header {
height: 30px;
}
.rwgrid .header .group-column {
background-color: #e8e8e8;
    font-weight: bold;
    display: flex;
    align-items: center;
        justify-content: center;
        border-right: solid 1px transparent;
        border-bottom: 0;
        background-color: var(--header-bg-color); /* 틀고정되는 경우가 있어 배경색을 지정합니다. */
}
.rwgrid .header-container {
display: inline-flex !important;
    /*        border-bottom: solid 1px var(--header-border-color);*/
    border-bottom: 0;
    /*        will-change: transform; 그리드 선택 시 틀어짐 */
}
.rwgrid .header-container.group-header {
border-bottom: 0;
    box-shadow: inset 0 -1px 0 var(--cds-grid-column-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid .rw-row-sx, .rw-column-sx {
background-color: var(--header-bg-color); /* 틀고정되는 경우가 있어 배경색을 지정합니다. */
        min-width: 30px;
}
.no-header {
height: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
        line-height: 0 !important;
        font-size: 0 !important;
}
.no-header .header-container {
height: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
}
.rw-grid-root .rw-grid-multi-banner {
margin-top: 4px;
    margin-bottom: 4px;
    padding: 8px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background-color: #edf5ff;
    border: 1px solid #b6d4fe;
    border-radius: 4px;
}
.rw-grid-root .rw-grid-multi-banner__count {
font-size: 12px;
    font-weight: 700;
    color: #0f2a5c;
}
.rwgrid .content-container {
width: 100%;
    display: inline-table;
    margin-top: 1px; /* 첫번째 컬럼 선택 시 위쪽 outline focus 짤림 방지 */
    /*background-color: bisque;*/
}
.rwgrid .content-container.mt-container {
margin-top: 1px; /* Group header height is now handled by the sticky header container itself. */
}
.rwgrid .rw-column {
height: 30px;
    color: var(--header-text-color);
    /*    background-color: var(--cds-field-01, #f4f4f4); 틀고정되는 경우가 있어 배경색을 지정합니다. */
    border-right: solid 1px transparent;
    background-color: var(--cds-grid-header, #e7e7e7);
    /*overflow: hidden;*/
}
.rwgrid.cds-rwgrid .rw-column {
color: var(--header-text-color);
    height: 32px;
    background-color: var(--bs-gray-300); /* 틀고정되는 경우가 있어 배경색을 지정합니다. */
}
.rwgrid .rw-column:last-child {
/*        border-right: solid 1px var(--column-border-right-color);*/
        border-right: solid 1px transparent;
}
.rwgrid .rw-column.rw-fixed-column-edge {
border-right-color: var(--cds-grid-column-border, var(--cds-grid-border, #d9d9d9));
    box-shadow: none;
}
.rwgrid .rw-column .resizer {
width: 5px;
        height: 100%;
        margin-right: 0px;
        z-index: 2;
        cursor: col-resize;
}
.rwgrid .rw-data-row {
height: 30px;
    /*    border-top: solid 1px transparent;*/
    /*    will-change: transform;*/
/*    border-bottom: solid 1px var(--cds-layer-hover, #e8e8e8);*/
    border-bottom: solid 1px var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid:not(.rw-lines-horizontal) .rw-data-row {
border-bottom: 0 !important;
}
.rwgrid:not(:where(.cds-rwgrid)) .rw-data-row.rw-row-selected {
background-color: var(--cds-grid-select, #e0e0e0) !important;
        outline-offset: -2px; /* 위 보더 위치랑 겹치도록 */
}
.cds-grid-container .rwgrid .header {
background-color: var(--cds-table-header, #e0e0e0);
}
:where(.rwgrid.cds-rwgrid) .rw-data-row.rw-row-selected {
/*    border-top: 1px solid var(--selected-cell-top-color);
    border-bottom: 1px solid var(--selected-cell-bottom-color);*/
    /*    border-block-end: 1px solid #c6c6c6;
    border-block-start: 1px solid #e0e0e0;*/
    background-color: var(--cds-grid-select, #e5e5e5);
    outline-offset: -2px; /* 위 보더 위치랑 겹치도록 */
}
.rwgrid.cds-rwgrid .rw-grid-row-selector-check {
appearance: none;
    border: 1px solid var(--cds-text-primary, #161616) !important;
    border-radius: 2px;
    width: 16px !important;
    height: 16px !important;
    position: relative !important;
    cursor: pointer;
    transition: all 0.1s ease-in-out;
    background-color: transparent;
}
.rwgrid.cds-rwgrid .rw-grid-row-selector-check:checked {
background-color: var(--cds-dark-color, #161616) !important;
        position: relative !important;
}
.rw-cell-warning {
position: fixed;
        z-index: 10000;
        max-width: 260px;
        padding: 4px 10px;
        font-size: 12px;
        line-height: 1.4;
        color: #161616;
        background: var(--cds-support-warning, #f1c21b);
        border: 1px solid rgba(0, 0, 0, .25);
        box-shadow: 0 2px 6px rgba(0, 0, 0, .25);
        pointer-events: none;
        white-space: nowrap;
}
.cds-rw-grid-toolbar-container .rw-grid-multi-banner__count {
color: var(--cds-text-on-color, #ffffff);
    font-weight: 400;
    font-size: 14px;
}
.rwgrid .rw-cell {
display: flex;
    color: var(--cell-text-color);
    /*    border-top: solid var(--cell-border-top-width) var(--border-top-color);
    border-bottom: solid var(--cell-border-bottom-width) var(--border-bottom-color);
    border-left: solid var(--cell-border-left-width) var(--border-left-color);
    border-right: solid var(--cell-border-right-width) var(--border-right-color);*/
    border-top: 0px solid var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9));
    border-bottom: 0px solid var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9));
    border-left: 0px solid var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9));
    /*    border-right: 1px solid var(--cds-layer-hover, #e8e8e8);*/
    border-right: 1px solid transparent;
    /*border: solid 1px var(--border-right-color);*/
    /*overflow: hidden; 셀 편집기 때문에 제거 */

    word-wrap: break-word;
    text-overflow: ellipsis;
    /* 셀편집기때문에 제거
            padding-left: 5px;
            padding-right: 5px;*/
}
.rwgrid .rw-fixed-cell.rw-fixed-cell-edge {
border-right-color: transparent !important;
    box-shadow: inset -1px 0 0 var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid .rw-cell.rw-cell-range-selected {
background-color: var(--cds-highlight, rgba(15, 98, 254, 0.10)) !important;
}
.rwgrid .rw-cell.rw-cell-invalid {
background-color: var(--cds-support-error-light, rgba(218, 30, 40, 0.08)) !important;
    box-shadow: inset 0 -2px 0 var(--cds-support-error, #da1e28);
}
.rwgrid .rw-sum-cell {
padding-left: 5px;
/*    padding-right: 5px;*/
    padding-right:19px;
    font-weight: 800;
}
.rwgrid .rw-fixed-column {
position: sticky;
    left: 0;
    z-index: 4;
    will-change: transform;
}
.rwgrid .rw-data-row:hover .rw-fixed-cell {
/* 고정 셀은 스크롤 내용을 가려야 하므로 반투명 호버의 불투명 등가색(흰 바탕 합성) */
    background-color: var(--rw-grid-hover-bg-opaque, #f4f4f4);
}
.rwgrid .rw-data-row.rw-row-selected .rw-fixed-cell {
background-color: var(--cds-grid-select);
}
.rwgrid .rw-data-row .rw-fixed-cell {
background-color: var(--cds-rw-ctrl-bg);
    position: sticky !important;
    left: 0;
    /*transform: translateZ(0); rwcombo 사용시 ItemContainer의 위치가 제대로 출력되지 않는다. */
    /*will-change: transform;*/ /* GPU 강제 적용 (랜더링 문제 수정) */
}
.rw-grid-root .cds-grid-container {
background-color: var(--bs-white) !important;
}
.rwgrid .rw-group-header {
height: 30px;
    font-size: 10px;
    font-weight: 700;
    color: var(--bs-text-gray-800); /*#333;*/
    padding-left: 1px;
    display: flex;
    justify-content: left;
    align-items: center;
    background-color: var(--group-header-bg-color); /*var(--bs-gray-200);*/

    border-bottom: solid 1px var(--group-header-bottom-color);
}
.rwgrid .rw-group-header.rw-group-header-sub {
background-color: var(--bs-gray-100);
}
.rwgrid .rw-group-header .rw-group-header-content {
position: sticky !important;
        left: 20px;
        will-change: transform;
}
.rwgrid .rw-column-sx {
width: 22px;
}
.rwgrid .rw-column-selector {
width: 30px;
    min-width: 30px;
    border-right: solid 1px rgba(0,0,0,0.04);
    background-color: var(--cds-table-header, #e0e0e0); /* 다른 헤더 색상과 동일한 배경색상 추가 - 26.06.04 이지혜 */
}
.rwgrid .rw-column-drag {
border-right: solid 0px rgba(0,0,0,0.04);
    width: 30px;
}
.rwgrid .over {
border-left: 1px dotted #333;
}
.rwgrid .rw-row-sx {
width: 22px;
}
.rwgrid .rw-row-selector-cell {
width: 30px;
    min-width: 30px;
    border-right: solid 1px rgba(0,0,0,0.04);
}
.rwgrid .rw-grid-row-selector-check {
width: 14px;
    height: 14px;
    cursor: pointer;
}
.rwgrid .rw-row-sx,
.rwgrid .rw-row-selector-cell,
.rwgrid .row-drag-handler {
border-right: solid 1px transparent;
}
.rwgrid .rw-row-detail-toggle,
.rwgrid .rw-row-detail-toggle i {
color: var(--cds-icon-secondary, #6f6f6f);
}
.rwgrid .row-group-button-rotate-90 {
transform: rotate(90deg);
}
.rw-grid-loading-overlay {
position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.7);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}
.rw-grid-loading-spinner {
border: 4px solid #f3f3f3;
    border-top: 4px solid #3498db;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: rw-grid-spin 1s linear infinite;
}
.popover {
position: absolute;
    background-color: #f9f9f9;
    border: 1px solid #ccc;
    padding: 10px;
    z-index: 1000;
}
.popover-header {
padding: 0;
    margin: 0;
    font-size: 16px;
    font-weight: bold;
}
.btn-min {
padding: 8px 14px 8px 14px !important;
    font-size: 12px !important; /* 폰트 사이즈 감소 */
    line-height: 12px !important; /* 라인 높이 조정 */
    border-radius: 2px; /* 둥근 모서리를 조금 더 세밀하게 조정 */
    height: 30px;
}
.rw-modal-header {
display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem;
    border-bottom: 1px solid #dee2e6;
}
.rw-modal-body {
position: relative;
    flex: 1 1 auto;
    padding: 1rem;
}
.btn-close {
padding: 0.5rem 1rem;
    margin: -0.5rem -1rem -0.5rem auto;
    background-color: transparent;
    border: none;
    cursor: pointer;
}
.rw-window {
position: fixed;
    background-color: white;
    border: 0px solid #384470;
    box-shadow: 0 1px 3px rgba(0,0,0,0.7);
    border-radius: 1px !important;
    /*z-index: 1000; 동적으로 지정됨 */
    resize: both;
    overflow: hidden;
    left: -50%;
    top: -50%;
}
.rw-window-header {
cursor: move;
    background-color: #384470;
    color: #fff;
    padding: 8px 10px;
    border-bottom: 0px solid #ddd;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.rw-window-header button {
border: none;
        background-color: transparent;
        cursor: pointer;
        font-size: 16px;
}
.rw-window-content {
padding: 0px;
}
.rw-window-overlay {
position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
}
.rw-textbox-markdown-editor {
min-height: 140px;
    resize: vertical;
    line-height: 1.5;
    font-family: Consolas, "Courier New", monospace;
}
.rw-textbox-markdown-output {
width: 100%;
    min-height: 36px;
    padding: 8px 10px;
    border: 1px solid rgba(var(--bs-gray-400-rgb), 0.6);
    border-radius: 2px;
    background-color: var(--bs-white);
    overflow-wrap: anywhere;
}
.rw-textbox-markdown-output > :last-child {
margin-bottom: 0;
}
.rw-textbox-inline-editor-readonly {
cursor: default;
}
.rw-textbox {
padding: 3px 10px;
    height: 26px;
    min-height: 26px;
    font-size: 12px;
    font-weight: 400;
    border-radius: 0;
    border: 1px solid rgba(var(--bs-gray-300-rgb), 1);
    width: 100%;
}
.rw-textbox:focus {
outline: none;
}
.rw-item-container .rx-popover-content {
background-color: rgba(var(--bs-gray-200-rgb), 1) !important;
        border: 1px solid rgba(var(--bs-gray-300-rgb), 1) !important;
        font-family: var(--ww-font-ibm-sans-kr);
        font-size: 12px !important;
        font-weight: 400 !important;
}
.rw-textbox-switch .form-check-input:checked {
background-color: #ff0000; /* 빨간색으로 변경 */
        border-color: #ff0000; /* 빨간색으로 변경 */
}
.rw-textbox-radio {
appearance: none;
    /* border: max(2px, 0.0em) solid #ccc; */
    border: 1px solid var(--bs-text-gray-600);
    border-radius: 100%;
    width: 15px;
    height: 15px;
    transition: border 0.1s ease-in-out;
}
.rw-textbox-radio:checked {
/* border: 8px solid tomato; */
        background-color: tomato;
        border-color: tomato;
}
.rw-textbox-checkbox {
appearance: none;
    border: 1px solid var(--bs-text-gray-600);
    border-radius: 1px; /* 체크박스는 보통 둥근 모서리를 가집니다 */
    width: 14px !important;
    height: 14px !important;
    transition: all 0.1s ease-in-out;
}
.rw-textbox-checkbox:checked {
background-color: tomato !important;
        border-color: tomato;
        position: relative;
}
.rw-textbox-input {
background-color: var(--bs-white);
    color: var(--bs-text-dark);
}
.rw-combobox-container {
position: relative;
    width: 100%;
}
.rw-combobox-container .options-container {
position: fixed;
        width: 100%;
        max-height: 200px;
        overflow-y: auto;
        border: 1px solid #ccc;
        background-color: var(--bs-light);
        z-index: 2000 !important;
        opacity: 0;
        transition: opacity 0.2s ease-in-out;
        clip-path: none; /* 클리핑 방지 */
}
.rw-combobox-container .option-item:hover, .option-item.selected {
background-color: #f0f0f0;
}
.rw-combobox-container .option-item.highlighted {
background-color: #e6f7ff
}
.rw-combobox-container .rw-textbox {
padding: 3px 10px;
        height: 26px;
        min-height: 26px;
        font-size: 12px;
        font-weight: 400;
        border-radius: 0;
        border: 1px solid rgba(var(--bs-gray-300-rgb), 1);
        border-right: none !important;
        width: 100%;
}
.rw-combobox-container .rx-combo-toggle {
border: 1px solid rgba(var(--bs-gray-300-rgb), 1);
        border-left: none;
}
.rw-combobox-container .template-cotainer {
padding: 0 0;
        background-color: var(--bs-white);
        height: 26px;
        min-height: 26px;
        font-size: 12px;
        font-weight: 400;
        border-radius: 0;
        border: 1px solid rgba(var(--bs-gray-300-rgb), 1);
        border-right: none !important;
        width: 100%;
        overflow:hidden;
}
.rw-combobox-container .template-item-container {
padding: 3px 10px;
            height: 100% !important;
            display: flex;
            align-items: center;
}
.rx-scroll-y {
overflow-y: auto;
   /* overflow-x: hidden;*/
}
.rx-scroll-hover-y, .rx-scroll-hover-x {
transition: all 0.5s;
}
.rx-scroll-hover-y {
overflow-y: auto;
    overflow-x: hidden;
    /* 핵심 */
    /*scrollbar-gutter: stable;*/
}
.rx-scroll-hover-x {
overflow-x: auto;
    overflow-y: hidden;
}
.rx-tree-view {
font-family: var(--ww-font-ibm-sans-kr);
    padding: 0px;
    font-size: 12px;
}
.rx-tree-view-item .toggle {
width: 10px;
        margin-right: 10px;
        cursor: pointer;
}
.rx-tree-view-item .item-name {
flex-grow: 1;
}
.rx-tree-view .children {
margin-left: 10px;
}
.rx-drawer.right {
right: 0;
        transform: translateX(100%);
}
.rx-drawer.left {
left: 0;
        transform: translateX(-100%);
}
.rx-drawer-content {
padding: 20px;
    height: 100%;
    overflow-y: auto;
}
.rx-popover-root {
display: inline-block;
}
.rx-popover-container {
position: static;
}
.rx-popover-container .rx-popover-content {
position: fixed;
    top: 0;
    left: 0;
    min-width: 100px;
    z-index: 10;
}
.carbon-btn-primary {
border-width: 1px;
    border-style: solid;
    border-color: rgba(0, 0, 0, 0);
    background-color: var(--primary-bg-color);
    color: var(--primary-bs-txt-color);
    padding: 15px;
}
.cds-ellipsis {
text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
.cds-border-top-gray-100 {
border-top: 1px solid var(--cds-gray-100) !important;
}
.cds-border-top-gray-200 {
border-top: 1px solid var(--cds-gray-200) !important;
}
.cds-border-top-gray-300 {
border-top: 1px solid var(--cds-gray-300) !important;
}
.cds-border-x-gray-300 {
border-left: 1px solid var(--cds-gray-300) !important;
    border-right: 1px solid var(--cds-gray-300) !important;
}
.cds-border-y-gray-300 {
border-top: 1px solid var(--cds-gray-300) !important;
    border-bottom: 1px solid var(--cds-gray-300) !important;
}
.wvs-container {
width: 100%;
    max-width: var(--wvs-max-width);
    margin: 0 auto;
    padding-left: 16px;
    padding-right: 16px;
}
.wvs-container-px-0 {
width: 100%;
    max-width: var(--wvs-max-width);
    margin: 0 auto;
    padding-left: 0;
    padding-right: 0;
}
@media (min-width: 1024px) {
.wvs-container {
padding-left: 24px;
        padding-right: 24px;
}
}
.wvs-row > * {
padding-left: calc(var(--wvs-gutter) / 2);
        padding-right: calc(var(--wvs-gutter) / 2);
}
.wvs-row-no-gutter > * {
padding-left: 0;
        padding-right: 0;
}
@media (max-width: 1023.98px) {
.dock-mm-vpanel-scroll-content > .dock-content {
flex: none;
            overflow: visible;
}
}
@media (max-width: 1023px) {
.wvs-sidebar-overlay.active {
display: block;
}
}
.wvs-sidebar-nav-item:hover {
background: var(--cds-layer-hover, #e8e8e8);
}
.wvs-sidebar-nav-item.selected, .wvs-sidebar-nav-item.active {
background: var(--cds-layer-selected, #e0e0e0) !important;
        border-left-color: var(--cds-focus, #0f62fe) !important;
        position: relative !important;
        margin-right: 0 !important;
}
.wvs-header-popover .cds-icon-only-btn {
padding: 12px;
    color: #f4f4f4;
}
.wvs-header-notification .rx-popover-container .rx-popover-content {
width: 320px !important;
    left: -224px !important;
}
.wvs-popover-accordion .accordion-menu {
padding: 10px 16px;
    color: #ffffff;
    cursor: pointer;
    display: flex;
    gap: 8px;
}
.wvs-list-viewer {
display: flex;
    height: calc(100vh - 48px);
    gap: 1px;
    background: #e0e0e0;
    position: relative;
}
@media (max-width: 1023px) {
.wvs-viewer-overlay.active {
display: block;
}
}
.rw-slide-viewer {
width: 100%;
    height: 100%;
    background: var(--cds-bg-light);
    display: flex;
    flex-direction: column;
}
.rw-slide-viewer-header {
display: flex;
    align-items: center;
    height: 50px;
    min-height: 50px;
    flex-shrink: 0;
}
.rw-slide-viewer-back {
/*    width: 32px;
    height: 32px;*/
    width: 48px;
    height: 48px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center !important;
    /*    border-radius: 4px;*/
    font-size: 1.5rem;
    /*margin-right: 12px;*/
    color: #161616;
}
.rw-slide-viewer-close:hover {
/*        background: #f4f4f4;*/
        background-color: var(--cds-rw-ctrl-bg);
}
.rw-slide-viewer-overlay {
display: none;
    position: fixed;
    top: var(--rw-viewer-top-offset, 48px);
    left: 0;
    right: 0;
    height: calc(100dvh - var(--rw-viewer-top-offset, 48px));
    background: rgba(0, 0, 0, 0.5);
    z-index: 499;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}
@media (max-width: 1023px) {
.rw-slide-viewer-header {
padding-left: 0 !important;
}
}
@media (max-width: 1023px) {

}
@media (max-width: 1023px) {

}
@media (min-width: 768px) and (max-width: 1023px) {
.rw-slide-viewer {
width: var(--rw-viewer-width, 80%);
        max-width: var(--rw-viewer-max-width, 600px);
}
}
.cds-list {
width: 256px;
    border-right: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-list-content a {
font-size: 12px;
        overflow-y: auto;
        height: 100%;
        color: var(--cds-text-primary, #161616);
}
.cds-border {
border: 1px solid !important;
}
.cds-border-top {
border-top: 1px solid !important;
}
.cds-border-bottom {
border-bottom: 1px solid !important;
}
.cds-border-left {
border-left: 1px solid !important;
}
.cds-border-right {
border-right: 1px solid !important;
}
.cds-border-none {
border: none !important;
}
.cds-border-gray {
border-color: var(--cds-border-subtle-01, #e0e0e0) !important;
}
.bg-hover-gray-100:hover,
.bg-hover-gray-100.hover {
background-color: var(--cds-gray-100, #fafafa) !important;
}
.bg-hover-gray-200:hover,
.bg-hover-gray-200.hover {
background-color: var(--cds-gray-200, #ececec) !important;
}
.bg-hover-gray-300:hover,
.bg-hover-gray-300.hover {
background-color: var(--cds-gray-300, #e0e0e0) !important;
}
.cds-fs-10px {
font-size: 10px;
}
.cds-fs-11px {
font-size: 11px;
}
.cds-fw-400 {
font-weight: 400;
}
.cds-fw-500 {
font-weight: 500;
}
.cds-fw-600 {
font-weight: 600;
}
.page {
height: 100%;
}
.nav-item .nav-link {
color: var(--cds-text-secondary, #525252) !important;
    background: none;
    border: none;
    height: 40px;
    display: flex;
    align-items: center;
    line-height: 40px;
    width: 100%;
}
.nav-item .carbon-icon {
margin-right: 8px;
    background-color: var(--cds-icon-secondary, #525252) !important;
}
.background {
font-size: 13px;
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-important {
color: var(--cds-text-error, #da1e28);
    vertical-align: middle;
}
.cds-label {
/*display: inline-block;*/
    font-size: 12px;
    font-weight: 400;
    /*    color: var(--cds-text-secondary, #525252);*/
    color: var(--cds-gray-500, #8d8d8d);
    cursor: default;
    margin-bottom: 8px;
}
@media (max-width: 1023px) {
.cds-mm-next-row > .cds-control-wrap {
flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
        min-width: 0 !important;
}
}
@media (max-width: 1023px) {
.dock-wpanel.cds-mm-side-to-updown > .dock-left,
        .dock-wpanel.cds-mm-side-to-updown > .dock-content,
        .dock-wpanel.cds-mm-side-to-updown > .dock-right {
width: 100% !important;
            max-width: 100% !important;
            min-width: 0 !important;
            flex: none !important;
}
}
.cds-control-wrap {
margin-bottom: 16px;
}
.cds-control-wrap.cds-control-fluid {
background-color: var(--cds-field-03, #f4f4f4) !important;
        position: relative;
}
.cds-control-wrap.cds-control-fluid:has(.carbon-textbox[disabled]) {
background-color: rgba(0,0,0,0) !important;
            position: relative;
}
.cds-control-wrap.cds-control-fluid .cds-label {
height: auto;
            padding: 10px 0 0 10px;
            margin: 0 0;
}
.cds-control-wrap.cds-control-fluid::before {
content: "";
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0; /* inset: 0; 과 같음 → 바깥으로 안 나감 */
            border: 2px solid var(--cds-focus, #0f62fe) !important;
            pointer-events: none;
            z-index: 10; /* 안쪽 input 보다 위로 */
            opacity: 0; /* 기본은 숨김 */
}
.cds-control-wrap.cds-control-fluid:has(.carbon-textarea) {
border-bottom: 1px solid var(--cds-border-strong-01, #8d8d8d) !important;
}
.cds-input-horizon .cds-label {
flex: 1 0 auto;
        margin-bottom: 0 !important;
}
input.carbon-textbox.noborder {
border-bottom: 1px solid transparent !important;
}
.carbon-textbox:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px;
}
.carbon-textbox.invalid {
outline: 2px solid red !important;
}
.carbon-textbox:disabled {
background-color: rgba(0,0,0,0) !important;
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.carbon-textbox.cds-disabled-bg:disabled, .cds-combobox.cds-disabled-bg.disabled {
background-color: #f4f4f4 !important;
}
.carbon-textarea {
background-color: var(--cds-rw-ctrl-bg) !important; /* 해당 소스 주석 시 초기 랜더링 됨.*/
    border: none !important;
    border-bottom: 1px solid var(--cds-border-strong-01, #8d8d8d) !important;
    padding: 7px 10px;
}
.carbon-textarea:disabled {
/*        background-color: var(--cds-white-color, #FFFFFF) !important;*/
    background-color: rgba(0,0,0,0) !important;
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-textql.ql-disabled {
background-color: rgba(0,0,0,0) !important;
        border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-filter-container .cds-toolbar-btn.cds-toolbar-btn-box.cds-btn-primary {
background: var(--cds-primary);
}
.cds-filter-container .cds-search-icon {
border-bottom: 0 !important;
}
@media (max-width: 1023px) {
.cds-filter-container > .dock-content {
flex: 1 1 100% !important; /* 너비 100% 차지 */
        height: 40px;
        border-bottom: 1px solid var(--cds-gray-300) !important;
}
}
@media (max-width: 1023px) {
.cds-filter-container > .dock-right.cds-filter-wrap > .cds-combobox:nth-of-type(4) {
border-bottom: 1px solid var(--cds-gray-300) !important;
}
}
.cds-rw-grid-toolbar-container .cds-autocompleted .autocomplete-list.below {
background-color: var(--cds-field, #ffffff);
    color: var(--cds-text-primary, #161616);
}
.cds-grid-toolbar-wrap input.carbon-textbox {
background-color: var(--cds-rw-ctrl-bg) !important;
}
.cds-toolbar-search .cds-search-icon {
border: none !important;
}
.cds-toolbar-search input.carbon-textbox {
border-bottom: 0 !important;
        background-color: var(--cds-rw-ctrl-bg) !important;
}
.cds-toolbar-btn {
width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--cds-rw-ctrl-bg);
    border: none;
    cursor: pointer;
    transition: background-color 110ms;
    border-radius: 0;
    flex-shrink: 0;
    padding: 0;
    line-height: 0;
    color: currentColor;
    -webkit-text-fill-color: currentColor;
}
.cds-toolbar-btn:hover {
background-color: var(--cds-background-hover, #8d8d8d12) !important;
}
.cds-tabs-link.active {
margin-bottom: 0px;
    box-shadow: inset 0 -2px 0 0 var(--cds-primary, #0f62fe) !important;
    color: var(--cds-text-primary, #161616) !important;
    font-weight: 500 !important;
}
.cds-tabs-link.active:hover {
box-shadow: inset 0 -2px 0 0 var(--cds-primary, #0f62fe) !important;
}
.cds-tabs-link:disabled {
background-color: transparent;
        color: var(--cds-text-disabled, #16161625);
        box-shadow: none;
        cursor: not-allowed;
        outline: none;
}
.cds-tab-list.cds-contained-tab .cds-tabs-link.active {
background: var(--cds-rw-ctrl-bg);
            color: var(--cds-text-primary, #161616) !important;
            box-shadow: inset 0 2px 0 0 var(--cds-primary, #0f62fe) !important;
            font-weight: 500;
}
.cds-tabs-overflow-nav-button:hover {
background: var(--cds-layer-hover, #e8e8e8);
}
.cds-tree-node-children .cds-tree-node-label-text {
padding-left: 16px;
}
.cds-tree-line .cds-tree-node-toggle {
align-items: center;
    background-color: transparent;
    border: 0;
    cursor: pointer;
    display: inline-flex;
    flex: 0 0 auto;
    height: var(--cds-tree-line-row-height);
    justify-content: center;
    padding: 0;
    width: 18px;
}
.cds-tree-line .cds-tree-node-toggle-spacer {
display: inline-flex;
    flex: 0 0 auto;
    height: var(--cds-tree-line-row-height);
    width: 18px;
}
.cds-tree-line .cds-tree-node-label-text {
align-items: center;
    display: inline-flex;
    flex: 0 1 auto;
    min-height: var(--cds-tree-line-row-height);
    padding-left: 2px;
    padding-right: 4px;
}
.cds-accordion-item-content-inner p {
margin: 0 0 16px 0;
}
.cds-accordion-item-content-inner p:last-child {
margin-bottom: 0;
}
.cds-combobox {
background-color: var(--cds-rw-ctrl-bg) !important;
    border: none !important;
    border-bottom: 1px solid var(--cds-border-strong-01, #8d8d8d) !important;
    height: 32px;
    font-size: 12px;
    color: var(--cds-text-primary, #161616) !important;
}
.cds-combobox.noborder, .carbon-textbox.noborder, .carbon-textarea.noborder {
border-bottom: none !important;
}
.cds-combobox .rw-textbox-input {
height: 31px;
    padding: 0 10px;
}
.cds-combobox .options-container {
color: var(--cds-text-secondary, #525252) !important;
    border: none !important;
    box-shadow: 0 2px 6px var(--cds-shadow, rgba(0, 0, 0, 0.3));
    /* 폴백 최대 높이 — 평시에는 RwComboBox가 인라인 max-height로 덮는다.
       (기존 20px는 오타로 추정: 위치 계산 실패 시 목록이 20px로 잘리는 함정) */
    max-height: 350px;
    overflow-y: auto;
}
.cds-combobox:focus, .cds-combobox:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px;
}
.cds-combobox.disabled {
/*    background-color: var(--cds-field, #FFFFFF) !important;*/
    background-color: transparent !important;
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-combobox.viewer.disabled .rw-textbox-input {
padding: 0 !important;
    background-color: var(--cds-bg-light) !important;
}
.cds-combobox .carbon-icon {
background-color: var(--cds-icon-primary, #161616);
}
.cds-combobox .rw-textbox {
background-color: transparent !important;
    border: none !important;
    min-height: 32px !important;
}
input.cds-combobox-input:disabled, input.cds-combobox-input.disabled {
background-color: var(--cds-white-color, #FFFFFF) !important;
}
.carbon-dropdown-button.disabled, .carbon-dropdown-button.disabled {
background-color: var(--cds-white-color, #FFFFFF) !important;
        border: none !important;
}
.cds-autocompleted .input-container {
height: 100%; /* 기본 높이 32px은 클래스 h-32px로 입력 */
        border-bottom: 1px solid var(--cds-border-strong-01, #8d8d8d) !important;
}
.cds-autocompleted.noborder .input-container {
border-bottom: 0 !important;
}
.cds-autocompleted.disabled .input-container {
border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-autocompleted .autocomplete-list {
/* margin-top: 2px;*/
        font-size: 12px;
        border: none;
        border-radius: 0;
        box-shadow: 0 2px 6px var(--cds-shadow, rgba(0, 0, 0, 0.3));
        margin-left: 0px;
        background-color: var(--cds-field-03, #f4f4f4);
        z-index: 99;
}
.cds-autocompleted.disabled {
background-color: var(--cds-field, #ffffff) !important;
        /*    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;*/
}
.cds-autocompleted li:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
        color: var(--cds-text-primary, #161616);
        font-weight: inherit !important;
}
.cds-autocompleted.viewer.disabled .rw-textbox-input {
padding: 0 !important;
}
.cds-autocompleted .tag {
background-color: #E0E0E0;
    color: var(--cds-text-primary, #161616);
    margin: 0 2px;
    border-radius: 12px !important;
}
.cds-autocomplete-wrap .autocomplete-list {
margin-left: 1px;
}
.cds-btn {
display: inline-flex;
    flex-shrink: 0;
    white-space: nowrap;
    height: 32px;
    padding: 7px 64px 7px 16px;
    font-size: 12px;
    line-height: 16px;
    border-width: 1px;
    border-radius: 0;
    border-style: solid;
    box-sizing: border-box;
    cursor: pointer;
    justify-content: space-between;
    position: relative;
    text-decoration: none;
    text-align: start;
    transition: background 70ms cubic-bezier(0,0,.38,.9),box-shadow 70ms cubic-bezier(0,0,.38,.9),border-color 70ms cubic-bezier(0,0,.38,.9),outline 70ms cubic-bezier(0,0,.38,.9);
}
.cds-btn:disabled {
background-color: var(--csd-button-disabled, #c6c6c6);
        border-color: var(--csd-button-disabled, #c6c6c6);
        color: var(--cds-text-disabled, #16161625) !important;
        cursor: not-allowed;
}
.cds-btn-primary:hover {
background-color: var(--cds-button-primary-hover, #0353e9) !important;
}
.cds-btn-primary:focus, .cds-btn-primary:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
        box-shadow: inset 0 0 0 1px var(--cds-focus, #0f62fe),inset 0 0 0 2px var(--cds-white-color, #FFFFFF);
}
.cds-btn-ghost {
position: relative;
    border-style: solid;
    border-color: transparent;
    background-color: transparent;
    color: var(--cds-button-primary, #0f62fe);
    padding: 7px 64px 7px 16px;
}
.cds-btn-ghost:hover {
background-color: var(--cds-background-hover, #8d8d8d12);
        color: var(--cds-link-primary-hover, #0043ce);
}
.cds-btn-ghost:active {
/*        background-color: var(--cds-button-primary-active, #002d9c);*/
        color: var(--cds-link-primary, #0f62fe));
        background-color: var(--cds-button-ghost-active, #8D8D8D50);
}
.cds-btn-secondary:hover {
background-color: var(--cds-button-secondary-hover, #474747);
}
.cds-btn-secondary:focus, .cds-btn-secondary:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
        box-shadow: inset 0 0 0 1px var(--cds-focus, #0f62fe),inset 0 0 0 2px var(--cds-white-color, #FFFFFF);
}
.cds-btn-ghost-secondary:hover {
background-color: var(--cds-background-hover, #8d8d8d12);
        color: var(--cds-button-secondary, #393939);
}
.cds-btn-ghost-secondary:active {
background-color: var(--cds-button-ghost-active, #8D8D8D50);
}
.cds-btn-ghost-danger:hover {
background-color: var(--cds-button-danger-hover, #b81921);
        color: var(--cds-text-on-color, #ffffff);
}
.cds-btn-ghost-danger:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
        box-shadow: inset 0 0 0 1px var(--cds-focus, #0f62fe),inset 0 0 0 2px var(--cds-white-color, #FFFFFF);
}
.cds-btn-ghost-danger:active {
background-color: var(--cds-button-danger-active, #750e13);
}
.cds-icon-btn:hover {
background-color: var(--cds-background-hover, #8d8d8d12);
        /*        color: var(--cds-button-secondary, #525252);*/
}
.cds-icon-btn:active {
background-color: var(--cds-button-ghost-active, #8D8D8D50);
}
.cds-icon-only-btn {
position: relative;
border-style: solid;
border-color: transparent;
font-size: 12px;
flex-shrink: 0;
white-space: nowrap;
}
.cds-icon-only-btn:hover {
background-color: var(--cds-background-hover, #8d8d8d12) !important;
}
.cds-icon-only-btn:active {
background-color: var(--cds-button-ghost-active, #8D8D8D50);
}
.cds-btn-set > *:first-child {
flex: 0 1 60%;
        /*        flex: 0 0 auto;
        width:50%;*/
}
.cds-btn-set > *:last-child {
flex: 0 1 40%;
}
.cds-hover-danger:active {
background-color: var(--cds-button-danger-active, #750e13);
}
.cds-modal-close:hover {
background-color: var(--cds-layer-hover, #e8e8e8);
}
.cds-modal-close:focus {
outline: 0;
        box-shadow: none !important;
        border: 2px solid var(--cds-focus, #0f62fe);
}
.cds-rw-window .rw-window-header {
display: none;
}
.cds-rw-window .rw-window-content {
background-color: var(--cds-field, #ffffff) !important;
}
.cds-notification-warning .carbon-icon {
background-color: var(--cds-support-warning, #f1c21b);
        flex-shrink: 0;
        margin-block-start: 14px;
        margin-inline-end: 16px;
}
.cds-notification-error .carbon-icon {
background-color: var(--cds-button-danger-primary, #da1e28);
        flex-shrink: 0;
        margin-block-start: 14px;
        margin-inline-end: 16px;
}
.cds-notification-fail .carbon-icon {
background-color: var(--cds-button-danger-primary, #da1e28);
        flex-shrink: 0;
        margin-block-start: 14px;
        margin-inline-end: 16px;
}
.cds-notification-success .carbon-icon {
background-color: var(--cds-support-success, #24a148);
        flex-shrink: 0;
        margin-block-start: 14px;
        margin-inline-end: 16px;
}
.cds-notification-gray .carbon-icon {
background-color: var(--bs-gray-600, #0043CE);
        flex-shrink: 0;
        margin-block-start: 14px;
        margin-inline-end: 16px;
}
.cds-notification-info .carbon-icon {
background-color: var(--cds-support-info, #0043CE);
        flex-shrink: 0;
        margin-block-start: 14px;
        margin-inline-end: 16px;
}
.cds-switcher-item .cds-icon-only-btn {
padding: 0;
}
.carbon-switch .form-check-input:checked {
background-color: var(--cds-support-success, #24a148) !important; /* 녹색 */
            border-color: #24a148;
}
.cds-switch-wrap .cds-label {
line-height: 12px;
        margin-bottom: 0;
}
.signin-create-account {
font-size: 14px;
    color: var(--cds-text-helper, #f6f6f6);
}
.signin-form .cds-label {
font-size: 14px;
}
.signin-form .rw-textbox {
font-size: 14px;
        height: 48px;
}
.signup-create-account {
font-size: 14px;
    color: var(--cds-text-helper, #f6f6f6);
}
.cds-dashboard-icon .carbon-icon {
background-color: var(--cds-icon-secondary, #525252);
}
.rw-slide-viewer-pin:hover {
background: var(--cds-layer-hover, #f4f4f4);
}
.rw-slide-viewer-pin.active {
color: var(--cds-link-primary, #0f62fe);
    background: #edf5ff;
}
.cds-title-container {
/*background-color: var(--cds-field-03, #f4f4f4) !important;*/
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    min-height: 50px;
    height: auto;
    display: flex;
    align-content: center;
}
.rw-grid-border-0.cds-rw-grid-root,
.rw-grid-border-0 .cds-rw-grid-root,
.cds-rwgrid-fluid.cds-rw-grid-root,
.cds-rwgrid-fluid .cds-rw-grid-root {
border: 0 !important;
}
.rw-grid-bottom {
height: 50px;
    border-top: 1px solid var(--cds-gray-300);
}
.cds-rw-grid-root>.rw-grid-bottom {
position: relative;
    z-index: 2;
    background: #fff;
}
.cds-rw-grid-toolbar-container .cds-autocompleted {
background: var(--cds-rw-ctrl-bg) !important;
}
.cds-rw-grid-toolbar-container .cds-toolbar-statebar .autocomplete-container.autocomplete-tagify {
height: 100% !important;
}
.cds-rw-grid-toolbar-container .autocomplete-placeholder {
padding-left: 12px;
    font-size: 12px !important;
    color: var(--bs-gray-400);
}
.cds-rw-grid-root .rw-pager {
background-color: var(--cds-rw-ctrl-bg) !important;
}
.rw-pager-content .rw-pager-btn {
width: 50px;
    height: 50px;
    background-color: var(--cds-rw-ctrl-bg) !important;
    border: 1px solid transparent;
    border-right: 1px solid var(--cds-gray-300);
}
.rw-pager-content .rw-pager-btn:hover {
background-color: var(--cds-background-hover, #8d8d8d12) !important;
}
.cds-grid-container .rwgrid {
background-color: var(--cds-field, #ffffff);
}
.cds-grid-container .rwgrid.cds-rwgrid .rw-column {
background-color: var(--cds-table-header, #e0e0e0);
}
.rw-grid-root .rw-compact-overflow {
position: relative; margin-left: auto;
}
.rw-grid-root .rw-compact-actions {
position: absolute; right: 0; z-index: 20; min-width: 176px; display: flex; flex-direction: column; background: var(--cds-layer-01); border: 1px solid var(--cds-border-subtle-01);
}
.cds-rw-grid-toolbar-container .autocomplete-container.autocomplete-tagify.cds-toolbar-statebar {
min-width: 200px;
    padding-left: 4px !important;
    padding-right: 4px !important;
}
.app-navbar-item .cds-icon-btn:focus, .app-navbar-item .cds-icon-btn:active {
outline: 2px solid #ffffff !important;
        outline-offset: -2px !important;
        background-color: #8d8d8d29;
}
.app-navbar-item .ai-icon {
display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px;
    height: 24px;
    width: 24px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.5px;
    color: var(--cds-text-on-color, #ffffff);
    border: 1px solid var(--cds-text-on-color, #ffffff);
}
.cds-icon-only-btn:hover {
background: var(--cds-layer-hover, #e8e8e8);
/*        color: var(--cds-text-primary, #161616);*/
}
.cds-status-indicator.cds-status-green {
background-color: var(--cds-support-success, #24a148);
}
.cds-status-indicator.cds-status-red {
background-color: var(--cds-support-error, #da1e28);
}
.cds-status-indicator.connected {
background-color: #24a148;
}
.cds-status-indicator.disconnected {
background-color: #161616;
}
.cds-timeline-icon-error .carbon-icon {
background-color: var(--cds-icon-danger, #da1e28);
}
.cds-timeline-icon-success .carbon-icon {
background-color: var(--cds-support-success);
}
.cds-timeline-icon-info .carbon-icon {
background-color: var(--cds-support-info, #0043CE);
}
.cds-tab-button:hover {
color: var(--cds-text-primary, #161616);
        font-weight: 400;
        box-shadow: inset 0 -2px 0 0 var(--cds-border-strong-01, #8d8d8d);
}
.cds-tab-button.active {
background: var(--cds-field, #ffffff);
        color: var(--cds-text-primary, #161616);
        font-weight: 600;
        /*        border-top: 2px solid var(--cds-border-interactive, #0f62fe);*/
        box-shadow: inset 0 2px 0 0 var(--cds-border-interactive, #0f62fe);
        box-shadow: inset 0 -2px 0 0 var(--cds-border-interactive, #0f62fe);
}
.carbon-combobox:focus {
border: 2px solid var(--border-primary-color) !important;
}
.carbon-combobox.disabled {
background-color: var(--white-color, #FFFFFF) !important;
        border-bottom: 1px solid var(--carbon-textbox-border-bottom-readonly, #e7e7e7) !important;
}
.cds-mail-list-wrap .carbon-checkbox {
border: 1px solid var(--cds-icon-secondary, #525252) !important
}
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-slide-viewer):not(.cds-rw-window) {
--dock-motion-depth-delay: 0ms;
}
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-slide-viewer):not(.cds-rw-window)
    :is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-slide-viewer):not(.cds-rw-window) {
--dock-motion-depth-delay: 0ms;
}
.cds-page-motion > :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window) {
--dock-motion-depth-delay: 0ms;
}
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
--dock-motion-depth-delay: 0ms;
}
.cds-copilot-echo .markdown-body p {
margin-bottom: 12px !important;
}
.echo-input:focus {
outline: 2px solid var(--cds-focus, #0f62fe);
    outline-offset: -2px;
}
.cds-popover-wrap.teams-menu-tool.comment-tool .rx-popover-container .rx-popover-content {
left: -113px !important;
}
.thinking-text-container .thinking-text-content p {
white-space: pre-wrap;
            margin-top: 1rem;
}
.echo-chat-assistant__image-viewer-close:hover,
    .echo-chat-assistant__image-viewer-close:focus-visible {
background: rgba(82, 82, 82, 0.92);
        outline: 2px solid rgba(255, 255, 255, 0.72);
        outline-offset: 2px;
}
.echo-chat-assistant .messages h2,
    .echo-chat-assistant .messages h3 {
font-size: 16px;
}
.rw-composer--markdown .rw-composer__surface th,
.rw-composer--markdown .rw-composer__surface td {
padding: 8px 12px;
    text-align: left;
    vertical-align: top;
    border: 1px solid var(--cds-border-subtle-01, currentColor);
}
.rw-composer--markdown .rw-composer__surface th {
background: var(--cds-layer-accent-01, transparent);
    font-weight: 500;
}
.rw-composer__editor .rw-composer__surface blockquote {
margin: 4px 0;
    padding-left: 12px;
    border-left: 3px solid var(--cds-border-subtle-01, currentColor);
    color: var(--cds-text-secondary, currentColor);
}
.rw-composer__editor .rw-composer__surface pre {
margin: 4px 0;
    padding: 8px 12px;
    overflow-x: auto;
    background: var(--cds-layer-accent-01, transparent);
    border-radius: 4px;
    font-size: 13px;
}

/* ==== 10-tokens/carbon-tokens.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.tokens.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.foundation.css에서 이전됨) */
[data-bs-theme=light] {
--cds-grid-header: #e7e7e7;
    /* 선택 행: 카본 표준 $layer-selected — 구분은 좌측 인디케이터 바가 담당 */
    --cds-grid-select: #e0e0e0c4;
    --cds-grid-border: #cbcbcb;
    --cds-grid-column-border: #d3d3d3;
    --cds-grid-cell-border: #dedede;
}
[data-bs-theme=dark] {
--cds-grid-header: #2b2b2b;
    --cds-grid-select: #393939;
    --cds-grid-border: #444444;
    --cds-grid-column-border: #444444;
    --cds-grid-cell-border: #444444;
}
[data-bs-theme=light] {
--bs-gray-100: #F9F9F9;
    --bs-gray-200: #F4F4F4;
    --bs-gray-300: #E1E3EA;
    --bs-gray-400: #B5B5C3;
    --bs-gray-500: #A1A5B7;
    --bs-gray-600: #7E8299;
    --bs-gray-700: #5E6278;
    --bs-gray-800: #3F4254;
    --bs-gray-900: #181818;
    --carbon-dark-color: #161616;
    --dark-color: #000000;
    --primary-color: #0050e6;
    --white-color: #FFFFFF;
    --primary-bs-txt-color: #fff;
    --primary-bg-color: #0f62fe;
    --primary-bg-over-color: #0050e6;
    --border-primary-color: #0050e6;
    --carbon-textbox-bg: #F4F4F4;
    --carbon-textbox-border-bottom: #8d8d8d;
    --carbon-textbox-border-bottom-readonly: #e7e7e7;
    --carbon-combobox-bg: #1967d2;
    --success-color: #24a148;
    --toggle-off: #8d8d8d;
    --shimmer-color: rgba(255, 255, 255, 0.55);
    /* Legacy bridge */
    --cds-primary: #0f62fe;
    --cds-bg-gray: #f4f4f4; /* 기존 cds-field-01 대체 */
    --cds-bg-light: #fff; /* 기존 cds-field-02 대체 */
    /* carbon에서 rwtext 상속 배경색 */
    --cds-rw-ctrl-bg: var(--cds-bg-light);
    /* Neutral scale */
    --cds-gray-100: #fafafa;
    --cds-gray-200: #ececec;
    --cds-gray-300: #e0e0e0;
    --cds-gray-400: #c6c6c6;
    --cds-gray-500: #8d8d8d;
    --cds-field: #ffffff;
    --cds-field-01: #f4f4f4;
    --cds-field-02: #ffffff;
    --cds-field-03: #f4f4f4;
    --cds-bg-white: #ffffff;
    --cds-bg-dark: #161616;
    --cds-white-color: #FFFFFF;
    --cds-dark-color: #161616;
    --cds-overlay: #16161650;
    --cds-background-hover: #8d8d8d30;
    --cds-background-active: #8d8d8d50;
    --cds-background: #ffffff;
    --cds-background-inverse: #161616;
    --cds-layer-01: #f4f4f4;
    --cds-layer-02: #e0e0e0;
    --cds-layer-03: #fafafa;
    --cds-layer-selected: #e0e0e0;
    --cds-layer-selected-hover: #d1d1d1;
    --cds-layer-hover: #e8e8e8;
    --cds-layer-accent: #e0e0e0;
    --cds-toggle-off: #e0e0e0;
    --cds-table-header: #e0e0e0;
    --cds-echo-bubble: #f4f4f4;
    /* 색상-텍스트 */
    --cds-text-primary: #161616;
    --cds-text-secondary: #525252;
    --cds-text-placeholder: #a8a8a8;
    --cds-text-helper: #6f6f6f;
    --cds-text-disabled: #16161625;
    --cds-text-error: #da1e28;
    --cds-text-warning: #f1c21b;
    --cds-text-inverse: #ffffff;
    --cds-text-on-color: #ffffff;
    --cds-text-on-color-disabled: #8d8d8d;
    --cds-link-primary: #0f62fe;
    --cds-link-primary-hover: #054ada;
    --cds-link-secondary: #0043ce;
    --cds-link-inverse: #78a9ff;
    --cds-link-inverse-hover: #a6c8ff;
    /* 색상-버튼 */
    --cds-focus: #0f62fe;
    --cds-button-primary: #0f62fe;
    --cds-button-primary-hover: #0353e9;
    --cds-button-primary-active: #002d9c;
    --cds-button-secondary: #393939;
    --cds-button-secondary-hover: #474747;
    --cds-button-secondary-active: #6F6F6F;
    --cds-button-tertiary: #0f62fe;
    --cds-button-tertiary-hover: #0353e9;
    --cds-button-tertiary-active: #002d9c;
    --cds-button-danger-primary: #da1e28;
    --cds-button-danger-secondary: #da1e28;
    --cds-button-danger-hover: #b81921;
    --cds-button-danger-active: #750e13;
    --cds-button-separator: #e0e0e0;
    --cds-button-disabled: #c6c6c6;
    --cds-button-ghost-active: #8D8D8D50;
    /* 색상-보더 */
    --cds-border-interactive: #0f62fe;
    --cds-border-sidebar: #ededed;
    --cds-border-subtle-01: #e0e0e0;
    --cds-border-subtle-02: #c6c6c6;
    --cds-border-strong-01: #8d8d8d;
    --cds-border-tile-01: #c6c6c6;
    --cds-border-tile-02: #a8a8a8;
    --cds-border-inverse: #161616;
    --cds-border-disabled: #c6c6c6;
    /* 아이콘 */
    --cds-icon-primary: #161616;
    --cds-icon-secondary: #525252;
    --cds-icon-danger: #da1e28;
    --cds-icon-disabled: #c6c6c6;
    /* 태그 */
    --cds-tag-bg-blue: #D0E2FF;
    --cds-tag-bg-red: #FFD7D9;
    --cds-tag-bg-green: #A7F0BA;
    --cds-tag-bg-gray: #E0E0E0;
    --cds-tag-bg-yellow: #fadf80;
    --cds-tag-bg-black: #393939;
    --cds-tag-bg-purple: #E8DAFF;
    --cds-tag-text-blue: #0043CE;
    --cds-tag-text-red: #A2191F;
    --cds-tag-text-green: #0E6027;
    --cds-tag-text-gray: #161616;
    --cds-tag-text-yellow: #403203;
    --cds-tag-text-black: #ffffff;
    --cds-tag-text-purple: #6929C4;
    /* notification */
    --cds-notification-danger: #FFF1F1;
    --cds-notification-warning: #FCF4D6;
    --cds-notification-success: #DEFBE6;
    --cds-notification-info: #EDF5FF;
    /* Support Color */
    --cds-support-error: #da1e28;
    --cds-support-success: #24a148;
    --cds-support-warning: #f1c21b;
    --cds-support-info: #0043CE;
    --cds-support-error-inverse: #fa4d56;
    --cds-support-success-inverse: #42be65;
    --cds-support-warning-inverse: #f1c21b;
    --cds-support-info-inverse: #4589ff;
    --cds-support-caution: #ff832b;
    --cds-support-undefined: #8a3ffc;
}
[data-bs-theme=dark] {
--bs-gray-100: #1b1b1b;
    --bs-gray-200: #F4F4F4;
    --bs-gray-300: #323232;
    --bs-gray-400: #474761;
    --bs-gray-500: #565674;
    --bs-gray-600: #6D6D6D;
    --bs-gray-700: #929292;
    --bs-gray-800: #CDCDCD;
    --bs-gray-900: #FFFFFF;
    --carbon-dark-color: #FFFFFF;
    --white-color: #000000;
    --dark-color: #ffffff;
    --primary-bg-color: #0f62fe;
    --primary-bg-over-color: #0050e6;
    --primary-color: #0050e6;
    --border-primary-color: #FFFFFF;
    --carbon-textbox-bg: #262626;
    --carbon-textbox-border-bottom: #6f6f6f;
    --carbon-textbox-border-bottom-readonly: #e7e7e7;
    --carbon-combobox-bg: #1967d2;
    --success-color: #24a148;
    --toggle-off: #8d8d8d;
    --shimmer-color: rgba(255, 255, 255, 0.10);
    /* Legacy bridge */
    --cds-primary: #0f62fe;
    --cds-bg-gray: #262626; /* 기존 cds-field-01 대체 */
    --cds-bg-light: #161616; /* 기존 cds-field-02 대체 */
    /* carbon에서 rwtext 상속 배경색 */
    --cds-rw-ctrl-bg: var(--cds-bg-light);
    /* Neutral scale */
    --cds-gray-100: #434343;
    --cds-gray-200: #4b4b4b;
    --cds-gray-300: #525252;
    --cds-gray-400: #6D6D80;
    --cds-gray-500: #6f6f6f;
    --cds-field: #262626;
    --cds-field-01: #161616;
    --cds-field-02: #393939;
    --cds-field-03: #393939;
    --cds-bg-white: #ffffff;
    --cds-bg-dark: #161616;
    --cds-white-color: #161616;
    --cds-dark-color: #FFFFFF;
    --cds-overlay: #16161670;
    --cds-background-hover: #8d8d8d29;
    --cds-background-active: #8d8d8d40;
    --cds-background: #161616;
    --cds-background-inverse: #f4f4f4;
    --cds-layer-01: #262626;
    --cds-layer-02: #525252;
    --cds-layer-03: #333333;
    --cds-layer-selected: #393939;
    --cds-layer-selected-hover: #4c4c4c;
    --cds-layer-hover: #333333;
    --cds-layer-accent: #393939;
    --cds-toggle-off: #6f6f6f;
    --cds-table-header: #393939;
    --cds-echo-bubble: #393939;
    /* 색상-텍스트 */
    --cds-text-primary: #f4f4f4;
    --cds-text-secondary: #c6c6c6;
    --cds-text-placeholder: #6f6f6f;
    --cds-text-helper: #8d8d8d;
    --cds-text-disabled: #f4f4f425;
    --cds-text-error: #ff8389;
    --cds-text-inverse: #161616;
    --cds-text-on-color: #ffffff;
    --cds-text-on-color-disabled: #ffffff;
    --cds-link-primary: #78a9ff;
    --cds-link-primary-hover: #a6c8ff;
    --cds-link-secondary: #a6c8ff;
    --cds-link-inverse: #0f62fe;
    --cds-link-inverse-hover: #0043ce;
    /* 색상-버튼 */
    --cds-focus: #ffffff;
    --cds-button-primary: #0f62fe;
    --cds-button-primary-hover: #0353e9;
    --cds-button-primary-active: #002d9c;
    --cds-button-secondary: #6f6f6f;
    --cds-button-secondary-hover: #606060;
    --cds-button-secondary-active: #393939;
    --cds-button-tertiary: #ffffff;
    --cds-button-tertiary-hover: #0353e9;
    --cds-button-tertiary-active: #c6c6c6;
    --cds-button-danger-primary: #da1e28;
    --cds-button-danger-secondary: #fa4d56;
    --cds-button-danger-hover: #b81921;
    --cds-button-danger-active: #750e13;
    --cds-button-separator: #161616;
    --cds-button-disabled: #525252;
    /* Legacy misspellings retained for compatibility. Remove after migration. */
    --csd-button-separator: var(--cds-button-separator);
    --csd-button-disabled: var(--cds-button-disabled);
    /* 색상-보더 */
    --cds-border-sidebar: #1e1e1e;
    --cds-border-interactive: #4589ff;
    --cds-border-subtle-01: #525252;
    --cds-border-subtle-02: #6f6f6f;
    --cds-border-strong-01: #6f6f6f;
    --cds-border-tile-01: #525252;
    --cds-border-tile-02: #6f6f6f;
    --cds-border-inverse: #f4f4f4;
    --cds-border-disabled: #8d8d8d;
    /* 아이콘 */
    --cds-icon-primary: #f4f4f4;
    --cds-icon-secondary: #c6c6c6;
    --cds-icon-danger: #da1e28;
    --cds-icon-disabled: #f4f4f440;
    /* 태그 */
    --cds-tag-bg-blue: #D0E2FF;
    --cds-tag-bg-red: #FFD7D9;
    --cds-tag-bg-green: #A7F0BA;
    --cds-tag-bg-gray: #E0E0E0;
    --cds-tag-bg-yellow: #fadf80;
    --cds-tag-bg-black: #393939;
    --cds-tag-bg-purple: #E8DAFF;
    --cds-tag-text-blue: #0043CE;
    --cds-tag-text-red: #A2191F;
    --cds-tag-text-green: #0E6027;
    --cds-tag-text-gray: #161616;
    --cds-tag-text-yellow: #403203;
    --cds-tag-text-black: #ffffff;
    --cds-tag-text-purple: #6929C4;
    /* notification */
    --cds-notification-danger: #262626;
    --cds-notification-warning: #262626;
    --cds-notification-success: #262626;
    --cds-notification-info: #262626;
    /* Support Color */
    --cds-support-error: #fa4d56;
    --cds-support-success: #42be65;
    --cds-support-warning: #f1c21b;
    --cds-support-info: #4589ff;
    --cds-support-error-inverse: #da1e28;
    --cds-support-success-inverse: #24a148;
    --cds-support-warning-inverse: #f1c21b;
    --cds-support-info-inverse: #0043ce;
    --cds-support-caution: #ff832b;
    --cds-support-undefined: #a56eff;
}
:root {
--cds-grid-num: 4;
}
@media (max-width: 1199px) {
:root {
--cds-grid-num: 2;
}
}
@media (max-width: 850px) {
:root {
--cds-grid-num: 1;
}
}
:root {
/* Grid System */
    --wvs-columns-mobile: 4;
    --wvs-columns-desktop: 16;
    --wvs-gutter: 16px;
    --wvs-max-width: 100%;
    /* Breakpoint */
    --wvs-breakpoint: 1024px;
--ww-font-pretendard: var(--ww-font-ibm-sans-kr);
    --ww-font-ibm-sans-kr: 'IBM Plex Sans KR', 'IBM Plex Sans', system-ui, -apple-system, 'Malgun Gothic', sans-serif;
    --ww-font-base: var(--ww-font-pretendard);
    --ww-font-heading: var(--ww-font-base);
    --ww-font-light: var(--ww-font-base);
    --ww-font-strong: var(--ww-font-base);
    --ww-font-scale: 1;
}

/* ==== 20-base/utilities.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
@media (max-width: 1023.98px) {
.w-mm-20 {
width: 20% !important;
}
}
@media (max-width: 1023.98px) {
.w-mm-25 {
width: 25% !important;
}
}
@media (max-width: 1023.98px) {
.w-mm-50 {
width: 50% !important;
}
}
@media (max-width: 1023.98px) {
.w-mm-75 {
width: 75% !important;
}
}
@media (max-width: 1023.98px) {
.w-mm-80 {
width: 80% !important;
}
}
@media (max-width: 1023.98px) {
.w-mm-100 {
width: 100% !important;
}
}
@media (max-width: 1023.98px) {
.w-mm-auto {
width: auto !important;
}
}
.mail-container .text-muted {
color: var(--cds-text-secondary, #525252) !important;
}
.cds-copilot-echo .text-end {
margin: 0 12px !important;
}
.hover-underline:hover {
text-decoration: underline;
    text-underline-offset: 4px;
    /* 밑줄과 글자 사이 간격 */
}

/* ==== 20-base/layout-dock.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css에서 이전됨) */
@media (max-width: 1023.98px) {
.dock-mm-top, .dock-mm-left, .dock-mm-right {
flex: none;
        position: relative;
}
}
@media (max-width: 1023.98px) {
.dock-mm-content {
flex: 1;
        position: relative;
        overflow: auto;
        min-width: 0;
}
}
@media (max-width: 1023.98px) {
.dock-mm-d-none {
display: none !important;
}
}
@media (max-width: 1023.98px) {
.dock-mm-vpanel-scroll-content {
height: auto !important;
        min-height: 100%;
}
}
@media (max-width: 1023px) {
/* cds-mm-row-wrap(화면이 고른 2열 배치)일 때는 항목 폭을 cds-mm-w-50/100 이 정한다 */
.cds-filter-container > .dock-left.cds-filter-wrap:not(.cds-mm-row-wrap) > .d-flex {
width: 100% !important;
}
}

/* ==== 20-base/cds-utilities.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.foundation.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.surface.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.rw-bridge.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.legacy.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.sample.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.cds-bg-ctrl .rw-combobox-container .template-cotainer {
background-color: transparent !important;
}
span.cds-ellipsis {
display:inline-block !important;
}
.cds-word-break {
word-break: break-all;
}
.cds-scroll-hover-y::-webkit-scrollbar {
width: 6px;
        /* 얇은 두께 */
        background-color: transparent;
        /* 트랙 배경 투명 */
}
.cds-scroll-hover-y::-webkit-scrollbar-thumb {
background-color: transparent;
        border-radius: 0px;
}
.cds-scroll-hover-y:has(:hover)::-webkit-scrollbar-thumb {
background-color: rgba(85, 85, 85, 0.5);
        /* 연한 회색 */
}
.cds-scroll-hover-y::-webkit-scrollbar-thumb:hover {
background-color: rgba(85, 85, 85, 0.8);
}
@media (max-width: 1023px) and (hover: none) and (pointer: coarse) {
.cds-scroll-mobile {
display: block !important;
        height: calc(100vh - 48px) !important;
        height: calc(100dvh - 48px) !important;
        max-height: calc(100dvh - 48px);
        min-height: calc(100vh - 48px) !important;
        min-height: calc(100dvh - 48px) !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
}
}
@media (max-width: 1023px) and (hover: none) and (pointer: coarse) {
.cds-scroll-body-mobile {
display: block !important;
        flex: none !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
}
}
.cds-p-0 {
padding: 0px !important;
}
.cds-p-1 {
padding: 2px !important;
}
.cds-p-2 {
padding: 4px !important;
}
.cds-p-3 {
padding: 8px !important;
}
.cds-p-4 {
padding: 12px !important;
}
.cds-p-5 {
padding: 16px !important;
}
.cds-p-6 {
padding: 24px !important;
}
.cds-p-7 {
padding: 32px !important;
}
.cds-p-8 {
padding: 40px !important;
}
.cds-p-9 {
padding: 48px !important;
}
.cds-p-10 {
padding: 64px !important;
}
.cds-p-11 {
padding: 80px !important;
}
.cds-p-12 {
padding: 96px !important;
}
.cds-p-13 {
padding: 160px !important;
}
.cds-ps-0 {
padding-left: 0px !important;
}
.cds-ps-1 {
padding-left: 2px !important;
}
.cds-ps-2 {
padding-left: 4px !important;
}
.cds-ps-3 {
padding-left: 8px !important;
}
.cds-ps-4 {
padding-left: 12px !important;
}
.cds-ps-5 {
padding-left: 16px !important;
}
.cds-ps-6 {
padding-left: 24px !important;
}
.cds-ps-7 {
padding-left: 32px !important;
}
.cds-ps-8 {
padding-left: 40px !important;
}
.cds-ps-9 {
padding-left: 48px !important;
}
.cds-ps-10 {
padding-left: 64px !important;
}
.cds-ps-11 {
padding-left: 80px !important;
}
.cds-ps-12 {
padding-left: 96px !important;
}
.cds-ps-13 {
padding-left: 160px !important;
}
.cds-pe-0 {
padding-right: 0px !important;
}
.cds-pe-1 {
padding-right: 2px !important;
}
.cds-pe-2 {
padding-right: 4px !important;
}
.cds-pe-3 {
padding-right: 8px !important;
}
.cds-pe-4 {
padding-right: 12px !important;
}
.cds-pe-5 {
padding-right: 16px !important;
}
.cds-pe-6 {
padding-right: 24px !important;
}
.cds-pe-7 {
padding-right: 32px !important;
}
.cds-pe-8 {
padding-right: 40px !important;
}
.cds-pe-9 {
padding-right: 48px !important;
}
.cds-pe-10 {
padding-right: 64px !important;
}
.cds-pe-11 {
padding-right: 80px !important;
}
.cds-pe-12 {
padding-right: 96px !important;
}
.cds-pe-13 {
padding-right: 160px !important;
}
.cds-pb-0 {
padding-bottom: 0px !important;
}
.cds-pb-1 {
padding-bottom: 2px !important;
}
.cds-pb-2 {
padding-bottom: 4px !important;
}
.cds-pb-3 {
padding-bottom: 8px !important;
}
.cds-pb-4 {
padding-bottom: 12px !important;
}
.cds-pb-5 {
padding-bottom: 16px !important;
}
.cds-pb-6 {
padding-bottom: 24px !important;
}
.cds-pb-7 {
padding-bottom: 32px !important;
}
.cds-pb-8 {
padding-bottom: 40px !important;
}
.cds-pb-9 {
padding-bottom: 48px !important;
}
.cds-pb-10 {
padding-bottom: 64px !important;
}
.cds-pb-11 {
padding-bottom: 80px !important;
}
.cds-pb-12 {
padding-bottom: 96px !important;
}
.cds-pb-13 {
padding-bottom: 160px !important;
}
.cds-pt-0 {
padding-top: 0px !important;
}
.cds-pt-1 {
padding-top: 2px !important;
}
.cds-pt-2 {
padding-top: 4px !important;
}
.cds-pt-3 {
padding-top: 8px !important;
}
.cds-pt-4 {
padding-top: 12px !important;
}
.cds-pt-5 {
padding-top: 16px !important;
}
.cds-pt-6 {
padding-top: 24px !important;
}
.cds-pt-7 {
padding-top: 32px !important;
}
.cds-pt-8 {
padding-top: 40px !important;
}
.cds-pt-9 {
padding-top: 48px !important;
}
.cds-pt-10 {
padding-top: 64px !important;
}
.cds-pt-11 {
padding-top: 80px !important;
}
.cds-pt-12 {
padding-top: 96px !important;
}
.cds-pt-13 {
padding-top: 160px !important;
}
.cds-px-0 {
padding-left: 0px !important;
    padding-right: 0px !important;
}
.cds-px-1 {
padding-left: 2px !important;
    padding-right: 2px !important;
}
.cds-px-2 {
padding-left: 4px !important;
    padding-right: 4px !important;
}
.cds-px-3 {
padding-left: 8px !important;
    padding-right: 8px !important;
}
.cds-px-4 {
padding-left: 12px !important;
    padding-right: 12px !important;
}
.cds-px-5 {
padding-left: 16px !important;
    padding-right: 16px !important;
}
.cds-px-6 {
padding-left: 24px !important;
    padding-right: 24px !important;
}
.cds-px-7 {
padding-left: 32px !important;
    padding-right: 32px !important;
}
.cds-px-8 {
padding-left: 40px !important;
    padding-right: 40px !important;
}
.cds-px-9 {
padding-left: 48px !important;
    padding-right: 48px !important;
}
.cds-px-10 {
padding-left: 64px !important;
    padding-right: 64px !important;
}
.cds-px-11 {
padding-left: 80px !important;
    padding-right: 80px !important;
}
.cds-px-12 {
padding-left: 96px !important;
    padding-right: 96px !important;
}
.cds-px-13 {
padding-left: 160px !important;
    padding-right: 160px !important;
}
.cds-py-0 {
padding-top: 0px !important;
    padding-bottom: 0px !important;
}
.cds-py-1 {
padding-top: 2px !important;
    padding-bottom: 2px !important;
}
.cds-py-2 {
padding-top: 4px !important;
    padding-bottom: 4px !important;
}
.cds-py-3 {
padding-top: 8px !important;
    padding-bottom: 8px !important;
}
.cds-py-4 {
padding-top: 12px !important;
    padding-bottom: 12px !important;
}
.cds-py-5 {
padding-top: 16px !important;
    padding-bottom: 16px !important;
}
.cds-py-6 {
padding-top: 24px !important;
    padding-bottom: 24px !important;
}
.cds-py-7 {
padding-top: 32px !important;
    padding-bottom: 32px !important;
}
.cds-py-8 {
padding-top: 40px !important;
    padding-bottom: 40px !important;
}
.cds-py-9 {
padding-top: 48px !important;
    padding-bottom: 48px !important;
}
.cds-py-10 {
padding-top: 64px !important;
    padding-bottom: 64px !important;
}
.cds-py-11 {
padding-top: 80px !important;
    padding-bottom: 80px !important;
}
.cds-py-12 {
padding-top: 96px !important;
    padding-bottom: 96px !important;
}
.cds-py-13 {
padding-top: 160px !important;
    padding-bottom: 160px !important;
}
.cds-m-0 {
margin: 0px !important;
}
.cds-m-1 {
margin: 2px !important;
}
.cds-m-2 {
margin: 4px !important;
}
.cds-m-3 {
margin: 8px !important;
}
.cds-m-4 {
margin: 12px !important;
}
.cds-m-5 {
margin: 16px !important;
}
.cds-m-6 {
margin: 24px !important;
}
.cds-m-7 {
margin: 32px !important;
}
.cds-m-8 {
margin: 40px !important;
}
.cds-m-9 {
margin: 48px !important;
}
.cds-m-10 {
margin: 64px !important;
}
.cds-m-11 {
margin: 80px !important;
}
.cds-m-12 {
margin: 96px !important;
}
.cds-m-13 {
margin: 160px !important;
}
.cds-ms-0 {
margin-left: 0px !important;
}
.cds-ms-1 {
margin-left: 2px !important;
}
.cds-ms-2 {
margin-left: 4px !important;
}
.cds-ms-3 {
margin-left: 8px !important;
}
.cds-ms-4 {
margin-left: 12px !important;
}
.cds-ms-5 {
margin-left: 16px !important;
}
.cds-ms-6 {
margin-left: 24px !important;
}
.cds-ms-7 {
margin-left: 32px !important;
}
.cds-ms-8 {
margin-left: 40px !important;
}
.cds-ms-9 {
margin-left: 48px !important;
}
.cds-ms-10 {
margin-left: 64px !important;
}
.cds-ms-11 {
margin-left: 80px !important;
}
.cds-ms-12 {
margin-left: 96px !important;
}
.cds-ms-13 {
margin-left: 160px !important;
}
.cds-me-0 {
margin-right: 0px !important;
}
.cds-me-1 {
margin-right: 2px !important;
}
.cds-me-2 {
margin-right: 4px !important;
}
.cds-me-3 {
margin-right: 8px !important;
}
.cds-me-4 {
margin-right: 12px !important;
}
.cds-me-5 {
margin-right: 16px !important;
}
.cds-me-6 {
margin-right: 24px !important;
}
.cds-me-7 {
margin-right: 32px !important;
}
.cds-me-8 {
margin-right: 40px !important;
}
.cds-me-9 {
margin-right: 48px !important;
}
.cds-me-10 {
margin-right: 64px !important;
}
.cds-me-11 {
margin-right: 80px !important;
}
.cds-me-12 {
margin-right: 96px !important;
}
.cds-me-13 {
margin-right: 160px !important;
}
.cds-mb-0 {
margin-bottom: 0px !important;
}
.cds-mb-1 {
margin-bottom: 2px !important;
}
.cds-mb-2 {
margin-bottom: 4px !important;
}
.cds-mb-3 {
margin-bottom: 8px !important;
}
.cds-mb-4 {
margin-bottom: 12px !important;
}
.cds-mb-5 {
margin-bottom: 16px !important;
}
.cds-mb-6 {
margin-bottom: 24px !important;
}
.cds-mb-7 {
margin-bottom: 32px !important;
}
.cds-mb-8 {
margin-bottom: 40px !important;
}
.cds-mb-9 {
margin-bottom: 48px !important;
}
.cds-mb-10 {
margin-bottom: 64px !important;
}
.cds-mb-11 {
margin-bottom: 80px !important;
}
.cds-mb-12 {
margin-bottom: 96px !important;
}
.cds-mb-13 {
margin-bottom: 160px !important;
}
.cds-mt-0 {
margin-top: 0px !important;
}
.cds-mt-1 {
margin-top: 2px !important;
}
.cds-mt-1px {
/* focus, active 시 위에 짤림 방지 */
    margin-top: 1px !important;
}
.cds-mt-2 {
margin-top: 4px !important;
}
.cds-mt-3 {
margin-top: 8px !important;
}
.cds-mt-4 {
margin-top: 12px !important;
}
.cds-mt-5 {
margin-top: 16px !important;
}
.cds-mt-6 {
margin-top: 24px !important;
}
.cds-mt-7 {
margin-top: 32px !important;
}
.cds-mt-8 {
margin-top: 40px !important;
}
.cds-mt-9 {
margin-top: 48px !important;
}
.cds-mt-10 {
margin-top: 64px !important;
}
.cds-mt-11 {
margin-top: 80px !important;
}
.cds-mt-12 {
margin-top: 96px !important;
}
.cds-mt-13 {
margin-top: 160px !important;
}
.cds-mx-0 {
margin-left: 0px !important;
    margin-right: 0px !important;
}
.cds-mx-1 {
margin-left: 2px !important;
    margin-right: 2px !important;
}
.cds-mx-2 {
margin-left: 4px !important;
    margin-right: 4px !important;
}
.cds-mx-3 {
margin-left: 8px !important;
    margin-right: 8px !important;
}
.cds-mx-4 {
margin-left: 12px !important;
    margin-right: 12px !important;
}
.cds-mx-5 {
margin-left: 16px !important;
    margin-right: 16px !important;
}
.cds-mx-6 {
margin-left: 24px !important;
    margin-right: 24px !important;
}
.cds-mx-7 {
margin-left: 32px !important;
    margin-right: 32px !important;
}
.cds-mx-8 {
margin-left: 40px !important;
    margin-right: 40px !important;
}
.cds-mx-9 {
margin-left: 48px !important;
    margin-right: 48px !important;
}
.cds-mx-10 {
margin-left: 64px !important;
    margin-right: 64px !important;
}
.cds-mx-11 {
margin-left: 80px !important;
    margin-right: 80px !important;
}
.cds-mx-12 {
margin-left: 96px !important;
    margin-right: 96px !important;
}
.cds-mx-13 {
margin-left: 160px !important;
    margin-right: 160px !important;
}
.cds-my-0 {
margin-top: 0px !important;
    margin-bottom: 0px !important;
}
.cds-my-1 {
margin-top: 2px !important;
    margin-bottom: 2px !important;
}
.cds-my-2 {
margin-top: 4px !important;
    margin-bottom: 4px !important;
}
.cds-my-3 {
margin-top: 8px !important;
    margin-bottom: 8px !important;
}
.cds-my-4 {
margin-top: 12px !important;
    margin-bottom: 12px !important;
}
.cds-my-5 {
margin-top: 16px !important;
    margin-bottom: 16px !important;
}
.cds-my-6 {
margin-top: 24px !important;
    margin-bottom: 24px !important;
}
.cds-my-7 {
margin-top: 32px !important;
    margin-bottom: 32px !important;
}
.cds-my-8 {
margin-top: 40px !important;
    margin-bottom: 40px !important;
}
.cds-my-9 {
margin-top: 48px !important;
    margin-bottom: 48px !important;
}
.cds-my-10 {
margin-top: 64px !important;
    margin-bottom: 64px !important;
}
.cds-my-11 {
margin-top: 80px !important;
    margin-bottom: 80px !important;
}
.cds-my-12 {
margin-top: 96px !important;
    margin-bottom: 96px !important;
}
.cds-my-13 {
margin-top: 160px !important;
    margin-bottom: 160px !important;
}
.cds-gap-0 {
gap: 0 !important;
}
.cds-gap-1 {
gap: 2px !important;
}
.cds-gap-2 {
gap: 4px !important;
}
.cds-gap-3 {
gap: 8px !important;
}
.cds-gap-4 {
gap: 12px !important;
}
.cds-gap-5 {
gap: 16px !important;
}
.cds-gap-6 {
gap: 24px !important;
}
.cds-gap-7 {
gap: 32px !important;
}
.cds-gap-8 {
gap: 40px !important;
}
.cds-gap-9 {
gap: 44px !important;
}
.cds-gap-10 {
gap: 48px !important;
}
.cds-h-16px {
height: 16px !important;
}
.cds-h-20px {
height: 20px !important;
}
.cds-h-24px {
height: 24px !important;
}
.cds-h-30px {
height: 30px !important;
}
.cds-h-32px {
height: 32px !important;
}
.cds-h-38px {
height: 38px !important;
}
.cds-h-40px {
height: 40px !important;
}
.cds-h-48px {
height: 48px !important;
}
.cds-h-49px {
height: 49px !important;
}
.cds-h-50px {
height: 50px !important;
}
.cds-h-60px {
height: 60px !important;
}
.cds-h-64px {
height: 64px !important;
}
.cds-h-80px {
height: 80px !important;
}
.cds-h-90px {
height: 90px !important;
}
.cds-h-180px {
height: 180px !important;
}
.cds-h-30 {
height: 30% !important;
}
.cds-h-70 {
height: 70% !important;
}
.cds-h-80 {
height: 80% !important;
}
.cds-h-90 {
height: 90% !important;
}
.cds-w-16px {
width: 16px !important;
}
.cds-w-20px {
width: 20px !important;
}
.cds-w-30px {
width: 30px !important;
}
.cds-w-32px {
width: 32px !important;
}
.cds-w-40px {
width: 40px !important;
}
.cds-w-48px {
width: 48px !important;
}
.cds-w-50px {
width: 50px !important;
}
.cds-w-100px {
width: 100px !important;
}
.cds-w-120px {
width: 120px !important;
}
.cds-w-150px {
width: 150px !important;
}
.cds-w-200px {
width: 200px !important;
}
.cds-w-220px {
width: 220px !important;
}
.cds-w-250px {
width: 250px !important;
}
.cds-w-300px {
width: 300px !important;
}
.cds-w-350px {
width: 350px !important;
}
.cds-w-400px {
width: 400px !important;
}
.cds-w-450px {
width: 450px !important;
}
.cds-w-500px {
width: 500px !important;
}
.cds-w-550px {
width: 550px !important;
}
.cds-w-600px {
width: 600px !important;
}
.cds-w-650px {
width: 650px !important;
}
.cds-w-10 {
width: 10% !important;
}
.cds-w-20 {
width: 20% !important;
}
.cds-w-30 {
width: 30% !important;
}
.cds-w-40 {
width: 40% !important;
}
.cds-w-50 {
width: 50% !important;
}
.cds-w-60 {
width: 60% !important;
}
.cds-w-70 {
width: 70% !important;
}
.cds-w-80 {
width: 80% !important;
}
.cds-w-90 {
width: 90% !important;
}
.cds-w-100 {
width: 100% !important;
}
.cds-border-bottom-primary {
box-shadow: inset 0px -3px 0px 0 var(--cds-primary);
}
.cds-border-left-primary-1 {
box-shadow: -1px 0 0 0 var(--cds-primary);
}
.cds-border-left-primary-2 {
box-shadow: -2px 0 0 0 var(--cds-primary);
}
.cds-border-left-primary-3 {
box-shadow: -3px 0 0 0 var(--cds-primary);
}
.cds-boxshadow-top {
box-shadow: inset 0 1px 0 0 var(--cds-border-subtle-01, #e0e0e0);
}
.cds-boxshadow-bottom {
box-shadow: inset 0 -1px 0 0 var(--cds-border-subtle-01, #e0e0e0);
}
.cds-boxshadow-left {
box-shadow: inset 1px 0 0 0 var(--cds-border-subtle-01, #e0e0e0);
}
.cds-boxshadow-right {
box-shadow: inset -1px 0 0 0 var(--cds-border-subtle-01, #e0e0e0);
}
.cds-border-bottom-gray {
border-bottom: 1px solid var(--cds-gray-300);
}
.cds-border-bottom-gray-100 {
border-bottom: 1px solid var(--cds-gray-100);
}
.cds-border-bottom-gray-200 {
border-bottom: 1px solid var(--cds-gray-200);
}
.cds-border-bottom-gray-300 {
border-bottom: 1px solid var(--cds-gray-300);
}
.cds-border-bottom-gray-400 {
border-bottom: 1px solid var(--cds-gray-400);
}
.cds-border-bottom-gray-500 {
border-bottom: 1px solid var(--cds-gray-500);
}
.cds-h-border {
width: 100%;
    height: 1px;
    align-self: center;
    background-color: var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-h-border-dashed {
width: 100%;
    height: 1px;
    border: 0 !important;
    background-image: repeating-linear-gradient( to right, var(--bs-border-dashed-color, #525252) 0 4px, transparent 4px 8px );
    background-repeat: repeat-x;
    background-size: auto 1px;
}
.cds-border-gray-100 {
border-color: var(--cds-gray-100, #fafafa) !important;
}
.cds-border-gray-200 {
border-color: var(--cds-gray-200, #ececec) !important;
}
.cds-border-gray-300 {
border-color: var(--cds-gray-300, #e0e0e0) !important;
}
.cds-border-gray-400 {
border-color: var(--cds-gray-400, #c6c6c6) !important;
}
.cds-border-gray-500 {
border-color: var(--cds-gray-500, #8d8d8d) !important;
}
.cds-bg-none {
background-color: unset !important;
}
.cds-bg-white {
/* 다크모드 #161616 */
    background-color: var(--cds-white-color, #ffffff) !important;
}
.cds-bg-field {
/* 다크모드 #262626  */
    background-color: var(--cds-field, #ffffff) !important;
}
.cds-bg-field-02 {
/* 다크모드 #393939  */
    background-color: var(--cds-field-03, #f4f4f4) !important;
}
.cds-bg-layer {
/* 다크모드 #262626 */
    background-color: var(--cds-layer-01, #f4f4f4) !important;
}
.cds-bg-layer-02 {
/* 댓글 배경색상 다크모드 #333333 */
    background-color: var(--cds-layer-03, #fafafa) !important;
}
.cds-bg-accent {
/* 다크모드 #393939 */
    background-color: var(--cds-layer-accent, #e0e0e0) !important;
}
.cds-bg-dark {
background-color: var(--cds-bg-dark, #161616) !important;
}
.cds-gray-100 {
background-color: var(--cds-gray-100, #fafafa) !important;
}
.cds-gray-200 {
background-color: var(--cds-gray-200, #ececec) !important;
}
.cds-gray-300 {
background-color: var(--cds-gray-300, #e0e0e0) !important;
}
.cds-gray-400 {
background-color: var(--cds-gray-400, #c6c6c6) !important;
}
.cds-gray-500 {
background-color: var(--cds-gray-500, #8d8d8d) !important;
}
.cds-text-primary {
color: var(--cds-text-primary, #161616) !important;
}
.cds-text-secondary {
color: var(--cds-text-secondary, #525252) !important;
}
.cds-text-success {
color: var(--cds-support-success, #24a148) !important;
}
.cds-text-error {
color: var(--cds-text-error, #da1e28) !important;
}
.cds-text-warning {
color: var(--cds-text-warning, #f1c21b) !important;
}
.cds-text-info {
color: var(--cds-link-primary, #0f62fe);
}
.cds-text-white {
color: var(--cds-text-on-color, #ffffff) !important;
}
.cds-text-gray-100 {
color: var(--cds-gray-100, #fafafa);
}
.cds-text-gray-200 {
color: var(--cds-gray-200, #ececec);
}
.cds-text-gray-300 {
color: var(--cds-gray-300, #e0e0e0);
}
.cds-text-gray-400 {
color: var(--cds-gray-400, #c6c6c6);
}
.cds-text-gray-500 {
color: var(--cds-gray-500, #8d8d8d);
}
.cds-fs-12px {
font-size: 12px;
}
.cds-fs-13px {
font-size: 13px !important;
}
.cds-fs-14px {
font-size: 14px !important;
}
.cds-fs-16px {
font-size: 16px;
}
.cds-fs-18px {
font-size: 18px;
}
.cds-fs-20px {
font-size: 20px !important;
}
.cds-fs-24px {
font-size: 24px !important;
}
.cds-fs-28px {
font-size: 28px;
}
.cds-fs-32px {
font-size: 32px;
}
.cds-fs-36px {
font-size: 36px;
}
.cds-fs-40px {
font-size: 40px;
}
.cds-fs-44px {
font-size: 44px;
}
.cds-fs-48px {
font-size: 48px;
}
.cds-fs-52px {
font-size: 52px;
}
.carbon-textarea
    .carbon-textarea.cds-bg-field {
background-color: var(--cds-field-02, #ffffff) !important;
}
.cds-hover-primary:hover {
background-color: var(--cds-primary, #0f62fe) !important;
    color: var(--cds-text-on-color, #ffffff) !important;
}
.cds-hover-danger:hover {
background-color: var(--cds-button-danger-primary, #da1e28) !important;
    color: var(--cds-text-on-color, #ffffff) !important;
}
.cds-hover-card:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
}
.cds-hover-card:active, .cds-hover-card:focus {
outline: 2px solid var(--cds-focus) !important;
    outline-offset: -2px !important;
}
.cds-hover-view:hover .cds-hover-block {
display: block !important;
}
.cds-hover-none:hover {
background-color: transparent !important;
}
.cds-bg-gray {
background-color: var(--cds-bg-gray) !important;
    --cds-rw-ctrl-bg: var(--cds-bg-light) !important;
    --cds-rw-active-bg: var(--cds-bg-gray) !important;
}
.cds-bg-field .cds-grid-container .rwgrid .rw-data-row {
/*    background-color: var(--cds-filed-01, #f4f4f4) !important;*/
    background-color: var(--cds-bd-main, #ffffff) !important;
}
.cds-border-x {
border-left: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
    border-right: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-border-y {
border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-overflow-menu__item:hover {
background: var(--cds-layer-hover, #e8e8e8);
}
.cds-overflow-menu__item:focus-visible {
outline: 2px solid var(--cds-focus, #0f62fe);
    outline-offset: -2px;
}
.cds-overflow-menu__item:disabled {
color: var(--cds-text-disabled, #c6c6c6);
    cursor: not-allowed;
}
.cds-col-1 {
grid-column: span 1;
}
.cds-col-2 {
grid-column: span 2;
}
.cds-col-3 {
grid-column: span 3;
}
.cds-col-4 {
grid-column: span 4;
}
.cds-col-5 {
grid-column: span 5;
}
.cds-col-6 {
grid-column: span 6;
}
.cds-col-7 {
grid-column: span 7;
}
.cds-col-8 {
grid-column: span 8;
}
.cds-col-9 {
grid-column: span 9;
}
.cds-col-10 {
grid-column: span 10;
}
.cds-col-11 {
grid-column: span 11;
}
.cds-col-12 {
grid-column: span 12;
}
.cds-col-13 {
grid-column: span 13;
}
.cds-col-14 {
grid-column: span 14;
}
.cds-col-15 {
grid-column: span 15;
}
.cds-col-16 {
grid-column: 1 / -1;
}
/* bump: 순서 의존 해소 (vs .rw-window-slide-down) */
.cds-motion-enter.cds-motion-enter {
animation: cds-motion-enter-content 260ms cubic-bezier(0, 0, 0.38, 0.9) backwards;
    will-change: auto;
}
.cds-motion-chain {
--cds-motion-chain-delay: 0ms;
    --cds-motion-chain-item-delay: 0ms;
}
.cds-motion-chain.cds-motion-depth,
.cds-motion-chain .cds-motion-depth {
--cds-motion-chain-delay: 0ms;
}
.cds-motion-chain > :nth-child(1) {
--cds-motion-chain-item-delay: 0ms;
}
.cds-motion-chain > :nth-child(2) {
--cds-motion-chain-item-delay: 80ms;
}
.cds-motion-chain > :nth-child(3) {
--cds-motion-chain-item-delay: 160ms;
}
.cds-motion-chain > :nth-child(4) {
--cds-motion-chain-item-delay: 240ms;
}
.cds-motion-chain > :nth-child(5) {
--cds-motion-chain-item-delay: 320ms;
}
.cds-motion-chain > :nth-child(6) {
--cds-motion-chain-item-delay: 400ms;
}
.cds-motion-chain > :nth-child(7) {
--cds-motion-chain-item-delay: 480ms;
}
.cds-motion-chain > :nth-child(8) {
--cds-motion-chain-item-delay: 560ms;
}
.cds-motion-chain > :nth-child(9) {
--cds-motion-chain-item-delay: 640ms;
}
.cds-motion-chain > :nth-child(10) {
--cds-motion-chain-item-delay: 720ms;
}
.cds-motion-chain > :nth-child(11) {
--cds-motion-chain-item-delay: 800ms;
}
.cds-motion-chain > :nth-child(12) {
--cds-motion-chain-item-delay: 880ms;
}
@media not all {
/* bump: 순서 의존 해소 (vs .rw-window-slide-down) */
.cds-motion-enter.cds-motion-enter {
animation: cds-motion-enter-fade 240ms cubic-bezier(0, 0, 0.38, 0.9) both;
    will-change: auto;
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter) {
--dock-motion-depth-delay: 0ms;
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter)
    :is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter) {
--dock-motion-depth-delay: 160ms;
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter)
    :is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter)
    :is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter) {
--dock-motion-depth-delay: 320ms;
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter)
    :is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter)
    :is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter)
    :is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter) {
--dock-motion-depth-delay: 480ms;
}
}
@media not all {
.cds-motion-chain {
--cds-motion-chain-delay: 180ms;
    --cds-motion-chain-item-delay: 0ms;
}
}
@media not all {
.cds-motion-chain.cds-motion-depth,
.cds-motion-chain .cds-motion-depth {
--cds-motion-chain-delay: 360ms;
}
}
@media not all {
.cds-motion-chain > :nth-child(1) {
--cds-motion-chain-item-delay: 0ms;
}
}
@media not all {
.cds-motion-chain > :nth-child(2) {
--cds-motion-chain-item-delay: 80ms;
}
}
@media not all {
.cds-motion-chain > :nth-child(3) {
--cds-motion-chain-item-delay: 160ms;
}
}
@media not all {
.cds-motion-chain > :nth-child(4) {
--cds-motion-chain-item-delay: 240ms;
}
}
@media not all {
.cds-motion-chain > :nth-child(5) {
--cds-motion-chain-item-delay: 320ms;
}
}
@media not all {
.cds-motion-chain > :nth-child(6) {
--cds-motion-chain-item-delay: 400ms;
}
}
@media not all {
.cds-motion-chain > :nth-child(7) {
--cds-motion-chain-item-delay: 480ms;
}
}
@media not all {
.cds-motion-chain > :nth-child(8) {
--cds-motion-chain-item-delay: 560ms;
}
}
@media not all {
.cds-motion-chain > :nth-child(9) {
--cds-motion-chain-item-delay: 640ms;
}
}
@media not all {
.cds-motion-chain > :nth-child(10) {
--cds-motion-chain-item-delay: 720ms;
}
}
@media not all {
.cds-motion-chain > :nth-child(11) {
--cds-motion-chain-item-delay: 800ms;
}
}
@media not all {
.cds-motion-chain > :nth-child(12) {
--cds-motion-chain-item-delay: 880ms;
}
}
@media not all {
.cds-motion-chain > .cds-motion-enter,
.cds-motion-chain > * > .cds-motion-enter,
.cds-motion-chain > * > * > .cds-motion-enter {
animation-name: cds-motion-enter-chain;
    animation-duration: 360ms;
    animation-delay: calc(var(--cds-motion-chain-delay) + var(--cds-motion-chain-item-delay, 0ms));
}
}
@media not all {
.cds-page-motion .cds-motion-chain > .cds-motion-enter,
.cds-page-motion .cds-motion-chain > * > .cds-motion-enter,
.cds-page-motion .cds-motion-chain > * > * > .cds-motion-enter {
animation-name: cds-motion-enter-chain;
    animation-duration: 360ms;
    animation-delay: calc(var(--cds-motion-chain-delay) + var(--cds-motion-chain-item-delay, 0ms));
}
}
@keyframes cds-motion-enter-content {
from {
        opacity: 0.55;
        transform: translateY(-14px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ==== 20-base/reset.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.foundation.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
body {
margin: 0;
    padding: 0;
}
cds-mw-230px {
max-width: 230px !important;
}
cds-border-dark {
border-color: var(--cds-border-dark, #000) !important;
}
body {
font-family: var(--ww-font-base, var(--ww-font-ibm-sans-kr), sans-serif) !important; /*'Spoqa Han Sans Neo',*/
    font-size: calc(16px * var(--ww-font-scale, 1));
    font-feature-settings: 'tnum';
    font-weight: 400;
    height: 100%;
    text-size-adjust: none; /* 모바일 폰트사이즈 자동 조절 방지 */
}
@supports (-webkit-touch-callout: none) {
input:focus, textarea:focus, .wvs-echo-content .rw-textbox:focus, .wvs-echo-content .rw-combobox-container .rw-textbox:focus,
    .wvs-echo-content .cds-combobox:focus, .rw-window.cds-rw-window .rw-textbox:focus {
font-size: 16px !important;
}
}
html,
body {
font-family: var(--ww-font-base);
    font-variant-numeric: tabular-nums;
    height: calc(var(--vh, 1vh) * 100);
    min-height: 100vh;
    margin: 0;
    padding: 0;
}

/* ==== 20-base/animations.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
@keyframes fadeIn {
from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes echoDotPulseStatic {
0%,
    80%,
    100% {
        opacity: 0.35;
    }

    40% {
        opacity: 1;
    }
}

/* ==== 20-base/typography.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
html[data-font-scheme='pretendard'] {
--ww-font-base: var(--ww-font-pretendard);
    --ww-font-heading: var(--ww-font-base);
    --ww-font-light: var(--ww-font-base);
    --ww-font-strong: var(--ww-font-base);
    --ww-font-scale: 1;
}
html[data-font-scheme='ibm'] {
--ww-font-base: var(--ww-font-ibm-sans-kr);
    --ww-font-heading: var(--ww-font-base);
    --ww-font-light: var(--ww-font-base);
    --ww-font-strong: var(--ww-font-base);
    --ww-font-scale: 0.95;
}
[data-font-scheme='ibm'] {
--ww-font-base: var(--ww-font-ibm-sans-kr);
    --ww-font-heading: var(--ww-font-base);
    --ww-font-light: var(--ww-font-base);
    --ww-font-strong: var(--ww-font-base);
    --ww-font-scale: 0.95;
}
.ff-ibm-sans-kr {
/*    font-family: var(--ww-font-ibm-sans-kr) !important;*/
    font-family: 'IBM Plex Sans KR', var(--ww-font-ibm-sans-kr), sans-serif !important;  
/*   폰트 갯수가 최소화 되어야 IBM이 적용됨 */
}

/* ==== 30-shell/header.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css에서 이전됨) */
.wvs-header {
position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 48px;
    background: #161616;
    /* Keep the background color fixed */
    border-bottom: 0px solid var(--cds-border-subtle-01, #525252) !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 1000;
    color: #f4f4f4;
    /* Keep the text color fixed */
}
[data-bs-theme=dark]
.wvs-header {
border-bottom: 1px solid var(--cds-border-subtle-01, #525252) !important;
}
.wvs-header-title {
flex: 1;
    font-size: 14px;
    font-weight: 500;
    margin: 0;
    cursor: default;
}
.wvs-header-left {
display: flex;
    align-items: center;
}
.wvs-header-right {
display: flex;
    align-items: center;
}
.wvs-header-userinfo {
font-size: 14px;
    font-weight: 300;
    flex: 1;
    margin-right: 16px;
}
.wvs-header-popover .cds-icon-only-btn:hover {
background-color: #8d8d8d29;
}
.wvs-header-popover .cds-icon-only-btn:focus,
    .wvs-header-popover .cds-icon-only-btn:active {
outline: 2px solid #ffffff !important;
        outline-offset: -2px;
        background-color: #8d8d8d29;
}
.wvs-header-popover .wvs-popover-item {
display: flex;
        gap: 8px;
        color: #ffffff;
        padding: 10px 16px;
        cursor: pointer;
}
.wvs-header-popover .wvs-popover-item:hover {
background-color: #8d8d8d29;
}
.wvs-header-popover .wvs-popover-item:focus,
        .wvs-header-popover .wvs-popover-item:active {
outline: 2px solid #ffffff !important;
            outline-offset: -2px !important;
}
.wvs-header-notification-title .cds-link {
color: var(--cds-link-inverse) !important;
}
.wvs-header-notification .wvs-popover-item {
padding: 12px 24px;
}

/* ==== 30-shell/sidebar.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell-compat.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.wvs-sidebar {
position: fixed;
    top: 48px;
    left: 0;
    bottom: 0;
    background: var(--cds-white-color, #FFFFFF);
    color: #f4f4f4;
    transition: transform 0.3s cubic-bezier(0.2, 0, 0.38, 0.9), width 0.3s ease;
    flex-shrink: 0;
    z-index: 900;
    /*border-right: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;*/
    display: flex;
    flex-direction: column;
}
.wvs-sidebar-nav {
flex: 1 0 auto;
}
.wvs-sidebar-footer {
border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    flex: 0 0 auto;
}
@media (min-width: 1024px) {
.wvs-sidebar.closed .nav-content-title {
opacity: 0;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed .wvs-sidebar-nav-item {
gap: 0 !important;
            padding: 10px 13px 10px 16px !important;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed .wvs-sidebar-nav-item span:last-child {
opacity: 0;
                width: 0;
                overflow: hidden;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed #kt_app_sidebar_menu > .menu-item.menu-item-heading {
display: none;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed:hover {
width: 256px;
            box-shadow: 2px 0 8px rgba(0, 0, 0, 0.15);
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed:hover .nav-content-title {
opacity: 1;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed:hover .wvs-sidebar-nav-item {
gap: 12px !important;
                padding: 10px 16px !important;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed:hover .wvs-sidebar-nav-item span:last-child {
opacity: 1;
                    width: auto;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed:hover #kt_app_sidebar_menu > .menu-item.menu-item-heading {
display: block;
}
}
@media (max-width: 1023px) {
.wvs-sidebar {
transform: translateX(-100%);
        box-shadow: 2px 0 8px rgba(0, 0, 0, 0.15);
}
}
@media (max-width: 1023px) {
.wvs-sidebar.active {
transform: translateX(0);
}
}
.wvs-sidebar-overlay {
display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 850;
}
@media(min-width: 1024px) {
[data-kt-app-sidebar-minimize=on]:not([data-kt-app-sidebar-hoverable=true]) .app-sidebar .app-sidebar-menu .side-searchbar {
display: none !important;
}
}
@media(max-width: 760px) {
.wvs-sidebar-nav-item {
border-left: 3px solid transparent;
}
}
.wvs-sidebar-nav-item:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
}
.wvs-sidebar-nav-item.selected::before, .wvs-sidebar-nav-item.active::before {
content: '';
            position: absolute;
            left: 0;
            top: 0;
            bottom: 0;
            width: 3px;
            background-color: var(--cds-focus, #0f62fe);
}
@media (min-width: 1024px) {
.wvs-content.sidebar-closed {
margin-left: 49px;
}
}
.sidebar {
background-color: var(--cds-white-color, #ffffff) !important;
    border-right: 1px solid var( --cds-border-subtle-01, #e0e0e0) !important;
}
.navbar {
background-color: #161616 !important;
    border-bottom: 1px solid var(--cds-border-subtle-01, #525252) !important;
}
.navbar-brand {
color: var(--cds-text-on-color, #ffffff);
}
.navbar-dark {
background-color: var(--cds-dark-color,#161616) !important;
    color: var(--cds-text-on-color, #ffffff);
}
#kt_app_sidebar_menu > .menu-item.menu-accordion:nth-last-child(1 of .menu-item.menu-accordion) {
border-bottom: 0 !important;
}
.app-sidebar.wvs-sidebar .menu-item .menu-heading-container {
border-top: 0 !important;
    padding: 8px !important;
}
.app-sidebar.wvs-sidebar #kt_app_sidebar_menu > .menu-item.pt-5 .menu-heading-container {
border-top: 0 !important;
}
.app-sidebar.wvs-sidebar .menu-heading.cds-sidebar-group {
color: var(--cds-text-primary, #161616) !important;
    font-size: 10px !important;
    font-weight: 500;
}
.menu-item .menu-content {
padding-top: 12px !important;
    padding-bottom: 5px !important;
}
.cds-messenger-nav-bottom .wvs-sidebar-nav-item {
border-left: none !important;
}
@media (max-width:1023px) {
.wvs-sidebar-nav-item.selected::before {
display: none;
}
}

/* ==== 30-shell/tabs.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css에서 이전됨) */
.nav-content {
color: var(--cds-dark-color, #161616) !important;
    border-bottom: 1px solid var( --cds-border-subtle-01, #e0e0e0) !important;
}
.nav-content-title {
font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
    cursor: default;
}
.nav-item .nav-link:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
        color: var(--cds-text-primary, #161616);
        font-weight: 400 !important;
}
.nav-item a.active {
background-color: var(--cds-background-active, #8d8d8d40) !important;
    color: var(--cds-text-primary, #161616) !important;
    font-weight: 600;
    position: relative;
}
.nav-item a.active:hover {
font-weight: 600 !important;
}

/* ==== 30-shell/layout.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.foundation.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.surface.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.rw-bridge.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.legacy.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.sample.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.cds-notab-mode {
--content-height: calc(100vh - 48px);
}
.cds-nt-1 {
margin-top: -1px !important;
}
.wvs-row {
display: flex;
    flex-wrap: wrap;
    margin-left: calc(var(--wvs-gutter) / -2);
    margin-right: calc(var(--wvs-gutter) / -2);
}
.wvs-row-no-gutter {
margin-left: 0;
    margin-right: 0;
}
.wvs-col-1 {
flex: 0 0 auto;
    width: calc(1 / 4 * 100%);
}
.wvs-col-2 {
flex: 0 0 auto;
    width: calc(2 / 4 * 100%);
}
.wvs-col-4 {
flex: 0 0 auto;
    width: 100%;
}
/* wvs-col-md-1~16: 672px 이상 태블릿 단계 16분할(legacy foundation.css 의 r30346 추가분과 동일 - v2 이전 시 누락) */
@media (min-width: 672px) {
.wvs-col-md-1 {
flex: 0 0 auto;
    width: calc(1 / 16 * 100%);
}
.wvs-col-md-2 {
flex: 0 0 auto;
    width: calc(2 / 16 * 100%);
}
.wvs-col-md-3 {
flex: 0 0 auto;
    width: calc(3 / 16 * 100%);
}
.wvs-col-md-4 {
flex: 0 0 auto;
    width: calc(4 / 16 * 100%);
}
.wvs-col-md-5 {
flex: 0 0 auto;
    width: calc(5 / 16 * 100%);
}
.wvs-col-md-6 {
flex: 0 0 auto;
    width: calc(6 / 16 * 100%);
}
.wvs-col-md-7 {
flex: 0 0 auto;
    width: calc(7 / 16 * 100%);
}
.wvs-col-md-8 {
flex: 0 0 auto;
    width: calc(8 / 16 * 100%);
}
.wvs-col-md-9 {
flex: 0 0 auto;
    width: calc(9 / 16 * 100%);
}
.wvs-col-md-10 {
flex: 0 0 auto;
    width: calc(10 / 16 * 100%);
}
.wvs-col-md-11 {
flex: 0 0 auto;
    width: calc(11 / 16 * 100%);
}
.wvs-col-md-12 {
flex: 0 0 auto;
    width: calc(12 / 16 * 100%);
}
.wvs-col-md-13 {
flex: 0 0 auto;
    width: calc(13 / 16 * 100%);
}
.wvs-col-md-14 {
flex: 0 0 auto;
    width: calc(14 / 16 * 100%);
}
.wvs-col-md-15 {
flex: 0 0 auto;
    width: calc(15 / 16 * 100%);
}
.wvs-col-md-16 {
flex: 0 0 auto;
    width: calc(16 / 16 * 100%);
}
}
@media (min-width: 1024px) {
.wvs-col-lg-2 {
flex: 0 0 auto;
        width: calc(2 / 16 * 100%);
}
}
@media (min-width: 1024px) {
.wvs-col-lg-3 {
flex: 0 0 auto;
        width: calc(3 / 16 * 100%);
}
}
@media (min-width: 1024px) {
.wvs-col-lg-4 {
flex: 0 0 auto;
        width: calc(4 / 16 * 100%);
}
}
@media (min-width: 1024px) {
.wvs-col-lg-5 {
flex: 0 0 auto;
        width: calc(5 / 16 * 100%);
}
}
@media (min-width: 1024px) {
.wvs-col-lg-6 {
flex: 0 0 auto;
        width: calc(6 / 16 * 100%);
}
}
@media (min-width: 1024px) {
.wvs-col-lg-8 {
flex: 0 0 auto;
        width: calc(8 / 16 * 100%);
}
}
@media (min-width: 1024px) {
.wvs-col-lg-10 {
flex: 0 0 auto;
        width: calc(10 / 16 * 100%);
}
}
@media (min-width: 1024px) {
.wvs-col-lg-11 {
flex: 0 0 auto;
        width: calc(11 / 16 * 100%);
}
}
@media (min-width: 1024px) {
.wvs-col-lg-12 {
flex: 0 0 auto;
        width: calc(12 / 16 * 100%);
}
}
@media (min-width: 1024px) {
.wvs-col-lg-13 {
flex: 0 0 auto;
        width: calc(13 / 16 * 100%);
}
}
@media (min-width: 1024px) {
.wvs-col-lg-15 {
flex: 0 0 auto;
        width: calc(15 / 16 * 100%);
}
}
@media (min-width: 1024px) {
.wvs-col-lg-16 {
flex: 0 0 auto;
        width: 100%;
}
}
.wvs-mt-2 {
margin-top: 16px;
}
.wvs-mb-2 {
margin-bottom: 16px;
}
.wvs-mb-3 {
margin-bottom: 24px;
}
.wvs-mb-4 {
margin-bottom: 32px;
}
.wvs-hamburger {
display: flex;
    width: 48px;
    height: 48px;
    background: transparent;
    border: none;
    padding: 12px;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    /*margin-right: 16px;*/
}
.wvs-hamburger:hover {
background: #8d8d8d29;
}
.wvs-hamburger:focus {
outline: 2px solid #ffffff !important;
        outline-offset: -2px;
}
.wvs-hamburger-icon {
display: block;
    width: 20px;
    height: 2px;
    background: #f4f4f4;
    position: relative;
}
.wvs-hamburger-icon::before,
    .wvs-hamburger-icon::after {
content: '';
        position: absolute;
        width: 20px;
        height: 2px;
        background: #f4f4f4;
        left: 0;
}
.wvs-hamburger-icon::before {
top: -6px;
}
.wvs-hamburger-icon::after {
top: 6px;
}
.wvs-popover-accordion .accordion-menu:hover {
background-color: #8d8d8d29;
}
.wvs-popover-accordion .accordion-menu:focus,
    .wvs-popover-accordion .accordion-menu:active {
outline: 2px solid #ffffff;
        outline-offset: -2px;
}
.wvs-content {
padding-top: 48px;
    margin-left: 171px;
    height: 100%;
    max-height: calc(100vh - 48px);
    /*    background-color: blue !important;*/
    transition: margin-left 0.3s cubic-bezier(0.2, 0, 0.38, 0.9);
    background: var(--cds-field-01, #f4f4f4);
    box-sizing: content-box;
}
@media (max-width: 1023px) {
.wvs-content {
margin-left: 0;
}
}
.wvs-panel-header {
display: flex;
    align-items: center;
    padding: 16px;
    border-bottom: 1px solid #e0e0e0;
    background: #ffffff;
    min-height: 48px;
}
.wvs-panel-title {
font-size: 1rem;
    font-weight: 600;
    margin: 0;
    color: #161616;
    flex: 1;
}
.wvs-btn-back {
width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: none;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    font-size: 1.5rem;
    margin-right: 12px;
    color: #161616;
}
.wvs-btn-back:hover {
background: #f4f4f4;
}
.wvs-list-panel {
flex: 0 0 400px;
    display: flex;
    flex-direction: column;
    background: #ffffff;
    overflow: hidden;
}
.wvs-list-content {
flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
}
.wvs-viewer-panel {
flex: 1;
    display: flex;
    flex-direction: column;
    background: #ffffff;
    overflow: hidden;
}
.wvs-viewer-content {
flex: 1;
    overflow-y: auto;
}
.wvs-viewer-overlay {
display: none;
    position: fixed;
    top: 48px;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 499;
}
@media (max-width: 1023px) {
.wvs-list-viewer {
flex-direction: column;
}
}
@media (max-width: 1023px) {
.wvs-list-panel {
flex: 1 1 auto;
}
}
@media (max-width: 1023px) {
.wvs-viewer-panel {
position: fixed;
        top: 48px;
        right: 0;
        bottom: 0;
        width: 100%;
        z-index: 500;
        transform: translateX(100%);
        transition: transform 0.3s cubic-bezier(0.2, 0, 0.38, 0.9);
        box-shadow: -2px 0 8px rgba(0, 0, 0, 0.15);
}
}
@media (max-width: 1023px) {
.wvs-viewer-panel.open {
transform: translateX(0);
}
}
@media (max-width: 1023px) {
.wvs-btn-back {
display: flex;
}
}
@media (min-width: 768px) and (max-width: 1023px) {
.wvs-viewer-panel {
width: 80%;
        max-width: 600px;
}
}
@media (max-width: 1023px) {
.cds-rw-window {
width: 950% !important;
        max-width: 95% !important;
}
}
@media (min-width: 768px) and (max-width: 1023px) {
.cds-rw-window {
width: var(--rw-viewer-width, 80%) !important;
        max-width: var(--rw-viewer-max-width, 600px) !important;
}
}
.cds-content-body {
/* 카본에서는 본문 컨텐츠가 720px으로 되어야 한다  */
    max-width: 720px;
}
.cds-row-gap {
row-gap: 16px;
}
.cds-mw-760px {
max-width: 760px !important;
}
.cds-focus {
outline: 2px solid var(--cds-focus);
    outline-offset: -2px;
}
.cds-v-border {
width: 1px;
    height: 100%;
    align-self: center;
    margin: 0 12px;
    background-color: var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-background {
/* 다크모드 #161616 */
    background-color: var(--cds-field-01, #f4f4f4) !important;
}
.cds-danger {
color: var(--cds-text-error, #da1e28) !important;
}
.cds-link {
cursor: pointer;
}
.cds-link:hover {
color: var(--cds-link-primary-hover, #0043ce);
        text-decoration: underline;
}
.cds-link:focus, .cds-link:active {
outline: 2px solid var(--cds-focus, #0f62fe);
        outline-offset: -2px;
}
.cds-primary {
background-color: var(--cds-primary, #0f62fe) !important;
}
.cds-red {
background-color: var(--cds-support-error, #da1e28) !important;
}
.cds-green {
background-color: var(--cds-support-success, #24a148) !important;
}
.cds-yellow {
background-color: var(--cds-support-warning, #f1c21b) !important;
}
.cds-blue {
background-color: var(--cds-support-info, #0043CE) !important;
}
.cds-orange {
background-color: var(--cds-support-caution, #ff832b) !important;
}
.cds-purple {
background-color: var( --cds-support-undefined, #8a3ffc) !important;
}
.cds-gray {
background-color: var(--cds-tag-bg-gray, #E0E0E0) !important;
}
@media( max-width: 1279px) {
.cds-dm-d-none {
display: none !important;
}
}
.cds-sub-title {
color: var(--cds-text-helper, #6f6f6f);
}
.cds-filter-label {
/*display: inline-block;*/
    display: flex;
    min-width: 80px;
    font-size: 12px;
    font-weight: 400;
    padding-left:16px; /* 타이틀 라인과 여백 맞춤 */
    color: var(--cds-text-secondary, #525252);
    cursor: default;
}
.cds-main-btn-normal, .cds-main-btn-primary, .cds-main-btn-danger {
height: 50px;
    border: 1px solid transparent;
    border-top: 1px solid var(--bs-gray-300);
}
.cds-main-btn-primary {
background-color: var(--cds-primary);
}
.cds-main-btn-danger {
background-color: var(--cds-button-danger-primary);
}
.cds-grid-toolbar-wrap {
display: flex;
    position: relative;
    align-items: center;
    background-color: var(--cds-rw-ctrl-bg) !important;
}
.cds-left-icon {
vertical-align: top;
    margin-right: 8px;
}
.cds-icon-only-btn:focus, .cds-icon-only-btn:focus-visible {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px !important;
        /*        box-shadow: inset 0 0 0 1px var(--cds-focus, #0f62fe),inset 0 0 0 2px var(--cds-white-color, #FFFFFF);*/
}
.cds-rw-window {
min-width: 350px;
    position: fixed;
    /*
    트랜스폼을 쓰면 모달위에서 fixed 사용하는 컴퍼넌트 위치가 문제가 생김.
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    */
}
.cds-top-btn {
display: flex;
    /*    margin-right: -16px !important;*/
}
.cds-user-img-input {
border: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-user-img-wrap .cds-user-file-label {
color: var(--cds-text-secondary, #525252);
}
.cds-empty-state {
text-align: left;
    color: var(--cds-text-primary, #161616);
    padding: 32px !important;
}
.cds-empty-state-header {
font-size: 20px;
}
.cds-empty-state-subtitle {
font-size: 14px;
}
.carbon-icon:hover {
opacity: 1 !important;
}
.carbon-checkbox:checked {
background-color: var(--cds-dark-color, #161616) !important;
        position: relative !important;
}
.carbon-checkbox:checked::before {
block-size: 5px; /*.3125rem;*/
            border-block-end: 1.5px solid var(--cds-white-color, #FFFFFF);
            border-inline-start: 1.5px solid var(--cds-white-color, #FFFFFF);
            content: "";
            inline-size: 8.5px; /*.5rem*/
            inset-block-start: 2px; /*.2rem;*/
            inset-inline-start: 3.5px; /*.25rem;*/
            margin-block-start: -2px; /*-.1875rem*/
            position: absolute;
            transform: scale(1) rotate(-45deg);
            transform-origin: bottom right;
}
.carbon-checkbox:focus {
outline: none;
        box-shadow: 0 0 0 2px var(--cds-focus, #0f62fe);
}
.carbon-checkbox:disabled {
background-color: #f2f2f2;
        border-color: #d9d9d9;
        color: var(--cds-text-disabled, #16161625) !important;
        cursor: not-allowed;
        opacity: 0.3;
}
.carbon-radio {
appearance: none;
    border: 1px solid var(--cds-dark-color, #161616) !important;
    border-radius: 50%;
    background-color: rgba(0, 0, 0, 0) !important;
    position: relative;
    width: 17.5px !important;
    height: 17.5px !important;
    margin-block: 1.25px !important;
    /*    margin-inline: 0px 8px !important;*/
    cursor: pointer;
    transition: border 0.1s ease-in-out;
}
.carbon-radio:checked {
border-color: var(--cds-dark-color, #161616);
}
.carbon-radio:checked::after {
content: "";
            position: absolute;
            top: 4px;
            left: 4px;
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background-color: var(--cds-dark-color, #161616);
}
.carbon-radio:focus {
outline: 2px solid var(--cds-focus,#0f62fe);
        outline-offset: 1px;
}
.carbon-radio:disabled {
/*        border-color: #d9d9d9 !important;*/
        opacity: 0.25;
        cursor: not-allowed !important;
}
.carbon-radio:disabled + .carbon-radio-label {
color: var(--cds-text-disabled, #16161625) !important;
}
.carbon-radio-label {
color: var(--cds-text-primary, #161616) !important;
    margin-right: 16px;
    white-space: nowrap;
}
.carbon-item {
color: var(--cds-text-secondary, #525252);
line-height: 28px;
}
.carbon-item:focus {
/*        border: 2px solid var(--cds-focus,#0f62fe) !important;*/
        outline: 2px solid var(--cds-focus,#0f62fe);
        outline-offset: -2px;
}
.carbon-item.selected {
/*        border: 1px solid var(--cds-focus,#0f62fe);
        color: #fff;*/
        outline: 2px solid var(--cds-focus,#0f62fe);
        outline-offset: -2px;
}
.carbon-switch-small {
width: 32px !important;
    height: 12px !important;
    margin-right: -19px !important;
}
.cds-sign-point, .cds-sign-point a {
color: var(--cds-link-primary, #0f62fe);
}
.cds-dashboard-label {
color: var(--cds-text-primary, #161616);
    font-size: 14px;
}
.cds-dashboard-data {
color: var(--cds-text-primary, #161616);
    font-size: 32px;
    font-weight: 500;
    text-align: right;
}
.cds-dashboard-bottom-label {
color: var(--cds-text-primary, #161616);
    font-size: 12px;
}
.cds-dashboard-bottom-label .cds-dashboard-label {
color: var(--cds-text-secondary, #525252);
}
.cds-dashboard-top-data {
color: var(--cds-text-primary, #161616);
    font-size: 24px;
    font-weight: 500;
}
.cds-page-title {
padding-left: 16px;
    padding-top: 8px;
    font-size: 14px;
    font-weight: 500;
}
.cds-page-sub-title {
padding-top: 4px;
    padding-left: 16px;
    padding-bottom: 8px;
    font-size: 12px;
    font-weight: 300;
    color: var(--cds-text-secondary, #525252);
}
.cds-dh-1 {
padding: 12px !important;
    height: 50px;
    font-size: 14px;
}
.cds-dh-2 {
font-size: 14px;
    font-weight: 500;
    height: 50px;
    overflow:hidden;
    display:flex;
    align-items:center;
    padding-left:16px;
}
.cds-dh-0 {
font-size: 16px;
    font-weight: 500;
    height: 50px;
    overflow: hidden;
    display: flex;
    align-items: center;
}
.cds-dhw-2 {
font-size: 14px;
    font-weight: 500;
    padding: 16px !important;
    height: 50px;
}
.cds-page {
background-color: var(--cds-field-01);
}
.cds-cht-2 {
display: flex;
    justify-content: end;
    padding: 0 !important;
    align-items: center;
}
.cds-cht-2-btn {
height : 100%;
    padding: 8px 16px;
}
.cds-rw-grid-root {
border: 1px solid var(--cds-gray-200);
    container-type: inline-size;
}
.cds-filter-container {
/*    height: 50px;*/
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-row-rwgrid:active,
.cds-row-rwgrid:focus {
outline: 2px solid var(--cds-focus, #0f62fe);
    outline-offset: -2px;
}
.cds-icon-only-btn {
display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background-color: transparent !important;
    color: var(--cds-icon-primary, #161616);
    cursor: pointer;
    transition: background-color 120ms cubic-bezier(0.2, 0, 0.38, 0.9), color 120ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.cds-icon-nav-btn {
display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    min-width: 2rem;
    height: 2rem;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #fff;
    cursor: pointer;
    transition: background-color 120ms cubic-bezier(0.2, 0, 0.38, 0.9), color 120ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.cds-icon-only-btn:focus-visible {
outline: 2px solid var(--cds-focus, #0f62fe);
    outline-offset: 2px;
}
.cds-icon-only-btn--sm {
width: 1.75rem;
    min-width: 1.75rem;
    height: 1.75rem;
}
.cds-icon-only-btn--ghost {
background: transparent;
    color: var(--cds-icon-secondary, #525252);
}
.cds-icon-only-btn--ghost:hover {
background: var(--cds-layer-hover, #e8e8e8);
    color: var(--cds-text-primary, #161616);
}
.cds-user-profile {
color: var(--cds-text-primary, #161616);
    font-size: 16px;
}
.cds-user-info {
color: var(--cds-text-primary, #161616);
}
.cds-user-name {
padding-top: 8px;
}
.cds-user-email {
font-size: 14px;
}
.cds-timeline {
color: var(--cds-text-primary, #161616);
}
.cds-timeline-time {
position: relative;
    margin: 20px auto 17px;
}
.cds-timeline-time::after {
content: '';
        position: absolute;
        left: 16px;
        top: 27px;
        bottom: -27px;
        width: 1px;
        background: var(--cds-layer-selected, #e0e0e0);
}
.cds-timeline .cds-timeline-item:last-child .cds-timeline-time::after {
display: none;
}
.cds-timeline-content {
min-width: 80%;
    /*    background-color: var(--cds-field);
    cursor: pointer;
    outline: 2px solid transparent;
    color: var(--cds-text-secondary);*/
}
.cds-timeline-text {
font-size: 14px;
    padding-left: 12px;
}
.cds-timeline-info-title {
padding-left: 12px;
    font-size: 16px;
    font-weight: 600;
}
.cds-timeline-info-time {
color: var(--cds-text-primary, #161616);
}
.cds-message {
color: var(--cds-text-primary, #161616);
}
.cds-message li {
line-height: 24px;
}
.cds-comment-symbol img {
display: inline-block;
        width: 100%;
        height: 100%;
}
.cds-workload-symbol img {
display: inline-block;
        width: 100%;
        height: 100%;
}
.cds-default-tab-list {
display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    background: var(--cds-layer-selected, #e0e0e0);
    /*    border-bottom: 1px solid #c6c6c6;*/
    overflow-x: auto;
    scrollbar-width: none;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none; /* IE, Edge */
    scrollbar-width: none; /* Firefox */
}
.cds-default-tab-list::-webkit-scrollbar {
display: none;
}
@media (max-width:760px) {
.cds-default-tab-list {
display: flex !important;
        flex-wrap: wrap !important;
        white-space: normal !important;
        overflow-x: visible !important;
        height: auto !important;
}
}
@media (max-width:760px) {
.cds-default-tab-list li {
flex: 0 0 auto !important;
            width: auto !important;
}
}
.carbon-dropdown-button {
background-color: var(--carbon-textbox-bg, #F4F4F4) !important;
    border: 0px solid black !important;
}
.cds-task-wrap {
display: flex;
    gap: 8px;
}
@media (max-width: 671px) {
.cds-task-wrap {
display: flex;
        gap: 0;
}
}
@media (max-width: 671px) {
.carbon-radio-label {
margin-right: 0;
}
}
.carbon-item-container.selected {
border: 1px solid var(--border-primary-color);
}
.carbon-item-container:focus {
border: 2px solid var(--border-primary-color) !important;
}
.carbon-item-container:focus-within {
border-color: var(--border-primary-color);
        outline: none;
}
.carbon-item {
background-color: var(--carbon-textbox-bg, #F4F4F4) !important;
    padding: 3px 10px;
    height: 26px;
    min-height: 26px;
    font-size: 12px;
    font-weight: 400;
}
.carbon-item:hover {
background-color: var(--carbon-combobox-bg) !important;
        color: #fff;
}
.carbon-item:focus {
border: 2px solid var(--border-primary-color) !important;
}
.carbon-item.selected {
border: 1px solid var(--border-primary-color);
        color: #fff;
}
.carbon-item:focus-within {
border-color: var(--border-primary-color);
        outline: none;
}
.carbon-autocompleted {
background-color: var(--carbon-textbox-bg, #F4F4F4) !important; /* 해당 소스 주석 시 초기 랜더링 됨.*/
    border: none !important;
    border-bottom: 1px solid var(--carbon-textbox-border-bottom, #8d8d8d) !important;
    color: var(--carbon-dark-color);
}
.carbon-autocompleted:focus {
border: 2px solid var(--border-primary-color) !important;
}
.carbon-autocompleted.disabled {
background-color: var(--white-color, #FFFFFF) !important;
        border-bottom: 1px solid var(--carbon-textbox-border-bottom-readonly, #e7e7e7) !important;
}
.carbon-autocompleted li:hover {
background-color: var(--carbon-combobox-bg) !important;
        color: var(--white-color);
}
.carbon-autocompleted-border {
border: 0px solid #fff;
}
.carbon-autocompleted-border:focus-within {
border: 2px solid var(--border-primary-color) !important;
}
.cds-stc-title {
font-size: 12px;
}
.cds-ccx-0 {
padding: 0px;
}
.cds-ccx-2 {
padding-left: 16px;
    padding-right: 16px;
}
.cds-ccxb-2 {
padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 16px;
}
.cds-cc-border-top {
border-top: 1px solid var(--cds-gray-300);
}
.cds-cc-border-bottom {
border-bottom: 1px solid var(--cds-gray-300);
}
.cds-cct-2 {
padding-top: 16px;
}
.cds-cc-0 {
padding: 0px !important;
}
.cds-cc-1 {
padding: 12px;
}
.cds-cc-2 {
padding: 16px;
}
.cds-cc-3 {
padding: 24px;
}
.cds-cc-4 {
padding: 32px;
}
.cds-cc-5 {
padding: 40px;
}
.mail-container .cds-content-body {
/*    max-width: 820px;*/
    width: 100%;
    max-width: 920px;
}
@media (prefers-reduced-motion: reduce) {
.cds-motion, .cds-page-motion, .cds-motion-enter, .cds-motion-dock-enter, :is(.dock-wpanel, .dock-vpanel).cds-motion
        > :is(.dock-top, .dock-bottom, .dock-left, .dock-right, .dock-content), .cds-page-motion :is(.dock-wpanel, .dock-vpanel)
        > :is(.dock-top, .dock-bottom, .dock-left, .dock-right, .dock-content), :is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter
        > :is(.dock-top, .dock-bottom, .dock-left, .dock-right, .dock-content) {
animation: none !important;
        transform: none !important;
}
}
.cds-copilot-echo .blockquote p {
margin-bottom: 0 !important;
}
.cds-copilot-echo .request-content input::placeholder {
font-size: 14px;
}
.cds-file-container {
display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5px;
    width: 100%;
}
@media (max-width: 1200px) {
.cds-file-containercds-file-container {
grid-template-columns: 1fr;
        /* [] 형태 (한 줄에 하나씩) */
}
}
/* bump: 순서 의존 해소 (vs .rwgrid .header-container) */
.wvs-hover-edit .cds-icon-only-btn.cds-icon-only-btn {
display: none !important;
}
.wvs-hover-edit:hover .cds-icon-only-btn {
display: flex !important;
}
.company-container .cds-grid-container {
max-height: 1800px !important;
    /*730px !important;*/
}
.cds-company-profile .cds-company-img-input {
overflow: hidden;
}
.cds-company-profile .cds-company-img-input img {
max-width: 80%;
    max-height: 80%;
    object-fit: contain;
}
.cds-company-profile .cds-company-name {
font-size: 16px;
    font-weight: 600;
}
.cds-contact-avatar {
color: var(--cds-field-02, #e0e0e0);
}
.cds-contact-avatar img {
width: 100%;
    height: 100%;
    object-fit: cover;
    /* 이미지 비율 유지하면서 꽉 채움 */
}
@media (max-width: 760px) {
.cds-company-profile .cds-company-img-input img {
max-width: 40%;
        max-height: 40%;
        object-fit: contain;
}
}
.cds-contact-card {
display: block;
    width: 100%;
    min-width: 200px;
    padding: 8px 12px;
    border: none;
    background-color: var(--cds-field-02, #ffffff);
    text-align: left;
    font-family: inherit;
    font-size: inherit;
    padding: 8px 12px;
    border-radius: 0px !important;
    cursor: pointer;
    margin-bottom: 0px;
    position: relative;
}
.cds-contact-card:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
}
.cds-contact-card:focus,
.cds-contact-card:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px !important;
    transition: none !important;
}
.cds-project-card {
display: block;
    width: 100%;
    padding: 8px 12px;
    border: none;
    background-color: var(--cds-field-03, #f4f4f4);
    text-align: left;
    font-family: inherit;
    font-size: inherit;
    padding: 8px 12px;
    border-radius: 0px !important;
    cursor: pointer;
    margin-bottom: 0px;
    position: relative;
}
.cds-project-card:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
}
.cds-project-card:focus,
.cds-project-card:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px !important;
    transition: none !important;
}
.contact-container .cds-user-profile .cds-user-img-input {
border: none !important;
}
.cds-user-profile .cds-user-name {
font-size: 16px;
    font-weight: 600;
}
.cds-user-profile .cds-user-company,
.cds-user-profile .cds-user-rank {
font-size: 14px;
}
.cds-user-profile .cds-user-company {
color: var(--cds-link-primary, #0f62fe);
    cursor: pointer;
    font-weight: 500;
}
.cds-timeline-card {
display: block;
    width: 100%;
    padding: 8px 12px;
    border: none;
    /*    background-color: var(--cds-field-03, #f4f4f4);*/
    background-color: var(--cds-field-02, #ffffff);
    color: var(--cds-text-primary, #161616);
    text-align: left;
    font-size: 12px;
    padding: 8px 12px;
    border-radius: 0px !important;
    cursor: pointer;
    margin-bottom: 0px;
    position: relative;
}
.cds-timeline-card:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
}
.cds-timeline-card:focus,
.cds-timeline-card:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px !important;
    transition: none !important;
}
.cds-task-card {
display: block;
    width: 100%;
    padding: 8px 12px;
    border: none;
    background-color: var(--cds-field-02, #ffffff);
    color: var(--cds-text-primary, #161616);
    text-align: left;
    font-size: 12px;
    padding: 8px 12px;
    border-radius: 0px !important;
    cursor: pointer;
    margin-bottom: 0px;
    position: relative;
}
.cds-task-card:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
}
.cds-task-card:focus,
.cds-task-card:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px !important;
    transition: none !important;
}
.teams-card:active:has(.teams-menu-tool .cds-icon-only-btn:focus) {
outline: 0px !important;
    outline-offset: 0 !important;
}
.cds-user-img-wrap .image-input.image-input-outline .image-input-wrapper {
border: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    box-shadow: none !important;
    border-radius: 0 !important;
}
.cds-top-title {
font-size: 14px;
    white-space: nowrap;
    font-weight: 500;
    color: var(--cds-text-primary, #161616);
}
.cds-chtc-2 {
display: flex;
    align-items:center;
    padding: 16px;
}
.cds-chtc-title {
font-size: 14px;
    white-space: nowrap;
    font-weight: 500;
    color: var(--cds-text-primary, #161616);
}
.cds-category-tag {
border: 1px solid var(--cds-support-info, #0043ce);
    color: var(--cds-support-info, #0043ce);
    font-size: 10px !important;
    padding: 2px 5px !important;
}
.cds-provider-tag {
border: 1px solid var(--cds-support-success, #24a148);
    color: var(--cds-support-success, #24a148);
    font-size: 10px !important;
    padding: 2px 5px !important;
}
.cds-wavedesk-icon {
mask-image: url(/lib/svg/wavedesk-icon.svg);
    -webkit-mask-image: url(/lib/svg/wavedesk-icon.svg);
}
.cds-link {
color: var(--cds-link-primary, #0f62fe);
}
.cds-messenger-nav {
background-color: var(--cds-white-color, #FFFFFF);
}
.cds-messenger-nav-bottom {
max-width: 760px;
    display: none;
    background-color: var(--cds-field-01, #f4f4f4);
}
@media (max-width:1023px) {
.cds-messenger-nav {
display: none;
}
}
@media (max-width:1023px) {
.cds-messenger-nav-bottom {
width: 100%;
        /*        height: 82px;*/
        display: flex;
        flex-direction: row;
}
}
.cds-member-avatar {
color: var(--cds-border-subtle-01, #e0e0e0);
    display: flex;
    justify-content: center;
}
.cds-member-name {
font-size: 14px;
    font-weight: 600;
}
.cds-member-content {
font-size: 12px;
    font-weight: 400;
    color: var(--cds-text-secondary, #525252);
}
.cds-member-tool {
position: absolute;
    top: 0;
    right: 0;
    display: flex;
}
.cds-chat-content {
text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}
.cds-invite-team {
height: 220px;
}
.cds-invite-list {
height: 230px;
}
.cds-invite-list-item:hover {
background-color: var(--cds-background-hover, #8d8d8d30) !important;
}
.cds-two-col {
display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}
.app-title-container {
display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 10px;
}
.app-title-container .token-wrap {
display: flex;
        height: 100%;
        align-items: center;
        font-size: 14px;
        padding-left: 16px;
}
.app-title-container .token-wrap .token-used {
font-weight: bold;
}
.app-title-container .selected-model-wrap {
width: 250px;
        border-left: 1px solid var(--cds-border-subtle-01, #e0e0e0);
        border-right: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.app-title-container .selected-model-wrap:hover {
background-color: var(--cds-layer-hover, #E8E8E8) !important;
}
.app-title-container .selected-model-wrap .selected-model {
margin-right: 8px;
}
.app-title-container .selected-model-wrap .selected-model-title {
font-size: 14px;
}
.app-title-container .selected-model-wrap .selected-model-name {
font-size: 11px;
            color: var(--cds-link-secondary, #0043CE);
}
.app-title-container .selected-model-wrap .selected-model-subtitle {
font-size: 11px;
            color: var(--cds-text-secondary, #525252);
}
@media (max-width:1023px) {
.app-title-container .token-wrap {
font-size: 12px !important;
        padding-left: 0 !important;
        padding-right: 4px !important;
}
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--attachment {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/attachment.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/attachment.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--at {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/at.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/at.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--text--font {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/text--font.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/text--font.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--heading {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/heading.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/heading.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--text--bold {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/text--bold.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/text--bold.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--text--italic {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/text--italic.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/text--italic.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--text--underline {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/text--underline.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/text--underline.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--text--strikethrough {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/text--strikethrough.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/text--strikethrough.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--code {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/code.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/code.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--link {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/link.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/link.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--list--bulleted {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/list--bulleted.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/list--bulleted.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--list--numbered {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/list--numbered.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/list--numbered.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--quotes {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/quotes.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/quotes.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--code-block {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/code-block.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/code-block.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--table {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/table.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/table.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--document--blank {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/document--blank.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/document--blank.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--task {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/task.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/task.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--chat {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/chat.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/chat.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--reply {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/reply.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/reply.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--checkmark--filled {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/checkmark--filled.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/checkmark--filled.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--warning {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/warning.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/warning.svg");
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.wave-carbon-icon.wave-carbon-icon.carbon-icon--reset {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/reset.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/reset.svg");
}
.ticket-inline-select-control .cds-inline-edit-surface {
width: calc(100% + 16px);
    height: 32px;
    min-height: 32px;
    padding: 0 8px;
    margin: 0 -8px;
    border-radius: 4px;
}
.cds-inline-edit-surface:hover:not(:disabled) {
background: var(--cds-layer-hover-01);
    border-color: var(--cds-border-subtle-01, #e0e0e0);
    transition-delay: 1000ms;
}
.cds-inline-edit-surface:focus-visible {
border-color: var(--cds-focus);
    outline: 2px solid var(--cds-focus);
    outline-offset: -2px;
    transition-delay: 0ms;
}
.cds-inline-edit-surface:disabled {
cursor: default;
}
.cds-inline-edit-surface:disabled:hover {
background: transparent;
    border-color: transparent;
}
.ticket-status-control .cds-inline-edit-surface:hover:not(:disabled) .ticket-status-control__chevron,
.ticket-status-control .cds-inline-edit-surface:focus-visible .ticket-status-control__chevron,
.ticket-status-control .cds-inline-edit-surface[aria-expanded="true"] .ticket-status-control__chevron {
opacity: 1;
}
[data-rw-route-restored="true"] .cds-motion, [data-rw-route-restored="true"] .cds-motion-enter, [data-rw-route-restored="true"] .cds-motion-dock-enter, [data-rw-route-restored="true"] .cds-motion-chain > *, [data-rw-route-restored="true"] .cds-motion-chain > * > * > .cds-motion-enter, [data-rw-route-restored="true"] .rw-data-row, [data-rw-route-restored="true"] .rw-row-detail-row, [data-rw-route-restored="true"] .cds-list-item {
animation: none !important;
}
.cds-project-identity-stacked {
min-width: 0;
}
.cds-project-identity-stacked > span {
width: 100%;
}
.cds-pre-line {
white-space: pre-line;
    overflow-wrap: anywhere;
}

/* ==== 30-shell/shell.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.cds-switcher-wrap {
display: flex;
    height: 100%;
}
.cds-switcher-item {
position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: start;
    gap: 6px; /* 아이콘 + 텍스트 간격 */
    padding: 0 16px;
    height: 32px;
    background-color: transparent;
    border: none;
    border-block: 1px solid var(--cds-border-inverse, #161616);
    outline: 2px solid transparent;
    outline-offset: -2px;
    cursor: pointer;
    white-space: nowrap;
    font-size: 14px;
    color: var(--cds-text-secondary, #525252);
    box-shadow: inset -1px 0 0 0 var(--cds-border-inverse, #161616);
}
.cds-switcher-item:first-child {
border-start-start-radius: 4px;
        border-end-start-radius: 4px;
        box-shadow: inset 1px 0 0 0 var(--cds-border-inverse, #161616), inset -1px 0 0 0 var(--cds-border-inverse, #161616);
}
.cds-switcher-item:last-child {
border-start-end-radius: 4px;
        border-end-end-radius: 4px;
/*        border-inline-end: 1px solid var(--cds-border-inverse, #161616);*/
}
.cds-switcher-item.is-selected {
background-color: var(--cds-dark-color, #161616) !important;
        color: var(--cds-text-inverse, #ffffff);
        box-shadow: inset -1px 0 0 0 var(--cds-border-inverse, #161616);
}
.cds-switcher-item:first-child.is-selected {
box-shadow: inset 1px 0 0 0 var(--cds-border-inverse, #161616), inset -1px 0 0 0 var(--cds-border-inverse, #161616);
}
.cds-switcher-item:not(.is-selected):hover {
background-color: var(--cds-background-hover, #e8e8e8);
        color: var(--cds-text-primary, #161616);
}
.cds-switcher-item:focus {
outline: 2px solid var(--cds-focus, #0f62fe);
        outline-offset: -2px;
}
.optimizer-container .cds-switcher-item {
box-shadow: inset -1px 0 0 0 var(--cds-border-inverse, #161616), inset 1px 0 0 0 var(--cds-border-inverse, #161616) !important;
}
.optimizer-container .cds-switcher-item:first-child {
border-start-start-radius: 0 !important;
        border-end-start-radius: 0 !important;
        border-inline-end: 0 !important;
}
.optimizer-container .cds-switcher-item:not(.is-selected), .optimizer-container .cds-switcher-item:last-child {
border-start-end-radius: 0 !important;
        border-end-end-radius: 0 !important;
        border-inline-end: 0 !important;
}

/* ==== 40-components/rx-autocomplete.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.rw-bridge.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.legacy.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.autocomplete-items {
background-color: var(--bs-body-bg);
    position: absolute;
    border: 1px solid rgba(var(--bs-gray-500-rgb), 0.8);
    z-index: 99;
    top: 100%;
    left: -1px;
    right: 0;
    overflow-y: scroll;
    height: auto;
    max-height: 180px;
    min-width: 130px;
}
.autocomplete-items div {
font-size: 11.4px !important;
        padding: 5px 5px 5px 5px;
        cursor: pointer;
        border-left: 0px solid rgba(var(--bs-gray-400-rgb), 0.8);
        border-right: 1px solid rgba(var(--bs-gray-400-rgb), 0.8);
        border-bottom: 1px solid rgba(var(--bs-gray-400-rgb), 0.8);
        overflow: hidden;
        text-overflow: ellipsis;
        height: 30px;
}
.autocomplete-items div:first-child {
border-top: 0px solid rgba(var(--bs-gray-400-rgb), 0.8);
}
.autocomplete-items div:last-child {
border-bottom: 0px solid rgba(var(--bs-gray-400-rgb), 0.8);
}
.autocomplete-items div:hover {
background-color: #e9e9e9;
}
.autocomplete-active {
background-color: DodgerBlue !important;
    color: #ffffff;
}
.autocomplete-container .input-container {
position: relative;
        width: 100%;
}
.autocomplete-container .autocomplete-input::placeholder {
/*            color: var(--bs-gray-500);*/
            color: var(--cds-text-placeholder, #a8a8a8);
            font-family: var(--ww-font-ibm-sans-kr);
            font-size: 12px;
            font-weight: 400;
}
.autocomplete-container .autocomplete-input:focus::placeholder {
color: transparent;
}
.autocomplete-container.autocomplete-tagify .autocomplete-input {
background-color: transparent;
}
.autocomplete-container.autocomplete-selector .autocomplete-input {
background-color: transparent;
        height: 26px;
}
.autocomplete-list li {
padding: 8px;
        height:32px;
        align-items:center;
        cursor: pointer;
/*        font-family: 'Pretendard';*/
        font-size: 12px;
        border-left: 2px solid transparent;
        background-color: var(--cds-rw-ctrl-bg);
}
.autocomplete-list li.selected {
/* 2025-04-07 ksh 선택된 항목 색 처리
                background-color: #fafafa;
            */
            background-color: var(--bs-gray-300);
            font-weight: bold; /* 선택된 항목의 글자를 굵게 표시 */
            border-left: 2px solid #000;
}
.autocomplete-list li:hover {
background-color: var(--bs-gray-300);
            font-weight: bold; /* 선택된 항목의 글자를 굵게 표시 */
            border-left: 2px solid #000;
}
.autocomplete-container .tag-text {
text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    width: 100%;
}
.autocomplete-container .tag button {
margin-left: 4px;
    border: none;
    background-color: transparent;
    cursor: pointer;
    color: #000;
}
.autocomplete-container .tag-text {
font-family: var(--ww-font-ibm-sans-kr);
    font-size: 12px;
    font-weight: 400;
}
[data-bs-theme=dark]
    .autocomplete-container .tag button {
color: #fff;
}
.cds-autocomplete-tag .autocomplete-tagify .input-container {
border-bottom: 0 !important;
}
.cds-autocomplete-tag .autocomplete-tagify .autocomplete-list li {
font-size: 12px;
    color: var(--cds-text-primary, #525252);
}
.cds-autocomplete-tag .autocomplete-tagify .input-container:disabled {
background-color: var(--cds-white-color, #FFFFFF) !important;
    border: none !important;
}
.cds-autocomplete-wrap .autocomplete-tagify .autocomplete-list li:hover {
color: var(--cds-text-primary, #161616);
    border-left: 2px solid transparent;
}
.cds-filter-container .autocomplete-container.autocomplete-tagify:hover,
.cds-filter-container .tagify:hover {
--tags-hover-border-color: transparent;
    border: none !important;
}
.cds-filter-container .autocomplete-container.autocomplete-tagify:focus-within,
.cds-filter-container .tagify.tagify--focus {
--tags-focus-border-color: transparent;
    border: none !important;
    box-shadow: none !important;
}
.rxac-portal-host .autocomplete-list:has(> .no-results:only-child) {
overflow: hidden !important;
    max-height: none;
    height: auto;
    min-width: 140px;
}
.rxac-portal-host .autocomplete-list > .no-results {
white-space: nowrap;
}
.autocomplete-tagify .autocomplete-placeholder {
display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 12px;
    color: var(--cds-text-placeholder, #8d8d8d);
    font-size: 14px;
    line-height: 1;
    white-space: nowrap;
}
.autocomplete-container.autocomplete-selector.rw-selector-inline-editor:hover {
background-color: var(--cds-rw-ctrl-bg) !important;
}

/* ==== 40-components/rw-components.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.rw-modal {
position: fixed;
    top: 0;
    left: 0;
    z-index: 1050;
    display: none; /* 초기 상태는 숨김 처리 */
    width: 100%;
    height: 100%;
    overflow: hidden;
    outline: 0;
    background-color: rgba(0, 0, 0, 0.5); /* 반투명 배경 */
}
.rw-modal-dialog {
position: relative;
    width: auto;
    margin: 0.5rem;
    pointer-events: none;
}
.rw-modal-content {
position: relative;
    display: flex;
    flex-direction: column;
    width: 100%; /* 모달 컨텐츠의 너비를 조절하려면 이 값을 조정하세요 */
    pointer-events: auto; /* 모달 컨텐츠에 마우스 이벤트 적용 */
    background-color: #FFF;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 0.3rem;
    outline: 0;
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
}
.rw-modal-title {
margin-bottom: 0;
    line-height: 1.5;
}
.rw-modal.fade.show {
display: block; /* 팝업을 표시 */
}
.rw-selector-inline-editor {
position: relative;
    width: 100%;
}
.rw-selector-inline-editor:not(.disabled)::after {
align-items: center;
    content: "\270e";
    display: inline-flex;
    height: 100%;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    right: 8px;
    top: 0;
    transition: opacity 110ms ease;
    width: 16px;
    z-index: 1;
}
.rw-selector-inline-editor:not(.disabled):hover::after,
.rw-selector-inline-editor:not(.disabled):focus-within::after {
opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
.rw-selector-inline-editor::after {
transition: none;
}
}
.rw-item-container {
font-family: var(--ww-font-ibm-sans-kr);
}
.rw-item-container .rw-item-header {
width: 120px;
        padding: 6px 0px;
        color: var(--bs-text-gray-900);
        font-weight: 400 !important;
        font-size: 12px !important;
}
.rw-item-container .rw-item-content {
font-size: 12px !important;
        font-weight: 400 !important;
        width: 330px;
}
.rw-item-container .rw-item-content-auto {
font-size: 12px !important;
        font-weight: 400 !important;
        width: auto;
}
.rw-item-container .rw-option-list {
gap: 5px !important;
}
.rw-item-container .rw-option-icon {
font-size: 17px !important;
}
.rw-auth-bg {
position: absolute;
    inset: 0;
    overflow: hidden;
}
.rw-auth-bg #vanta-bg {
width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
}
.rw-auth-bg--carbon-gradient {
background-color: #161616;
}
.rw-auth-bg--carbon-gradient .rw-auth-bg__art {
position: absolute;
        top: 0;
        right: 0;
        height: 100%;
        width: min(46vw, 720px);
}
@media (max-width: 992px) {
.rw-auth-bg--carbon-gradient .rw-auth-bg__art {
display: none;
}
}
.rw-circuit-pulse {
fill: none;
    stroke: #a6c8ff;
    stroke-width: 2.2;
    stroke-linecap: round;
    stroke-dasharray: 20 1200;
    opacity: 0.95;
    filter: drop-shadow(0 0 4px rgba(120, 169, 255, 0.9));
    animation-name: rw-circuit-dash;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}
@keyframes rw-circuit-dash {
from { stroke-dashoffset: 0; }
    to { stroke-dashoffset: 1220; }
}
.rw-node-blink {
animation-name: rw-node-blink;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}
@keyframes rw-node-blink {
0%, 100% { opacity: 0.35; }
    50% { opacity: 1; }
}
.rw-cube {
transform-box: fill-box;
    transform-origin: center;
    animation-name: rw-cube-float;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}
@keyframes rw-cube-float {
0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-12px); }
}
.rw-circuit-layer {
will-change: transform;
}
.rw-circuit-bright {
pointer-events: none;
}
@media (prefers-reduced-motion: reduce) {
.rw-circuit-pulse,
    .rw-node-blink,
    .rw-cube {
animation: none !important;
}
}
@media (prefers-reduced-motion: reduce) {
.rw-circuit-pulse {
display: none;   /* 정지 상태의 펄스 점 잔상 제거 */
}
}
.rw-auth-bg--antigravity {
background-color: #0d0d0f;
    background-image:
        radial-gradient(60% 70% at 78% 25%, rgba(15, 98, 254, 0.16), transparent 62%),
        radial-gradient(50% 60% at 18% 80%, rgba(105, 41, 196, 0.14), transparent 60%),
        linear-gradient(180deg, #101014 0%, #0a0a0d 100%);
}
.rw-auth-bg--antigravity .rw-auth-bg__particle-host,
    .rw-auth-bg--antigravity .rw-auth-bg__particles {
position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
}
.rw-auth-bg--signal-gravity {
background:
        radial-gradient(72% 88% at 76% 50%, rgba(15, 98, 254, 0.08), transparent 68%),
        #000000;
}
.rw-auth-bg--signal-gravity .rw-auth-bg__signal-host,
    .rw-auth-bg--signal-gravity .rw-auth-bg__signal-canvas {
position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
}
.rw-inline-editor-hidden {
display: none !important;
}
.rw-inline-edit.cds-inline-edit-instant .rw-inline-edit__button-mode:hover .rw-inline-edit__edit-button {
opacity: 1;
    pointer-events: auto;
    animation: none;
}

/* ==== 40-components/rw-datagrid.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.rw-bridge.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
[data-bs-theme=light]
.rwgrid {
--rs-grid-style-data-selected-bgcolor: #eaeaea;
--header-text-color: rgb(30, 31, 33);
--cell-text-color: #222;
--header-bg-color: #e7e7e7; /*#f4f4f4;*/ /*f6f6f6*/ /*#e0e9f1 하늘색 */
    --header-border-color: #b5cade;
    --header-border-right-color: #b9bfc4; /* 헤더 영역 Right Border 색상 추가 */


    --column-border-left-color: #b5cade;
    --column-border-right-color: #b5cade;
    --column-border-top-color: #b5cade;
    --column-border-bottom-color: #b5cade;
    --group-header-bg-color: var(--bs-gray-100); /*#fff;*/
    --group-header-sub-bg-color: blue;
    --group-header-bottom-color: #e3e7eb;
    --border-top-color: #e1e1e1;
    --border-bottom-color: #e1e1e1;
    --border-left-color: #e1e1e1;
    --border-right-color: #cfdbe7;
    --cell-border-top-width: 0;
    --cell-border-bottom-width: 0;
    --cell-border-left-width: 0;
    --cell-border-right-width: 1px;
    /* 수정 */


    --selected-cell-bg-color: #f4faff; /*rgba(247, 236, 185, 0.5);*/
    --selected-cell-top-color: #0050e6;
    --selected-cell-bottom-color: #0050e6; /*#F7CE0E;*/
    --focued-border-color: rgba(247, 236, 185, 0.5);
    --focued-in-border-color: rgba(var(--bs-gray-800-rgb), 0.95);
}
[data-bs-theme=dark]
.rwgrid {
--border-top-color: rgba(var(--bs-gray-400-rgb),0.75);
    --border-bottom-color: rgba(var(--bs-gray-400-rgb),0.75);
    --border-left-color: rgba(var(--bs-gray-400-rgb),0.75);
    --border-right-color: rgba(var(--bs-gray-400-rgb),0.75);
    --focued-border-color: rgba(var(--bs-gray-800-rgb), 0.45);
    --focued-in-border-color: rgba(var(--bs-gray-800-rgb), 0.95);
    --rs-grid-style-data-selected-bgcolor: #384470;
    --header-bg-color: #000;
    --header-text-color: #fff;
    --cell-text-color: #fff;
    /* 추가 */
    --selected-cell-bg-color: rgb(247 236 185 / 20%);
    --selected-cell-top-color: rgb(247 206 14 / 50%);
    --selected-cell-bottom-color: rgb(247 206 14 / 50%);
    --focued-border-color: rgba(247, 236, 185, 0.5);
    --focued-in-border-color: rgba(var(--bs-gray-800-rgb), 0.95);
}
.rwgrid.cds-rwgrid .header {
min-height: 32px;
}
.rwgrid.cds-rwgrid .header-row {
height: 32px;
}
.rwgrid.cds-rwgrid .header .group-header {
height: 32px;
}
.rwgrid .header .group-column:first-child {
border-left: solid 0px var(--column-border-left-color);
}
.rwgrid .header .group-column:last-child {
border-right: solid 0px var(--column-border-right-color);
}
.rwgrid .header-container:not(.group-header) .rw-row-sx,
    .rwgrid .header-container:not(.group-header) .rw-column-sx {
transform: translateZ(0); /* GPU 처리 */
}
.rw-grid-root .rw-grid-multi-banner__left {
display: flex;
    align-items: center;
    gap: 10px;
}
.rw-grid-root .rw-grid-multi-banner__desc {
font-size: 11px;
    color: #35507f;
}
.rw-grid-root .rw-grid-multi-banner__clear {
border: 1px solid #8eb6ff;
    background: #ffffff;
    color: #114fb4;
    border-radius: 3px;
    font-size: 11px;
    line-height: 1;
    padding: 6px 10px;
}
.rwgrid .rw-column:first-child {
border-left: solid 0px var(--cds-grid-column-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid .header:hover .rw-column {
border-right-color: var(--cds-grid-column-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid.rw-lines-vertical .rw-column,
.rwgrid.rw-lines-vertical .group-column {
border-right-color: var(--cds-grid-column-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid .header:hover .group-column {
border-right-color: var(--cds-grid-column-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid .header-container.group-header .group-column {
border-right-color: var(--cds-grid-column-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid .header-container.group-header ~ .header-container .rw-column {
border-right-color: var(--cds-grid-column-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid.rw-lines-horizontal .rw-data-row {
border-bottom: solid 1px var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid .rw-data-row.rw-row-selected > :first-child {
box-shadow: inset 3px 0 0 var(--cds-focus, #0f62fe);
}
.cds-grid-container .cds-rwgrid .header-container > .rw-column:first-child > div:first-child {
padding-left: 16px !important; /* 페이지 전체 좌측 여백 맞추기 */
}
.cds-grid-container .rwgrid.cds-rwgrid .rw-cell:first-child .rw-cell-content-container .rw-cell-content {
padding-left: 16px !important; /* 첫 행만 적용 */
}
.cds-grid-container .rwgrid.cds-rwgrid .rw-cell .rw-cell-content-container .rw-cell-content {
padding-right: 19px !important;
}
.cds-grid-container .rwgrid.rw-lines-horizontal.rw-merge-cell-visual.cds-rwgrid .rw-row-sx {
border-top: none !important;
}
.rwgrid.cds-rwgrid .rw-grid-row-selector-check:checked::before {
block-size: 5px; /*.3125rem;*/
            border-block-end: 1.5px solid var(--cds-white-color, #FFFFFF);
            border-inline-start: 1.5px solid var(--cds-white-color, #FFFFFF);
            content: "";
            inline-size: 8.5px; /*.5rem*/
            inset-block-start: 2px; /*.2rem;*/
            inset-inline-start: 3.5px; /*.25rem;*/
            margin-block-start: -2px; /*-.1875rem*/
            position: absolute;
            transform: scale(1) rotate(-45deg);
            transform-origin: bottom right;
}
.rwgrid.cds-rwgrid .rw-grid-row-selector-check:focus {
outline: none;
            box-shadow: 0 0 0 2px var(--cds-focus, #0f62fe);
}
.rwgrid.cds-rwgrid .rw-cell.rw-cell-focused:not(.rw-fixed-cell) {
position: relative;
}
.rwgrid.cds-rwgrid .rw-cell.rw-cell-focused {
outline: none !important;
}
.rwgrid.cds-rwgrid .rw-cell.rw-cell-focused::after {
content: "";
            position: absolute;
            inset: -2px;   /* outline처럼 완전히 바깥 링 — 셀 내부 0px 침범, 행 보더와 일치 (카본 표준, 사장 확정) */
            border: 2px solid var(--cds-gray-300);
            pointer-events: none;
            z-index: 4;
}
.cds-grid-container .rwgrid.cds-rwgrid [data-cell-editing="true"].rw-cell.rw-cell-focused::after,
        .rwgrid.cds-rwgrid:focus .rw-cell.rw-cell-focused::after,
        .rwgrid.cds-rwgrid .rw-cell.rw-cell-focused:focus-within::after {
border-color: var(--cds-focus, #0f62fe);
}
.rwgrid.cds-rwgrid .rw-cell .rw-cell-editor-container .rw-cell-editor {
border-right: 0 !important;
}
.rw-cell-warning::after {
content: "";
        position: absolute;
        left: 12px;
        bottom: -5px;
        border-width: 5px 5px 0 5px;
        border-style: solid;
        border-color: var(--cds-support-warning, #f1c21b) transparent transparent transparent;
}
.rwgrid.cds-rwgrid .rw-data-row:hover .rw-fixed-cell,
.rwgrid.cds-rwgrid .rw-data-row:hover .rw-cell-merged-ghost {
/*    background-color: var(--rw-grid-hover-bg-opaque, #f4f4f4) !important;*/
    background-color: var(--cds-layer-hover, #e8e8e8) !important; /* 2026.07.21 이지혜 추가 - 기존 hover시 다크모드에서 흰색 */
}
.rwgrid.rw-lines-vertical .rw-cell {
border-right-color: var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid:not(.rw-lines-vertical) .rw-cell {
border-right-color: transparent !important;
}
.rwgrid.rw-lines-vertical .rw-fixed-cell {
border-right-color: transparent;
}
.rwgrid.rw-lines-vertical.rw-merge-cell-visual .rw-fixed-cell {
border-right-color: var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid.rw-lines-vertical .rw-fixed-cell.rw-fixed-cell-edge {
border-right-color: var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9)) !important;
    box-shadow: none;
}
.rwgrid .rw-cell.rw-cell-focused {
border-left: solid 1px var(--focued-border-color) !important;
        border-top: solid 1px var(--focued-border-color) !important;
        border-bottom: solid 1px var(--focued-border-color) !important;
        border-right: solid 1px var(--focued-border-color) !important;
}
.rwgrid:focus .rw-cell.rw-cell-focused {
border: solid 1px var(--focued-in-border-color) !important;
}
.rwgrid .rw-cell.rw-cell-focused:focus-within {
border: solid 1px var(--focued-in-border-color) !important;
}
.rwgrid [data-cell-editing="true"].rw-cell.rw-cell-focused {
border: solid 2px var(--bs-primary) !important;
}
.rwgrid .rw-cell.rw-cell-dirty {
position: relative;
}
.rwgrid .rw-cell.rw-cell-dirty::before {
content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    border-style: solid;
    border-width: 6px 6px 0 0;
    border-color: var(--cds-support-info, #0f62fe) transparent transparent transparent;
    pointer-events: none;
}
.rwgrid .rw-data-row.rw-row-added {
box-shadow: inset 3px 0 0 var(--cds-support-success, #24a148);
}
.rwgrid .rw-data-row.rw-row-modified {
box-shadow: inset 3px 0 0 var(--cds-support-info, #0f62fe);
}
.rwgrid .rw-data-row.rw-row-deleted {
box-shadow: inset 3px 0 0 var(--cds-support-error, #da1e28);
    opacity: 0.55;
    text-decoration: line-through;
}
.rwgrid .rw-cell .rw-cell-content-container .rw-cell-content {
padding-left: 12px;
    padding-right: 5px;
}
.rwgrid .rw-cell .rw-cell-editor-container .rw-cell-editor {
padding-left: 5px;
    padding-right: 5px;
}
.rwgrid .rw-cell-focused.rw-cell-readonly {
border-left: solid 1px #000 !important;
    border-top: solid 1px #000 !important;
    border-bottom: solid 1px #000 !important;
    border-right: solid 1px #000 !important;
    /*background-color: var(--bs-gray-200) !important;*/
}
.rwgrid .rw-cell .rw-cell-content-container {
/* 셀 truncate 처리 (이걸 옵션으로 해야할지 고민중) */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.rwgrid .rw-cell .rw-cell-editor-container {
width: 100%;
}
.rwgrid .rw-cell input.rw-cell-editor {
border: 0px solid #a1a1a111;
    background-color: transparent;
    padding-left: 0px;
    padding-right: 0px;
}
.rwgrid.rw-lines-horizontal .rw-row-detail-row,
.cds-grid-container .rwgrid .rw-row-detail-row {
border-bottom: solid 1px var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9));
}
.cds-rw-grid-root:not(.rw-grid-border-0):not(.cds-rwgrid-fluid) .rwgrid.rw-at-bottom .content-container > .rw-data-row:last-child,
.cds-rw-grid-root:not(.rw-grid-border-0):not(.cds-rwgrid-fluid) .rwgrid.rw-at-bottom .content-container > .rw-row-detail-row:last-child,
.cds-rw-grid-root:not(.rw-grid-border-0):not(.cds-rwgrid-fluid) .rwgrid.rw-at-bottom .content-container > .data-container > .rw-data-row:last-child,
.cds-rw-grid-root:not(.rw-grid-border-0):not(.cds-rwgrid-fluid) .rwgrid.rw-at-bottom .content-container > .data-container > .rw-row-detail-row:last-child {
border-bottom-color: transparent !important;
}
.rwgrid[data-editor-mode="LikeExcel"] .rw-data-row:not(.rw-row-selected):hover {
background-color: transparent;
}
.rwgrid[data-editor-mode="LikeExcel"] .rw-data-row:not(.rw-row-selected):hover .rw-fixed-cell {
background-color: var(--bs-white);
}
.rwgrid .rw-data-row .rw-fixed-cell-sum-row {
background-color: var(--bs-gray-200);
    position: sticky !important;
    left: 0;
}
.rwgrid:not(.rw-lines-horizontal) .rw-group-header {
border-bottom: 0 !important;
}
.rwgrid .row-drag-handler {
width: 30px;
}
.rwgrid .rw-row-detail-toggle:hover,
.rwgrid .rw-row-detail-toggle:hover i {
color: var(--cds-icon-primary, #161616);
}
.rwgrid.rw-lines-vertical .rw-row-sx,
.rwgrid.rw-lines-vertical .rw-row-selector-cell,
.rwgrid.rw-lines-vertical .row-drag-handler {
border-right-color: var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid:not(.rw-lines-vertical) .rw-row-sx,
.rwgrid:not(.rw-lines-vertical) .rw-row-selector-cell,
.rwgrid:not(.rw-lines-vertical) .row-drag-handler {
border-right-color: transparent !important;
}
.rwgrid .row-drag-handler-hide i {
visibility: hidden;
}
.rwgrid .header-button {
transition: transform 0.5s ease-in-out;
    width: 30px;
    position: sticky;
    will-change: transform;
}
.rwgrid .rw-group-data-container {
/* overflow: hidden;  이 옵션은 틀고정시에 사용할 수 없음*/
    transition: height 0.3s ease-out;
}
.rwgrid .rw-group-data-container.closed {
overflow: hidden;
        height: 0;
}
.rwgrid .rw-data-row:last-child.insert-below {
border-bottom: 1px dotted #333 !important;
}
@keyframes rw-grid-spin {
0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}
.rwgrid.rw-lines-horizontal.rw-merge-cell-visual .rw-data-row {
border-bottom: 0 !important;
}
.rwgrid.rw-lines-horizontal.rw-merge-cell-visual .rw-cell,
.rwgrid.rw-lines-horizontal.rw-merge-cell-visual .rw-row-sx,
.rwgrid.rw-lines-horizontal.rw-merge-cell-visual .rw-sum-cell {
border-top: 1px solid var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9));
}
.rwgrid.rw-lines-horizontal.rw-merge-cell-visual .rw-cell.rw-cell-merged-ghost {
border-top-color: transparent !important;
}
.rwgrid.rw-lines-horizontal.rw-merge-cell-visual .rw-cell.rw-cell-merged-ghost.rw-cell-focused,
.rwgrid.rw-lines-horizontal.rw-merge-cell-visual:focus .rw-cell.rw-cell-merged-ghost.rw-cell-focused,
.rwgrid.rw-lines-horizontal.rw-merge-cell-visual .rw-cell.rw-cell-merged-ghost.rw-cell-focused:focus-within,
.rwgrid.rw-lines-horizontal.rw-merge-cell-visual [data-cell-editing="true"].rw-cell.rw-cell-merged-ghost.rw-cell-focused {
border-top-color: transparent !important;
    border-bottom-color: transparent !important;
}
.rwgrid.rw-lines-horizontal.rw-merge-cell-visual .data-container > .rw-data-row:last-child > .rw-cell {
border-bottom: 1px solid var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9)) !important;
}
.rwgrid .rw-cell .rw-cell-merge-ghost-text {
visibility: hidden;
}
@media (max-width: 1023px) {
.rwgrid.rwgrid-mm-unfix-col .rw-fixed-column,
    .rwgrid.rwgrid-mm-unfix-col .rw-fixed-cell {
position: static !important;
        left: auto !important;
        z-index: auto !important;
        box-shadow: none !important;
}
}
.cds-rw-grid-root>.rw-grid-bottom::before {
content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -2px;
    height: 1px;
    background: var(--cds-bg-light);
    pointer-events: none;
}
.rw-grid-border-0 .cds-rw-grid-root>.rw-grid-bottom::before,
.cds-rwgrid-fluid .cds-rw-grid-root>.rw-grid-bottom::before {
display: none !important;
}
@container (max-width: 620px) {
.cds-rw-grid-root .rw-pager-content {
display: none !important;
}
}
.rw-pager-content .rw-pager-btn.active:first-child {
box-shadow: var(--cds-rw-active-bg) !important;
}
.cds-grid-container .rwgrid.cds-rwgrid .content-container {
margin-top: 0;
}
.rwgrid .cds-row-rwgrid.rw-data-row.rw-row-selected {
/*    background-color: var(--cds-layer-selected, #e0e0e0) !important;*/
    outline: 2px solid var(--cds-focus, #0f62fe);
    outline-offset: -2px;
    /*border: none !important; 이걸 주면 포커스가 있을때 컨텐츠가 위아래 흔들린다. 그래서 주석처리 (01.22) */
}
.cds-grid-container .rwgrid.cds-rwgrid .rw-column,
.cds-grid-container .rwgrid.cds-rwgrid .rw-column * {
-webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.cds-grid-container .rwgrid:not(:where(.cds-rwgrid)) .rw-data-row:hover,
.cds-bg-field .cds-grid-container .rwgrid:not(:where(.cds-rwgrid)) .rw-data-row:hover,
.cds-bg-filed .cds-grid-container .rwgrid:not(:where(.cds-rwgrid)) .rw-data-row:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
}
.rwgrid[data-editor-mode="LikeExcel"] .rw-data-row:not(.rw-row-selected):hover,
.cds-grid-container .rwgrid[data-editor-mode="LikeExcel"] .rw-data-row:not(.rw-row-selected):hover {
background-color: transparent;
}
.rwgrid:not(:where(.cds-rwgrid)) .rw-data-row.rw-row-selected .rw-fixed-cell,
.rwgrid:not(:where(.cds-rwgrid)) .rw-data-row.rw-row-selected .rw-cell-merged-ghost {
background-color: var(--cds-grid-select, var(--cds-layer-selected, #e5e5e5)) !important;
}
.rw-grid-root .rwgrid.cds-rwgrid {
--rw-carbon-row-height: 32px;
}
/* 열 템플릿 안에 페이지가 넣은 RwTextBox(rw-cell-template-input): 셀을 꽉 채우고 일반 셀 글자와 같은 여백·투명 배경. */
.rwgrid .rw-cell .rw-cell-content:has(.rw-cell-template-input),
.cds-grid-container .rwgrid.cds-rwgrid .rw-cell .rw-cell-content-container .rw-cell-content:has(.rw-cell-template-input),
.cds-grid-container .rwgrid.cds-rwgrid .rw-cell:first-child .rw-cell-content-container .rw-cell-content:has(.rw-cell-template-input) { padding-left: 0 !important; padding-right: 0 !important; overflow: visible; }
.rwgrid .rw-cell .rw-cell-template-input { display: block; width: 100% !important; min-width: 0; box-sizing: border-box; margin: 0; border: 0 !important; border-radius: 0; outline: 0; box-shadow: none !important; background: transparent !important; color: inherit; font: inherit; text-align: inherit; padding: 0 5px 0 12px !important; }
.cds-grid-container .rwgrid.cds-rwgrid .rw-cell .rw-cell-template-input { padding-right: 19px !important; }
.cds-grid-container .rwgrid.cds-rwgrid .rw-cell:first-child .rw-cell-template-input { padding-left: 16px !important; }
.rwgrid .rw-cell .rw-cell-template-input[readonly], .rwgrid .rw-cell .rw-cell-template-input:disabled { cursor: default; }
/* 정렬 아이콘: Font Awesome 글리프 대신 Carbon 화살표(16px), 세로 가운데. */
.rw-grid-root .rwgrid.cds-rwgrid .rw-column > .w-15px { display: flex; align-items: center; justify-content: center; }
.rw-grid-root .rwgrid.cds-rwgrid .rw-column .fa-sort-up::before,
.rw-grid-root .rwgrid.cds-rwgrid .rw-column .fa-sort-down::before { content: ""; display: block; width: 16px; height: 16px; background: var(--cds-text-primary, #161616); -webkit-mask: url("/assets/media/carbon-icons/css/svg/16/arrow--up.svg") center / contain no-repeat; mask: url("/assets/media/carbon-icons/css/svg/16/arrow--up.svg") center / contain no-repeat; }
.rw-grid-root .rwgrid.cds-rwgrid .rw-column .fa-sort-down::before { -webkit-mask-image: url("/assets/media/carbon-icons/css/svg/16/arrow--down.svg"); mask-image: url("/assets/media/carbon-icons/css/svg/16/arrow--down.svg"); }
.rw-grid-root .rwgrid.cds-rwgrid .rw-column[aria-sort]:hover {
background: var(--cds-layer-accent-hover-01, var(--cds-layer-selected-hover));
}
.rw-grid-root .rwgrid.cds-rwgrid .rw-data-row:not(.rw-row-selected):hover,
.rw-grid-root .rwgrid.cds-rwgrid .rw-data-row:not(.rw-row-selected):hover .rw-fixed-cell {
background-color: var(--cds-layer-hover-01, var(--cds-layer-hover)) !important;
}
.rw-grid-root .rwgrid.cds-rwgrid .rw-row-selected > :first-child {
box-shadow: inset 3px 0 var(--cds-interactive, var(--cds-border-interactive));
}
.rw-grid-root .rwgrid.cds-rwgrid :is(.rw-cell-focused, .rw-data-row:focus-visible, .rw-cell:focus-visible) {
outline: 2px solid var(--cds-focus);
    outline-offset: -2px;
}
.rw-grid-root .rwgrid.cds-rwgrid [data-cell-editing="true"].rw-cell.rw-cell-focused {
background-color: var(--cds-field-01);
}
.rw-grid-root .rwgrid.cds-rwgrid .rw-cell {
font-variant-numeric: tabular-nums;
}
.rw-grid-root.cds-rw-grid-root .rw-grid-loading-overlay p {
position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
}
@keyframes rw-grid-skeleton {
from { opacity: .45; } to { opacity: 1; }
}
.rw-grid-root.cds-rw-grid-root .rw-grid-multi-banner {
background: var(--cds-background-brand, var(--cds-button-primary));
    color: var(--cds-text-on-color);
    min-height: 48px;
}
.rw-grid-root.cds-rw-grid-root .rw-grid-multi-banner button {
color: inherit;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:24px;"]) {
--rw-carbon-row-height: 24px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:25px;"]) {
--rw-carbon-row-height: 25px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:26px;"]) {
--rw-carbon-row-height: 26px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:27px;"]) {
--rw-carbon-row-height: 27px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:28px;"]) {
--rw-carbon-row-height: 28px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:29px;"]) {
--rw-carbon-row-height: 29px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:30px;"]) {
--rw-carbon-row-height: 30px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:31px;"]) {
--rw-carbon-row-height: 31px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:32px;"]) {
--rw-carbon-row-height: 32px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:33px;"]) {
--rw-carbon-row-height: 33px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:34px;"]) {
--rw-carbon-row-height: 34px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:35px;"]) {
--rw-carbon-row-height: 35px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:36px;"]) {
--rw-carbon-row-height: 36px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:37px;"]) {
--rw-carbon-row-height: 37px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:38px;"]) {
--rw-carbon-row-height: 38px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:39px;"]) {
--rw-carbon-row-height: 39px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:40px;"]) {
--rw-carbon-row-height: 40px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:41px;"]) {
--rw-carbon-row-height: 41px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:42px;"]) {
--rw-carbon-row-height: 42px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:43px;"]) {
--rw-carbon-row-height: 43px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:44px;"]) {
--rw-carbon-row-height: 44px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:45px;"]) {
--rw-carbon-row-height: 45px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:46px;"]) {
--rw-carbon-row-height: 46px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:47px;"]) {
--rw-carbon-row-height: 47px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:48px;"]) {
--rw-carbon-row-height: 48px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:49px;"]) {
--rw-carbon-row-height: 49px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:50px;"]) {
--rw-carbon-row-height: 50px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:51px;"]) {
--rw-carbon-row-height: 51px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:52px;"]) {
--rw-carbon-row-height: 52px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:53px;"]) {
--rw-carbon-row-height: 53px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:54px;"]) {
--rw-carbon-row-height: 54px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:55px;"]) {
--rw-carbon-row-height: 55px;
}
.rw-grid-root .rwgrid.cds-rwgrid:has(.rw-data-row[style^="height:56px;"]) {
--rw-carbon-row-height: 56px;
}
.rw-grid-root.cds-rw-grid-root .rwgrid[aria-rowcount="0"] .content-container {
color: var(--cds-text-secondary);
    text-align: center;
    padding-top: 24px;
}
.rw-grid-root.rw-grid-compact .rw-compact-toolbar:has(> .rw-compact-search)::before {
content: ""; flex: 0 0 40px; height: 40px; background: var(--cds-icon-primary, #161616); mask: url("/assets/media/carbon-icons/css/svg/16/search.svg") center / 16px 16px no-repeat;
}
.rw-grid-root .rw-compact-overflow summary {
display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; cursor: pointer; list-style: none;
}
.rw-grid-root .rw-compact-overflow summary::-webkit-details-marker {
display: none;
}
.rw-grid-root .rw-compact-overflow summary:focus-visible {
outline: 2px solid var(--cds-focus); outline-offset: -2px;
}
.rw-grid-root .rw-row-detail-auto dt {
color: var(--cds-text-secondary); font-weight: 400;
}
.rw-grid-root .rw-row-detail-auto dd {
color: var(--cds-text-primary); margin: 0;
}
.rw-grid-root.rw-scroll-shadow-left::before,
.rw-grid-root.rw-scroll-shadow-right::after {
content: ""; position: absolute; top: 0; bottom: 0; width: 8px; z-index: 5; pointer-events: none;
}
.rw-grid-root.rw-scroll-shadow-left::before {
left: 0; background: linear-gradient(to right, var(--cds-border-subtle-01), transparent);
}
.rw-grid-root.rw-scroll-shadow-right::after {
right: 0; background: linear-gradient(to left, var(--cds-border-subtle-01), transparent);
}
.rw-grid-root.cds-rw-grid-root .rw-grid-loading-spinner::after {
content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent, var(--cds-skeleton-background, var(--cds-layer-01)), transparent);
    animation: rw-grid-skeleton-shimmer 1.6s ease-in-out infinite;
}
@keyframes rw-grid-skeleton-shimmer {
from { transform: translateX(-100%); } to { transform: translateX(100%); }
}
@media (prefers-reduced-motion: reduce) {
.rw-grid-root.cds-rw-grid-root .rw-grid-loading-spinner::after {
animation: none; display: none;
}
}
.rw-grid-root .rwgrid.cds-rwgrid .rw-cell.rw-cell-focused,
.rw-grid-root .rwgrid.cds-rwgrid:focus .rw-cell.rw-cell-focused,
.rw-grid-root .rwgrid.cds-rwgrid .rw-cell.rw-cell-focused:focus-within,
.rw-grid-root .rwgrid.cds-rwgrid [data-cell-editing="true"].rw-cell.rw-cell-focused,
.rw-grid-root .rwgrid.cds-rwgrid .rw-cell-focused.rw-cell-readonly {
border-top-width: 0 !important;
    border-bottom-width: 0 !important;
    border-left-width: 0 !important;
    border-right-width: 1px !important;
    border-right-color: transparent !important;
}
.rw-grid-root .rwgrid.cds-rwgrid.rw-lines-vertical .rw-cell.rw-cell-focused:not(.rw-fixed-cell),
.rw-grid-root .rwgrid.cds-rwgrid.rw-lines-vertical.rw-merge-cell-visual .rw-cell.rw-cell-focused {
border-right-color: var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9)) !important;
}
.company-container .rwgrid .rw-cell .rw-cell-content-container .rw-cell-content {
padding: 0px !important;
}

/* ==== 40-components/icon-fa-compat.css ==== */
/* Hand-maintained v2 source. FA class names retain their layout; Carbon supplies ink.
   rw-datagrid.css deliberately wins for grid sort arrows (16px block/current grid tone).
   Both rules use arrow--up / arrow--down; no font glyph remains in that path. */
:where(.fa, .fas, .far, .fal, .fad, .fab, .fat, .fass, .fasr, .fasl, .fast, .fasds, .fa-solid, .fa-regular, .fa-light, .fa-thin, .fa-duotone, .fa-sharp, .fa-sharp-duotone, .fa-brands, [class^="fa-"], [class*=" fa-"]):not(:where(.fa-ul, .fa-stack)) {
    --ww-fa: url("/assets/media/carbon-icons/css/svg/16/circle-dash.svg");
    display: var(--fa-display, inline-block);
    width: 1em;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    text-rendering: auto;
}
:where(.fa, .fas, .far, .fal, .fad, .fab, .fat, .fass, .fasr, .fasl, .fast, .fasds, .fa-solid, .fa-regular, .fa-light, .fa-thin, .fa-duotone, .fa-sharp, .fa-sharp-duotone, .fa-brands, [class^="fa-"], [class*=" fa-"]):not(:where(.fa-ul, .fa-stack))::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    -webkit-mask: var(--ww-fa) center / contain no-repeat;
    mask: var(--ww-fa) center / contain no-repeat;
    vertical-align: -0.125em;
}
:where(.fad, .fasds, .fa-duotone, .fa-sharp-duotone)::after { content: none; }
.fa-fw { width: 1.25em; text-align: center; }
.fa-1x { font-size: 1em; }
.fa-2x { font-size: 2em; }
.fa-3x { font-size: 3em; }
.fa-4x { font-size: 4em; }
.fa-5x { font-size: 5em; }
.fa-6x { font-size: 6em; }
.fa-7x { font-size: 7em; }
.fa-8x { font-size: 8em; }
.fa-9x { font-size: 9em; }
.fa-10x { font-size: 10em; }
.fa-2xs { font-size: .625em; line-height: .1em; vertical-align: .225em; }
.fa-xs { font-size: .75em; line-height: .08333em; vertical-align: .125em; }
.fa-sm { font-size: .875em; line-height: .07143em; vertical-align: .05357em; }
.fa-lg { font-size: 1.25em; line-height: .05em; vertical-align: -.075em; }
.fa-xl { font-size: 1.5em; line-height: .04167em; vertical-align: -.125em; }
.fa-2xl { font-size: 2em; line-height: .03125em; vertical-align: -.1875em; }
.fa-spin, .fa-pulse, .fa-spin-pulse {
    animation: ww-fa-spin var(--fa-animation-duration, 2s) var(--fa-animation-timing, linear) var(--fa-animation-delay, 0s) var(--fa-animation-iteration-count, infinite) var(--fa-animation-direction, normal);
}
.fa-pulse, .fa-spin-pulse { animation-duration: var(--fa-animation-duration, 1s); animation-timing-function: var(--fa-animation-timing, steps(8)); }
.fa-spin-reverse { --fa-animation-direction: reverse; }
@keyframes ww-fa-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
.fa-rotate-90 { transform: rotate(90deg); }
.fa-rotate-180 { transform: rotate(180deg); }
.fa-rotate-270 { transform: rotate(270deg); }
.fa-rotate-by { transform: rotate(var(--fa-rotate-angle, 0deg)); }
.fa-flip-horizontal { transform: scale(-1, 1); }
.fa-flip-vertical { transform: scale(1, -1); }
.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical { transform: scale(-1, -1); }
.fa-ul { list-style-type: none; margin-left: var(--fa-li-margin, 2.5em); padding-left: 0; }
.fa-ul > li { position: relative; }
.fa-li { left: calc(var(--fa-li-width, 2em) * -1); position: absolute; text-align: center; width: var(--fa-li-width, 2em); line-height: inherit; }
/* The FA list wrapper may contain a separate icon element. Do not add a second icon. */
.fa-li:has(> [class*="fa-"])::before { content: none; }
.fa-border { border-radius: var(--fa-border-radius, .1em); border: var(--fa-border-width, .08em) var(--fa-border-style, solid) var(--fa-border-color, var(--cds-border-subtle, currentColor)); padding: var(--fa-border-padding, .2em .25em .15em); box-sizing: content-box; }
.fa-pull-left { float: left; margin-right: var(--fa-pull-margin, .3em); }
.fa-pull-right { float: right; margin-left: var(--fa-pull-margin, .3em); }
.fa-inverse { color: var(--fa-inverse, var(--cds-text-inverse)); }
.fa-stack { display: inline-block; height: 2em; line-height: 2em; position: relative; vertical-align: middle; width: 2.5em; }
.fa-stack-1x, .fa-stack-2x { left: 0; position: absolute; text-align: center; width: 100%; z-index: var(--fa-stack-z-index, auto); }
.fa-stack-1x { line-height: inherit; }
.fa-stack-2x { font-size: 2em; }
@media (prefers-reduced-motion: reduce) {
    .fa-spin, .fa-pulse, .fa-spin-pulse { animation-duration: 1ms; animation-iteration-count: 1; animation-delay: -1ms; }
}

/* One custom-property rule per mapping key follows. */
.fa-add { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/add.svg"); }
.fa-address-book { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/identification.svg"); }
.fa-amazon { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/circle-dash.svg"); }
.fa-angle-left { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chevron--left.svg"); }
.fa-angles-left { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chevron--left.svg"); }
.fa-angular { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/logo--angular.svg"); }
.fa-arrow-down { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--down.svg"); }
.fa-arrow-down-to-line { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/download.svg"); }
.fa-arrow-down-wide-short { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/sort--descending.svg"); }
.fa-arrow-left { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--left.svg"); }
.fa-arrow-left-long { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--left.svg"); }
.fa-arrow-pointer { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/cursor--1.svg"); }
.fa-arrow-progress { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--right.svg"); }
.fa-arrow-right { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--right.svg"); }
.fa-arrow-right-from-arc { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/logout.svg"); }
.fa-arrow-right-long { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--right.svg"); }
.fa-arrow-right-to-bracket { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/login.svg"); }
.fa-arrow-rihgt-long { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--right.svg"); }
.fa-arrow-turn-down-right { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--down-right.svg"); }
.fa-arrow-up { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--up.svg"); }
.fa-arrow-up-to-line { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/upload.svg"); }
.fa-arrows-rotate { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/renew.svg"); }
.fa-asterisk { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/asterisk.svg"); }
.fa-at { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/at.svg"); }
.fa-ban { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/error.svg"); }
.fa-barcode { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/barcode.svg"); }
.fa-bars { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/menu.svg"); }
.fa-bars-filter { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/filter.svg"); }
.fa-bars-progress { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/list.svg"); }
.fa-bars-staggered { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/menu.svg"); }
.fa-bell { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/notification.svg"); }
.fa-bin { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/trash-can.svg"); }
.fa-bookmark { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/bookmark.svg"); }
.fa-box { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/box.svg"); }
.fa-boxes-packing { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/box.svg"); }
.fa-building { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/building.svg"); }
.fa-calculator { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/calculator.svg"); }
.fa-calculator-simple { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/calculator.svg"); }
.fa-calendar { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/calendar.svg"); }
.fa-calendar-check { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/event--schedule.svg"); }
.fa-calendar-day { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/calendar.svg"); }
.fa-calendar-plus { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/event.svg"); }
.fa-calendar-week { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/calendar.svg"); }
.fa-camera { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/camera.svg"); }
.fa-camera-rotate { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/camera.svg"); }
.fa-cancel { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/close.svg"); }
.fa-caret-down { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/caret--down.svg"); }
.fa-caret-left { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/caret--left.svg"); }
.fa-caret-right { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/caret--right.svg"); }
.fa-chain { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/link.svg"); }
.fa-chart-column { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chart--column.svg"); }
.fa-chart-line { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chart--line.svg"); }
.fa-chart-simple { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chart--bar.svg"); }
.fa-check { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/checkmark.svg"); }
.fa-check-double { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/checkmark.svg"); }
.fa-check-square { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/checkbox--checked.svg"); }
.fa-chevron-down { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chevron--down.svg"); }
.fa-chevron-left { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chevron--left.svg"); }
.fa-chevron-right { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chevron--right.svg"); }
.fa-chevron-up { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chevron--up.svg"); }
.fa-circle { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/circle--filled.svg"); }
.fa-circle-arrow-right { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/next--outline.svg"); }
.fa-circle-check { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/checkmark--outline.svg"); }
.fa-circle-chevron-down { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chevron--down--outline.svg"); }
.fa-circle-dot { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/radio-button--checked.svg"); }
.fa-circle-down { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--down.svg"); }
.fa-circle-exclamation { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/warning.svg"); }
.fa-circle-info { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/information.svg"); }
.fa-circle-minus { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/subtract--alt.svg"); }
.fa-circle-play { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/play--outline.svg"); }
.fa-circle-plus { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/add--alt.svg"); }
.fa-circle-small { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/dot-mark.svg"); }
.fa-circle-up { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--up.svg"); }
.fa-circle-xmark { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/close--outline.svg"); }
.fa-clock { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/time.svg"); }
.fa-clock-rotate-left { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/recently-viewed.svg"); }
.fa-clone { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/copy.svg"); }
.fa-close { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/close.svg"); }
.fa-code-merge { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/direction--merge.svg"); }
.fa-comment { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chat.svg"); }
.fa-copy { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/copy.svg"); }
.fa-database { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/data--base.svg"); }
.fa-delete-left { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/delete.svg"); }
.fa-download { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/download.svg"); }
.fa-droplet { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/rain-drop.svg"); }
.fa-edit { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/edit.svg"); }
.fa-ellipsis { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/overflow-menu--horizontal.svg"); }
.fa-ellipsis-vertical { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/overflow-menu--vertical.svg"); }
.fa-eraser { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/erase.svg"); }
.fa-exclamation-circle { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/warning.svg"); }
.fa-eye { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/view.svg"); }
.fa-eye-slash { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/view--off.svg"); }
.fa-fan { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/wind-power.svg"); }
.fa-file { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/document.svg"); }
.fa-file-alt { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/document.svg"); }
.fa-file-arrow-down { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/document--download.svg"); }
.fa-file-arrow-up { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/document--import.svg"); }
.fa-file-circle-xmark { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/document--subtract.svg"); }
.fa-file-contract { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/document--signed.svg"); }
.fa-file-excel { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/XLS.svg"); }
.fa-file-image { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/image.svg"); }
.fa-file-lines { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/document.svg"); }
.fa-file-minus { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/document--subtract.svg"); }
.fa-file-o { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/document.svg"); }
.fa-file-pdf { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/document--pdf.svg"); }
.fa-file-text { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/document.svg"); }
.fa-file-xls { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/XLS.svg"); }
.fa-file-zip { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/ZIP.svg"); }
.fa-filter { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/filter.svg"); }
.fa-fire { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/fire.svg"); }
.fa-flag { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/flag.svg"); }
.fa-floppy-disk { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/save.svg"); }
.fa-folder-open { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/folder--open.svg"); }
.fa-gear { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/settings.svg"); }
.fa-genderless { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/circle-dash.svg"); }
.fa-google { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/circle-dash.svg"); }
.fa-grid-2 { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/grid.svg"); }
.fa-grid-round-2 { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/grid.svg"); }
.fa-grip-lines { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/draggable.svg"); }
.fa-hexagon-check { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/checkmark--outline.svg"); }
.fa-house { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/home.svg"); }
.fa-html5 { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/circle-dash.svg"); }
.fa-id-card { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/identification.svg"); }
.fa-image { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/image.svg"); }
.fa-industry { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/industry.svg"); }
.fa-info { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/information.svg"); }
.fa-info-check { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/information.svg"); }
.fa-info-circle { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/information.svg"); }
.fa-key { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/password.svg"); }
.fa-layer-group { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/layers.svg"); }
.fa-layer-plus { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/layers.svg"); }
.fa-list { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/list.svg"); }
.fa-list-radio { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/list--checked.svg"); }
.fa-list-ul { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/list--bulleted.svg"); }
.fa-location-dot { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/location.svg"); }
.fa-lock { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/locked.svg"); }
.fa-magic { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/magic-wand.svg"); }
.fa-magnifying-glass { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/search.svg"); }
.fa-mailbox { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/email.svg"); }
.fa-memo { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/notebook.svg"); }
.fa-merge { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/direction--merge.svg"); }
.fa-message { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chat.svg"); }
.fa-messages { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/chat.svg"); }
.fa-minus { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/subtract.svg"); }
.fa-note-sticky { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/notebook.svg"); }
.fa-object-group { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/group.svg"); }
.fa-object-subtract { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/subtract.svg"); }
.fa-objects-column { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/column.svg"); }
.fa-page { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/document.svg"); }
.fa-paper-plane { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/send.svg"); }
.fa-paperclip { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/attachment.svg"); }
.fa-pen { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/edit.svg"); }
.fa-pen-circle { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/edit.svg"); }
.fa-pen-to-square { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/edit.svg"); }
.fa-pencil { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/edit.svg"); }
.fa-percent { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/percentage.svg"); }
.fa-phone { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/phone.svg"); }
.fa-play { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/play.svg"); }
.fa-play-circle { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/play--outline.svg"); }
.fa-plus { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/add.svg"); }
.fa-print { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/printer.svg"); }
.fa-qrcode { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/qr-code.svg"); }
.fa-quote-left { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/quotes.svg"); }
.fa-quote-right { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/quotes.svg"); }
.fa-random { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/shuffle.svg"); }
.fa-react { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/logo--react.svg"); }
.fa-receipt { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/receipt.svg"); }
.fa-rectangle-xmark { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/close.svg"); }
.fa-refresh { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/renew.svg"); }
.fa-registered { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/license.svg"); }
.fa-remove { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/close.svg"); }
.fa-reply { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/reply.svg"); }
.fa-reply-all { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/reply--all.svg"); }
.fa-right-from-bracket { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/logout.svg"); }
.fa-right-to-bracket { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/login.svg"); }
.fa-rotate { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/renew.svg"); }
.fa-rotate-right { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/renew.svg"); }
.fa-save { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/save.svg"); }
.fa-screwdriver-wrench { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/tools.svg"); }
.fa-search { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/search.svg"); }
.fa-send { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/send.svg"); }
.fa-sensor-triangle-exclamation { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/warning--alt.svg"); }
.fa-share { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/share.svg"); }
.fa-sliders { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/settings--adjust.svg"); }
.fa-sort { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrows--vertical.svg"); }
.fa-sort-alpha-asc { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/sort--ascending.svg"); }
.fa-sort-down { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--down.svg"); }
.fa-sort-numeric-asc { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/sort--ascending.svg"); }
.fa-sort-up { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/arrow--up.svg"); }
.fa-spinner { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/circle-dash.svg"); }
.fa-split { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/split-screen.svg"); }
.fa-square { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/checkbox.svg"); }
.fa-square-check { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/checkbox--checked.svg"); }
.fa-square-dollar { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/currency--dollar.svg"); }
.fa-square-minus { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/subtract--alt.svg"); }
.fa-square-plus { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/add--alt.svg"); }
.fa-star { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/star.svg"); }
.fa-star-of-life { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/asterisk.svg"); }
.fa-stars { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/star.svg"); }
.fa-sticky-note { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/notebook.svg"); }
.fa-stop { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/stop.svg"); }
.fa-stop-circle { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/stop--outline.svg"); }
.fa-table { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/table.svg"); }
.fa-tag { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/tag.svg"); }
.fa-timer { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/timer.svg"); }
.fa-times { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/close.svg"); }
.fa-toggle-off { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/radio-button.svg"); }
.fa-toggle-on { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/radio-button--checked.svg"); }
.fa-trash { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/trash-can.svg"); }
.fa-trash-alt { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/trash-can.svg"); }
.fa-trash-can { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/trash-can.svg"); }
.fa-trash-can-undo { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/trash-can.svg"); }
.fa-trash-can-xmark { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/trash-can.svg"); }
.fa-trash-check { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/trash-can.svg"); }
.fa-trash-slash { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/trash-can.svg"); }
.fa-trash-xmark { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/trash-can.svg"); }
.fa-triangle-exclamation { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/warning--alt.svg"); }
.fa-undo { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/undo.svg"); }
.fa-university { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/education.svg"); }
.fa-unlock { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/unlocked.svg"); }
.fa-up-right-from-square { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/launch.svg"); }
.fa-upload { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/upload.svg"); }
.fa-user { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/user.svg"); }
.fa-user-check { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/user--certification.svg"); }
.fa-user-group { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/user--multiple.svg"); }
.fa-user-tag { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/user.svg"); }
.fa-users { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/user--multiple.svg"); }
.fa-vuejs { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/logo--vue.svg"); }
.fa-wand-magic-sparkles { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/magic-wand.svg"); }
.fa-window-restore { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/popup.svg"); }
.fa-x { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/close.svg"); }
.fa-xmark { --ww-fa: url("/assets/media/carbon-icons/css/svg/16/close.svg"); }

/* ==== 40-components/icon-la-compat.css ==== */
/* Hand-maintained v2 source: la font glyphs replaced by Carbon SVG.
   Original box: inline-block / line-height 1; BI before aligns -0.125em.
   Review mappings are listed in the map and the shared comparison page. */
:where(.la, .las, .lar, .lal, .lad, .lab, [class^="la-"], [class*=" la-"]):not(:where(.la-ul, .la-stack)) {
    --ww-la: url("/assets/media/carbon-icons/css/svg/16/circle-dash.svg");
    display: inline-block;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    text-rendering: auto;
}
:where(.la, .las, .lar, .lal, .lad, .lab, [class^="la-"], [class*=" la-"]):not(:where(.la-ul, .la-stack))::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    -webkit-mask: var(--ww-la) center / contain no-repeat;
    mask: var(--ww-la) center / contain no-repeat;
    vertical-align: baseline;
}

.la-buffer { --ww-la: url("/assets/media/carbon-icons/css/svg/16/layers.svg"); }
.la-dice-one { --ww-la: url("/assets/media/carbon-icons/css/svg/16/circle-dash.svg"); }
.la-dot-circle { --ww-la: url("/assets/media/carbon-icons/css/svg/16/radio-button--checked.svg"); }
.la-download { --ww-la: url("/assets/media/carbon-icons/css/svg/16/download.svg"); }
.la-edit { --ww-la: url("/assets/media/carbon-icons/css/svg/16/edit.svg"); }
.la-expand { --ww-la: url("/assets/media/carbon-icons/css/svg/16/maximize.svg"); }
.la-map-marker { --ww-la: url("/assets/media/carbon-icons/css/svg/16/location.svg"); }
.la-network-wired { --ww-la: url("/assets/media/carbon-icons/css/svg/16/network--3.svg"); }
.la-pencil-ruler { --ww-la: url("/assets/media/carbon-icons/css/svg/16/ruler.svg"); }
.la-times { --ww-la: url("/assets/media/carbon-icons/css/svg/16/close.svg"); }
.la-toggle-off { --ww-la: url("/assets/media/carbon-icons/css/svg/16/radio-button.svg"); }
.la-toggle-on { --ww-la: url("/assets/media/carbon-icons/css/svg/16/radio-button--checked.svg"); }
.la-upload { --ww-la: url("/assets/media/carbon-icons/css/svg/16/upload.svg"); }

/* ==== 40-components/icon-bi-compat.css ==== */
/* Hand-maintained v2 source: bi font glyphs replaced by Carbon SVG.
   Original box: inline-block / line-height 1; BI before aligns -0.125em.
   Review mappings are listed in the map and the shared comparison page. */
:where(.bi, [class^="bi-"], [class*=" bi-"]):not([class*="-nav-menu"]) {
    --ww-bi: url("/assets/media/carbon-icons/css/svg/16/circle-dash.svg");
    display: inline-block;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    text-rendering: auto;
}
:where(.bi, [class^="bi-"], [class*=" bi-"]):not([class*="-nav-menu"])::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    -webkit-mask: var(--ww-bi) center / contain no-repeat;
    mask: var(--ww-bi) center / contain no-repeat;
    vertical-align: -0.125em;
}

.bi-arrow-down-circle-fill { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/arrow--down.svg"); }
.bi-arrow-return-right { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/arrow--right.svg"); }
.bi-arrow-right { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/arrow--right.svg"); }
.bi-arrow-right-circle-fill { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/next--filled.svg"); }
.bi-arrow-up-circle-fill { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/arrow--up.svg"); }
.bi-bookmarks-fill { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/bookmark.svg"); }
.bi-caret-left-fill { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/caret--left.svg"); }
.bi-caret-right-fill { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/caret--right.svg"); }
.bi-check-circle { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/checkmark--outline.svg"); }
.bi-check-circle-fill { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/checkmark--filled.svg"); }
.bi-check-lg { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/checkmark.svg"); }
.bi-eye { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/view.svg"); }
.bi-eye-slash { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/view--off.svg"); }
.bi-file-earmark-richtext { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/document.svg"); }
.bi-file-earmark-x { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/document--subtract.svg"); }
.bi-paperclip { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/attachment.svg"); }
.bi-pencil-fill { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/edit.svg"); }
.bi-play-fill { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/play--filled.svg"); }
.bi-three-dots { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/overflow-menu--horizontal.svg"); }
.bi-upload { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/upload.svg"); }
.bi-x { --ww-bi: url("/assets/media/carbon-icons/css/svg/16/close.svg"); }

/* ==== 40-components/icon-fonticon-compat.css ==== */
/* Hand-maintained v2 source: fonticon font glyphs replaced by Carbon SVG.
   Original box: inline-block / line-height 1; BI before aligns -0.125em.
   Review mappings are listed in the map and the shared comparison page. */
:where([class^="fonticon-"], [class*=" fonticon-"]) {
    --ww-fonticon: url("/assets/media/carbon-icons/css/svg/16/circle-dash.svg");
    display: inline-block;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    text-rendering: auto;
}
:where([class^="fonticon-"], [class*=" fonticon-"])::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    -webkit-mask: var(--ww-fonticon) center / contain no-repeat;
    mask: var(--ww-fonticon) center / contain no-repeat;
    vertical-align: baseline;
}

.fonticon-bank { --ww-fonticon: url("/assets/media/carbon-icons/css/svg/16/finance.svg"); }
.fonticon-drive { --ww-fonticon: url("/assets/media/carbon-icons/css/svg/16/block-storage.svg"); }
.fonticon-incoming-call { --ww-fonticon: url("/assets/media/carbon-icons/css/svg/16/phone--incoming.svg"); }
.fonticon-like-1 { --ww-fonticon: url("/assets/media/carbon-icons/css/svg/16/thumbs-up.svg"); }
.fonticon-remote-control { --ww-fonticon: url("/assets/media/carbon-icons/css/svg/16/game--wireless.svg"); }
.fonticon-ship { --ww-fonticon: url("/assets/media/carbon-icons/css/svg/16/sailboat--coastal.svg"); }
.fonticon-telegram { --ww-fonticon: url("/assets/media/carbon-icons/css/svg/16/send.svg"); }

/* ==== 40-components/icon-bx-compat.css ==== */
/* Hand-maintained v2 source: bx font glyphs replaced by Carbon SVG.
   Original box: inline-block / line-height 1; BI before aligns -0.125em.
   Review mappings are listed in the map and the shared comparison page. */
:where(.bx, [class^="bx-"], [class*=" bx-"], [class^="bxs-"], [class*=" bxs-"], [class^="bxl-"], [class*=" bxl-"]):not(.bx-ul) {
    --ww-bx: url("/assets/media/carbon-icons/css/svg/16/circle-dash.svg");
    display: inline-block;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    text-rendering: auto;
}
:where(.bx, [class^="bx-"], [class*=" bx-"], [class^="bxs-"], [class*=" bxs-"], [class^="bxl-"], [class*=" bxl-"]):not(.bx-ul)::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    -webkit-mask: var(--ww-bx) center / contain no-repeat;
    mask: var(--ww-bx) center / contain no-repeat;
    vertical-align: baseline;
}

.bx-xs { font-size: 1rem; }
.bx-sm { font-size: 1.55rem; }
.bx-md { font-size: 2.25rem; }
.bx-lg { font-size: 3rem; }

.bx-add-to-queue { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/add--alt.svg"); }
.bx-cart { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/shopping--cart.svg"); }
.bx-check-circle { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/checkmark--outline.svg"); }
.bx-chevron-down { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/chevron--down.svg"); }
.bx-chevron-left { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/chevron--left.svg"); }
.bx-chevron-right { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/chevron--right.svg"); }
.bx-chevron-up { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/chevron--up.svg"); }
.bx-chevrons-down { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/chevron--sort--down.svg"); }
.bx-chevrons-up { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/chevron--sort--up.svg"); }
.bx-circle { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/radio-button.svg"); }
.bx-error-circle { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/warning.svg"); }
.bx-exit { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/logout.svg"); }
.bx-home-alt { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/home.svg"); }
.bx-list-minus { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/list.svg"); }
.bx-list-plus { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/playlist.svg"); }
.bx-menu { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/menu.svg"); }
.bx-message-dots { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/chat.svg"); }
.bx-message-rounded-x { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/chat--off.svg"); }
.bx-minus-circle { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/subtract--alt.svg"); }
.bx-move { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/move.svg"); }
.bx-plus-medical { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/add.svg"); }
.bx-plus-trash { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/trash-can.svg"); }
.bx-right-arrow-alt { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/arrow--right.svg"); }
.bx-right-arrow-circle { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/next--outline.svg"); }
.bx-save { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/save.svg"); }
.bx-search { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/search.svg"); }
.bx-search-alt-2 { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/search.svg"); }
.bx-test-tube { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/chemistry.svg"); }
.bx-trash { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/trash-can.svg"); }
.bx-user { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/user.svg"); }
.bx-x { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/close.svg"); }
.bxs-arrow-to-bottom { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/download.svg"); }
.bxs-checkbox-minus { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/checkbox--indeterminate.svg"); }
.bxs-comment-add { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/add-comment.svg"); }
.bxs-down-arrow { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/caret--down.svg"); }
.bxs-edit { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/edit.svg"); }
.bxs-edit-alt { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/edit.svg"); }
.bxs-file-find { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/document--view.svg"); }
.bxs-grid { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/grid.svg"); }
.bxs-hard-hat { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/construction.svg"); }
.bxs-info-circle { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/information.svg"); }
.bxs-left-arrow { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/caret--left.svg"); }
.bxs-message-minus { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/chat--off.svg"); }
.bxs-message-square-edit { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/chat.svg"); }
.bxs-plus-square { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/add--alt.svg"); }
.bxs-printer { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/printer.svg"); }
.bxs-right-arrow { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/caret--right.svg"); }
.bxs-right-arrow-alt { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/arrow--right.svg"); }
.bxs-save { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/save.svg"); }
.bxs-spreadsheet { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/document.svg"); }
.bxs-square-rounded { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/stop--filled.svg"); }
.bxs-stopwatch { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/timer.svg"); }
.bxs-trash-alt { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/trash-can.svg"); }
.bxs-up-arrow { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/caret--up.svg"); }
.bxs-x-circle { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/close--outline.svg"); }
.bxs-x-square { --ww-bx: url("/assets/media/carbon-icons/css/svg/16/close--filled.svg"); }

/* ==== 40-components/icon-ki-compat.css ==== */
/* Hand-maintained v2 source. Keenicons styles share single-color Carbon masks.
   Duotone keeps its original inline-flex box; outline/solid keep inline boxes.
   Font size and color inherit; fs-*, text-* and inline overrides remain in control. */
:where(.ki-duotone, .ki-outline, .ki-solid) {
    --ww-ki: url("/assets/media/carbon-icons/css/svg/16/circle-dash.svg");
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
}
.ki-duotone {
    position: relative;
    display: inline-flex;
    direction: ltr;
}
:where(.ki-duotone, .ki-outline, .ki-solid)::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    flex-shrink: 0;
    background-color: currentColor;
    -webkit-mask: var(--ww-ki) center / contain no-repeat;
    mask: var(--ww-ki) center / contain no-repeat;
}
.ki-duotone > span[class^="path"],
.ki-duotone > span[class*=" path"] { display: none; }

.ki-abstract-2 { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/cube.svg"); }
.ki-abstract-23 { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/checkmark--filled.svg"); }
.ki-abstract-26 { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/circle--solid.svg"); }
.ki-abstract-28 { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/apps.svg"); }
.ki-abstract-35 { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/category.svg"); }
.ki-abstract-39 { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/carbon.svg"); }
.ki-abstract-4 { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/application.svg"); }
.ki-abstract-9 { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/shape--unite.svg"); }
.ki-arrow-down { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/arrow--down.svg"); }
.ki-arrow-mix { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/shuffle.svg"); }
.ki-arrow-up { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/arrow--up.svg"); }
.ki-arrows-loop { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/renew.svg"); }
.ki-award { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/trophy.svg"); }
.ki-bank { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/finance.svg"); }
.ki-black-left-line { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/previous--filled.svg"); }
.ki-black-right-line { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/next--filled.svg"); }
.ki-capsule { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/medication.svg"); }
.ki-cd { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/media--library.svg"); }
.ki-chart-simple { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/chart--bar.svg"); }
.ki-check-circle { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/checkmark--outline.svg"); }
.ki-compass { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/compass.svg"); }
.ki-cross { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/close.svg"); }
.ki-delivery { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/delivery.svg"); }
.ki-design-1 { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/pen.svg"); }
.ki-dots-square { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/grid.svg"); }
.ki-dots-square-vertical { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/overflow-menu--vertical.svg"); }
.ki-double-right { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/chevron--right.svg"); }
.ki-down { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/chevron--down.svg"); }
.ki-feather { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/pen.svg"); }
.ki-flask { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/chemistry.svg"); }
.ki-map { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/map.svg"); }
.ki-notification { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/notification.svg"); }
.ki-price-tag { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/tag.svg"); }
.ki-right-square { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/arrow--right.svg"); }
.ki-send { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/send.svg"); }
.ki-shield-tick { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/security.svg"); }
.ki-star { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/star.svg"); }
.ki-tablet-book { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/book.svg"); }
.ki-tag { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/tag.svg"); }
.ki-time { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/time.svg"); }
.ki-timer { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/timer.svg"); }
.ki-two-credit-cart { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/purchase.svg"); }
.ki-wrench { --ww-ki: url("/assets/media/carbon-icons/css/svg/16/tools.svg"); }

/* ==== 40-components/cds-tabs.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.legacy.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.cds-tabs-wrapper {
background-color: var(--cds-bg-light);
}
.cds-tab-list {
display: flex;
    gap: 2px;
    flex-wrap: nowrap;
    align-items: flex-end;
    overflow-x: auto;
    overflow-y: visible;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    margin: 0;
    padding: 0;
    list-style: none;
    min-width: 0;
}
.cds-tab-list::-webkit-scrollbar {
display: none;
}
.cds-tabs-nav-item {
flex: 0 0 auto;
}
.cds-tabs-link {
position: relative;
    display: inline-flex;
    align-items: center;
    padding: 11px 80px 11px 16px;
    box-shadow: inset 0 -2px 0 var(--cds-border-subtle-01, #e0e0e0);
    color: var(--cds-text-secondary, #525252);
    font-weight: 400 !important;
    background: none;
    border: 0;
    cursor: pointer;
    white-space: nowrap;
    background: none;
    font-size: 12px;
    max-width: 175px;
}
.cds-tabs-link:hover {
box-shadow: inset 0 -2px 0 var(--cds-border-strong-01, #8d8d8d) !important;
        color: var(--cds-text-primary, #161616) !important;
}
.cds-tabs-link:focus, .cds-tabs-link:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px !important;
}
.cds-tabs-link:disabled:focus, .cds-tabs-link:disabled:active {
outline: none !important;
}
.cds-tabs-link:disabled:hover {
color: var(--cds-text-disabled, #16161625) !important;
            border-bottom: 2px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-tab-list.cds-contained-tab {
background-color: var(--cds-bg-gray);
    gap: 0 !important;
}
.cds-tab-list.cds-contained-tab .cds-tabs-link:hover:not(.active) {
background-color: var(--cds-layer-selected-hover, #d1d1d1);
            color: var(--cds-text-primary, #161616) !important;
            box-shadow: -.0625rem 0 0 0 var(--cds-border-strong-01) !important;
}
.cds-tab-list.cds-contained-tab .cds-tabs-link:disabled {
background-color: var(--cds-button-disabled, #c6c6c6);
            opacity: 0.5;
}
.cds-tab-list.cds-contained-tab
    .cds-tabs-nav-item:not(:last-child)
    .cds-tabs-link:not(.active) {
border-right: 1px solid var(--cds-border-strong-01);
}
.cds-tab-list.cds-contained-tab
    .cds-tabs-nav-item:has(+ .cds-tabs-nav-item > .cds-tabs-link.active) > .cds-tabs-link {
border-right-color: transparent;
}
.cds-tabs-overflow-nav-button {
display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    inline-size: 40px;
    text-align: start;
    box-sizing: border-box;
    margin: 0;
    vertical-align: baseline;
    padding: 0;
    border: 0;
    appearance: none;
    background: none;
    cursor: pointer;
}
.cds-tabs-overflow-nav-button svg {
fill: var(--cds-icon-primary, #161616);
}
.cds-tabs-overflow-hidden {
display: none;
}
.cds-table-container {
width: 100%;
    overflow-x: auto;
}
.cds-table {
width: 100%;
    border-collapse: collapse;
    background-color: var(--cds-rw-ctrl-bg);
}
.cds-table-thead {
background-color: var(--cds-table-header, #e0e0e0);
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-table-th {
box-sizing: border-box;
    padding: 7px 16px;
    text-align: left;
    font-size: 11.5px;
    font-weight: 600;
    color: var(--cds-text-primary, #161616);
    letter-spacing: 0.16px;
    line-height: 1.29;
}
.cds-table-tbody {
background-color: var(--cds-rw-ctrl-bg);
}
.cds-table-tr {
border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.cds-table-tr:hover {
background-color: var(--cds-layer-hover, #e8e8e8);
}
.cds-table-tr:last-child {
border-bottom: none;
}
.cds-table-td {
box-sizing: border-box;
    padding: 7px 16px;
    font-size: 12px;
    color: var(--cds-text-secondary, #525252);
    letter-spacing: 0.16px;
    line-height: 1.29;
}
.cds-tab-button:last-child {
border-right: none;
}
.cds-tab-button:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px !important;
        z-index: 1;
}
.cds-tab-panel {
display: none;
    padding: 16px;
    height: 100%;
    background-color: var(--cds-field, #ffffff);
}
.cds-tab-panel.active {
display: block;
}
.cds-tab-panel h2 {
font-size: 20px;
        font-weight: 600;
        margin: 0 0 16px 0;
        color: var(--cds-text-primary, #161616);
}
.cds-tab-panel p {
font-size: 14px;
        line-height: 1.6;
        color: var(--cds-text-secondary, #525252);
        margin: 0;
}
.cds-verticaltab-item {
cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--cds-text-primary, #161616);
    display: flex;
    padding: 10px 16px;
    border-left: 3px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-verticaltab-item:hover {
border-left: 3px solid var(--cds-border-strong-01, #e0e0e0) !important;
        color: var(--cds-text-primary, #161616) !important;
}
.cds-verticaltab-item:focus, .cds-verticaltab-item:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px !important;
}
.cds-verticaltab-active {
margin-bottom: 0px;
    border-left: 3px solid var(--cds-primary, #0f62fe) !important;
    color: var(--cds-text-primary, #161616) !important;
    font-weight: 600 !important;
}
[data-bs-theme=dark] .optimizer-container .cds-table-thead {
background-color: #525252 !important;
}
.wave-analysis .cds-tabs-link {
font-size: 14px !important;
}

/* ==== 40-components/cds-tree.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.cds-tree {
list-style: none;
    width: 100%;
    padding: 0;
    margin: 0;
    background-color: var(--cds-field-01, #f4f4f4);
}
.cds-tree-node {
position: relative;
}
.cds-tree-node-label {
display: flex;
    align-items: center;
    min-height: 32px;
    padding: 0;
    cursor: pointer;
    color: var(--cds-text-secondary, #525252);
    transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
    outline: 2px solid transparent;
    outline-offset: -2px;
}
.cds-tree-node-label:hover {
background-color: var(--cds-layer-hover, #e8e8e8);
        color: var(--cds-text-primary, #161616);
}
.cds-tree-node-label:focus {
outline: 2px solid var(--cds-focus, #0f62fe);
        outline-offset: -2px;
}
.cds-tree-node-selected::before {
position: absolute;
    background-color: var(--cds-primary, #0f62fe);
    block-size: 100%;
    content: "";
    inline-size: 4px;
    inset-block-start: 0;
    inset-inline-start: 0;
}
.cds-tree-node-selected > .cds-tree-node-label {
background-color: var(--cds-layer-selected, #e0e0e0);
    color: var(--cds-text-primary, #161616);
}
.cds-tree-node-selected > .cds-tree-node-label:hover {
background-color: var(--cds-layer-selected-hover, #d1d1d1);
}
.cds-tree-node-selected > .cds-tree-node-label .cds-tree-node-label-text {
color: var(--cds-text-primary, #161616);
}
.cds-tree-node-active > .cds-tree-node-label {
position: relative;
}
.cds-tree-node-active > .cds-tree-node-label::before {
content: '';
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 3px;
        background-color: var(--cds-primary, #0f62fe);
}
.cds-tree-node-icon {
display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
    fill: var(--cds-icon-primary, #161616);
}
.cds-tree-node-icon svg {
width: 16px;
        height: 16px;
        fill: currentColor;
}
.cds-tree-node-expanded > .cds-tree-node-label .cds-tree-node-icon {
transform: rotate(90deg);
}
.cds-tree-node-leaf .cds-tree-node-icon {
visibility: hidden;
}
.cds-tree-node-label-icon {
display: flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    margin-right: 8px;
    flex-shrink: 0;
}
.cds-tree-node-label-icon svg {
width: 16px;
        height: 16px;
        fill: var(--cds-icon-secondary, #525252);
}
.cds-tree-node-label-text {
flex: 1;
    font-size: 12px;
    line-height: 1.29;
    letter-spacing: 0.16px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.cds-tree-node-children {
list-style: none;
    padding: 0;
    margin: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height 200ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.cds-tree-node-expanded > .cds-tree-node-children {
max-height: 2000px;
}
.cds-tree-node + .cds-tree-node {
margin-top: 0;
}
.cds-tree-node-disabled > .cds-tree-node-label {
color: #c6c6c6;
    cursor: not-allowed;
}
.cds-tree-node-disabled > .cds-tree-node-label:hover {
background-color: transparent;
}
.cds-tree-node-disabled .cds-tree-node-icon,
.cds-tree-node-disabled .cds-tree-node-label-icon {
fill: #c6c6c6;
}
.cds-tree-line {
--cds-tree-line-axis: 0px;
    --cds-tree-line-branch: 32px;
    --cds-tree-line-color: var(--bs-gray-800, #6f6f6f);
    --cds-tree-line-indent: var(--cds-tree-line-branch);
    --cds-tree-line-label-gap: 7px;
    --cds-tree-line-marker-size: 7px;
    --cds-tree-line-row-height: 32px;
    background-color: transparent;
}
.cds-tree-line .cds-tree-node {
min-height: var(--cds-tree-line-row-height);
}
.cds-tree-line .cds-tree-node-children {
margin-left: var(--cds-tree-line-indent);
    max-height: none;
    overflow: visible;
    padding-left: 0;
    position: relative;
}
.cds-tree-line .cds-tree-node > .cds-tree-node-children::before {
border-left: 1px solid var(--cds-tree-line-color);
    content: "";
    height: calc(var(--cds-tree-line-row-height) / 2);
    left: var(--cds-tree-line-axis);
    position: absolute;
    top: calc(var(--cds-tree-line-row-height) / -2);
}
.cds-tree-line .cds-tree-node::before {
background-color: transparent;
    border-left: 1px solid var(--cds-tree-line-color);
    block-size: auto;
    bottom: 0;
    content: "";
    inline-size: auto;
    inset-block-start: auto;
    inset-inline-start: auto;
    left: var(--cds-tree-line-axis);
    position: absolute;
    top: 0;
}
.cds-tree-line .cds-tree-node::after {
border-top: 1px solid var(--cds-tree-line-color);
    content: "";
    left: var(--cds-tree-line-axis);
    position: absolute;
    top: calc(var(--cds-tree-line-row-height) / 2);
    width: var(--cds-tree-line-branch);
}
.cds-tree-line > .cds-tree-node::before,
.cds-tree-line > .cds-tree-node::after {
content: none;
}
.cds-tree-line .cds-tree-node:last-child::before {
bottom: auto;
    height: calc(var(--cds-tree-line-row-height) / 2);
}
.cds-tree-line .cds-tree-node-marker {
background-color: var(--cds-tree-line-color);
    height: var(--cds-tree-line-marker-size);
    left: calc(var(--cds-tree-line-axis) + var(--cds-tree-line-branch) - (var(--cds-tree-line-marker-size) / 2));
    position: absolute;
    top: calc(((var(--cds-tree-line-row-height) - var(--cds-tree-line-marker-size)) / 2) + 1px);
    width: var(--cds-tree-line-marker-size);
    z-index: 2;
}
.cds-tree-line .cds-tree-node-marker-circle {
border-radius: 50%;
}
.cds-tree-line .cds-tree-node-marker-square {
border-radius: 0;
}
.cds-tree-line .cds-tree-node-marker-triangle {
background-color: transparent;
    border-bottom: var(--cds-tree-line-marker-size) solid var(--cds-tree-line-color);
    border-left: calc(var(--cds-tree-line-marker-size) * 0.6) solid transparent;
    border-right: calc(var(--cds-tree-line-marker-size) * 0.6) solid transparent;
    height: 0;
    top: calc(((var(--cds-tree-line-row-height) - var(--cds-tree-line-marker-size)) / 2) + 1px);
    width: 0;
}
.cds-tree-line .cds-tree-node-label {
align-items: center;
    display: inline-flex;
    max-width: 100%;
    min-height: var(--cds-tree-line-row-height);
    padding-left: calc(var(--cds-tree-line-branch) + (var(--cds-tree-line-marker-size) / 2) + var(--cds-tree-line-label-gap));
    padding-right: 0;
    position: relative;
    width: fit-content;
    z-index: 1;
}
.cds-tree-line .cds-tree-node-label:hover {
background-color: transparent;
}
.cds-tree-line .cds-tree-node-icon {
display: none;
}
.cds-tree-line .cds-tree-node-toggle:focus-visible {
outline: 1px solid var(--cds-focus, var(--bs-primary, #0d6efd));
    outline-offset: 1px;
}
.cds-tree-line .cds-tree-node-toggle-icon {
color: var(--bs-gray-600, #6c757d);
    display: inline-flex;
    font-size: 12px;
    line-height: 1;
    transform: translateY(1px);
}
.cds-tree-line .cds-tree-node-label-content {
align-items: center;
    cursor: pointer;
    display: inline-flex;
    gap: 2px;
    min-height: var(--cds-tree-line-row-height);
    width: fit-content;
}
.cds-tree-line .cds-tree-node-label-content:hover {
background-color: var(--cds-layer-hover, #e8e8e8);
}
.cds-tree-line .cds-tree-node-data-label {
align-items: center;
    color: var(--cds-text-secondary, var(--bs-gray-600, #6f6f6f));
    display: inline-flex;
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
    min-height: var(--cds-tree-line-row-height);
    padding-left: 6px;
    padding-right: 6px;
    white-space: nowrap;
}
.cds-tree-line .cds-tree-node-label-kicker {
align-items: center;
    color: var(--cds-text-secondary, var(--bs-gray-600, #6f6f6f));
    display: inline-flex;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: .02em;
    line-height: 1;
    min-height: var(--cds-tree-line-row-height);
    padding-left: 4px;
    padding-right: 4px;
    white-space: nowrap;
}
.cds-tree-line .cds-tree-node-label-primary {
align-items: center;
    color: var(--cds-text-primary, var(--bs-gray-900, #161616));
    display: inline-flex;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    min-height: var(--cds-tree-line-row-height);
    padding-left: 4px;
    padding-right: 4px;
    white-space: nowrap;
}
.cds-tree-line .cds-tree-node-label-secondary {
align-items: center;
    color: var(--cds-text-primary, var(--bs-gray-900, #161616));
    display: inline-flex;
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
    min-height: var(--cds-tree-line-row-height);
    padding-left: 4px;
    padding-right: 8px;
    white-space: nowrap;
}
.cds-tree-line .cds-tree-node-label-meta {
align-items: center;
    color: var(--cds-text-secondary, var(--bs-gray-600, #6f6f6f));
    display: inline-flex;
    font-size: 11px;
    font-weight: 400;
    line-height: 1;
    min-height: var(--cds-tree-line-row-height);
    padding-left: 4px;
    padding-right: 4px;
    white-space: nowrap;
}
.cds-tree-line .cds-tree-node-children .cds-tree-node-label-text {
padding-left: 4px;
}
.cds-tree-line .cds-tree-node-line-active > .cds-tree-node-label {
outline: none;
}
.cds-tree-line .cds-tree-node-line-active > .cds-tree-node-label .cds-tree-node-label-content {
background-color: var(--cds-layer-selected, var(--bs-gray-200, #e0e0e0));
    box-shadow: inset 3px 0 0 var(--cds-primary, var(--bs-primary, #0d6efd));
    color: var(--cds-text-primary, var(--bs-gray-900, #161616));
    padding-left: 2px;
}
.cds-tree-line .cds-tree-node-line-active > .cds-tree-node-label .cds-tree-node-toggle-icon {
color: currentColor;
}
.cds-tree-line .cds-tree-node-line-active > .cds-tree-node-label:hover {
background-color: transparent;
}
.cds-tree-line .cds-tree-node-line-active > .cds-tree-node-label .cds-tree-node-label-content:hover {
background-color: var(--cds-layer-selected-hover, var(--bs-gray-300, #d1d1d1));
}
[data-bs-theme="dark"] .cds-tree-line {
--cds-tree-line-color: var(--bs-gray-500, #8d8d8d);
}
.cds-member-list-wrap .cds-tree {
background-color: var(--cds-field, #ffffff) !important;
}
.cds-member-list-wrap .cds-tree-node-label-text {
font-size: 13px;
}
.cds-invite-team .cds-tree {
background-color: var(--cds-field, #ffffff) !important;
}
.cds-invite-team .cds-tree-node-label-text {
font-size: 14px;
}

/* ==== 40-components/cds-accordion.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell-compat.css에서 이전됨) */
.wvs-sidebar .cds-accordion-item {
border-top: 0;
}
.wvs-sidebar .cds-accordion-item-heading {
gap: 12px;
}
.wvs-sidebar .cds-accordion-item-title {
color: var(--cds-text-primary, #161616);
}
@media (min-width: 1024px) {
.wvs-sidebar.closed .cds-accordion-item-heading {
gap: 0;
            padding: 0 0 0 16px;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed .cds-accordion-item-title,
        .wvs-sidebar.closed .cds-accordion-item-icon {
display: none;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed .cds-accordion-item-content {
display: none;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed:hover .cds-accordion-item-heading {
gap: 12px;
                padding: 0 16px;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed:hover .cds-accordion-item-icon {
justify-content: center;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed:hover .cds-accordion-item-title,
            .wvs-sidebar.closed:hover .cds-accordion-item-icon {
display: flex;
}
}
@media (min-width: 1024px) {
.wvs-sidebar.closed:hover .cds-accordion-item-content {
display: block;
}
}
.wvs-popover-accordion .cds-accordion-item-heading:hover {
background-color: #8d8d8d29;
    color: #ffffff;
}
.wvs-popover-accordion .cds-accordion-item-heading:focus {
outline: 2px solid #ffffff !important;
    outline-offset: -2px !important;
}
.wvs-popover-accordion .cds-accordion-item:last-child {
border: none;
}
.wvs-popover-accordion .cds-accordion-item-heading {
color: #ffffff;
}
.wvs-popover-accordion .cds-accordion-item-title {
font-size: 12px;
    color: #ffffff;
    padding: 0 16px 0 8px;
}
.wvs-popover-accordion .cds-accordion-item-content-inner {
background-color: #161616;
}
.cds-accordion {
list-style: none;
    width: 100%;
    padding: 0;
    margin: 0;
}
.cds-accordion-item {
border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    transition: all 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.cds-accordion-item:last-child {
border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-accordion-item-heading {
display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 40px;
    padding: 0 16px;
    margin: 0;
    cursor: pointer;
    background-color: transparent;
    border: none;
    text-align: left;
    color: var(--cds-text-primary, #161616);
    transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
    outline: 2px solid transparent;
    outline-offset: -2px;
}
.cds-accordion-item-heading:hover {
background-color: var(--cds-layer-hover, #e8e8e8);
        color: var(--cds-text-primary, #161616);
}
.cds-accordion-item-heading:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
}
.cds-accordion-item-title {
flex: 1;
    font-size: 13px;
    line-height: 1.29;
    letter-spacing: 0.16px;
    font-weight: 400;
    color: var(--cds-text-primary, #161616);
    margin: 0;
    padding-right: 16px;
    white-space: nowrap;
}
.cds-accordion-item-icon {
display: flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
    fill: #161616;
}
.cds-accordion-item-icon svg {
width: 16px;
        height: 16px;
        fill: currentColor;
}
.cds-accordion-item-expanded .cds-accordion-item-icon {
transform: rotate(180deg);
}
.cds-accordion-item-content {
max-height: 0;
    overflow: hidden;
    transition: max-height 200ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.cds-accordion-item-expanded .cds-accordion-item-content {
max-height: 1000px;
}
.cds-accordion-item-content-inner {
/*    padding: 0 16px 16px 16px;*/
    font-size: 12px;
    line-height: 1.43;
    letter-spacing: 0.16px;
    color: #525252;
}
.cds-accordion-item.cds-accordion-item-disabled .cds-accordion-item-heading {
color: #c6c6c6;
    cursor: not-allowed;
}
.cds-accordion-item.cds-accordion-item-disabled .cds-accordion-item-heading:hover {
background-color: transparent;
}
.cds-accordion-item.cds-accordion-item-disabled .cds-accordion-item-icon {
fill: #c6c6c6;
}
.menu-accordion.cds-accordion.cds-accordion-item {
border-top: 0px solid var(--cds-border-sidebar, #e0e0e0);
    border-bottom: 0px solid var(--cds-border-sidebar, #e0e0e0);
}
.menu-accordion.cds-accordion.cds-accordion-item + .menu-accordion.cds-accordion.cds-accordion-item {
border-top: 0;
}
.menu-accordion.cds-accordion {
padding: 0 !important;
}
.app-sidebar.wvs-sidebar .menu-link.cds-accordion-item-heading {
gap: 0 !important;
    border-radius: 0 !important;
}
.app-sidebar.wvs-sidebar .menu-link.cds-accordion-item-heading .svg-icon.svg-icon-2 svg {
height: 16px !important;
        width: 16px !important;
}
.app-sidebar.wvs-sidebar .menu-accordion.cds-accordion .cds-accordion-item-title {
color: var(--cds-text-primary, #161616) !important;
    font-size: 12px !important;
}
.app-sidebar.wvs-sidebar .menu-sub-accordion.cds-accordion-item-content {
max-height: none;
}
.menu-accordion.cds-accordion .menu-sub {
margin: 0 !important;
}
.menu-accordion.cds-accordion .menu-link {
padding: 10px 16px !important;
}
.menu-accordion.cds-accordion .menu-link.wvs-sidebar-nav-item {
padding-left: 47px !important;
}

/* ==== 40-components/rx-popover.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.popover-body {
font-size: 14px;
    padding-top: 10px;
}
.messenger-container .cds-member-item .wvs-header-popover .rx-popover-container .rx-popover-content {
width: 140px;
    top: 2px !important;
    left: -112px !important;
}
.messenger-container .prompt-list-top .wvs-header-popover .rx-popover-container .rx-popover-content {
left: -92px !important;
}

/* RwPopover Carbon markup (task-19). JS keeps ownership of panel position. */
.rx-popover-trigger { cursor: pointer; }
.rx-popover-root .rx-popover-container .rx-popover-content.rx-popover-panel {
    background: var(--cds-layer-01, #f4f4f4);
    color: var(--cds-text-primary, #161616);
    box-shadow: 0 2px 6px var(--cds-shadow, rgba(0, 0, 0, .3));
    border: 0;
    border-radius: 0;
    font: inherit;
}
.rx-popover-panel::before {
    content: "";
    position: absolute;
    width: 12px;
    height: 12px;
    top: -6px;
    left: 16px;
    transform: rotate(45deg);
    background: inherit;
    pointer-events: none;
}
.rx-popover-no-caret .rx-popover-panel::before,
.rx-popover-panel.rx-popover-no-caret::before { content: none; }
/* JS 가 실제 배치 결과를 data-rxpopover-resolved-* 로 기록한다(auto 판정 포함). 꼬리는 그 값을 따른다. */
/* 트리거의 포커스 링(2px)과 겹치지 않게 패널을 8px 띄운다. JS 는 top=trigger.bottom 으로 놓고, 간격은 margin 으로 준다. */
.rx-popover-panel { margin-top: 8px; }
.rx-popover-panel[data-rxpopover-resolved-y="top"] { margin-top: 0; margin-bottom: 8px; }
.rx-popover-panel[data-rxpopover-resolved-y="top"]::before { top: auto; bottom: -6px; }
.rx-popover-panel[data-rxpopover-resolved-x="right"]::before { left: auto; right: 16px; }
.rx-popover-content.rx-popover-panel .cds-popover-item {
    display: flex;
    align-items: center;
    gap: 8px;
    box-sizing: border-box;
    min-height: 36px;
    padding: 8px 16px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--cds-text-primary, #161616);
    font: inherit;
}
.rx-popover-content.rx-popover-panel .cds-popover-item:hover { background: var(--cds-layer-hover-01, #e8e8e8); }
.rx-popover-content.rx-popover-panel .cds-popover-item.cds-hover-danger { color: var(--cds-support-error, #da1e28); }
.rx-popover-content.rx-popover-panel .cds-popover-item:focus-visible { outline: 2px solid var(--cds-focus, #0f62fe); outline-offset: -2px; }
.rx-popover-panel .rx-popover-header { padding: 12px 16px; font-weight: 600; border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0); }

/* 셸 헤더(검은 바)에서 열리는 팝오버는 헤더와 같은 어두운 면으로 — 항목 글자(.wvs-popover-item, #fff)가 밝은 패널에 묻히던 문제. */
/* User menu is a fixed Carbon dark shell surface, not the inverse of the page
   theme. Scope the G90 palette here so ordinary popovers still follow the page. */
.wvs-header-userpopover .rx-popover-panel {
    --cds-background-inverse: #393939;
    --cds-background-inverse-hover: #474747;
    --cds-text-inverse: #ffffff;
    --cds-border-inverse: #161616;
    color-scheme: dark;
}
.rx-popover-root.wvs-header-popover .rx-popover-container .rx-popover-content.rx-popover-panel,
.rx-popover-root.wvs-header-notification .rx-popover-container .rx-popover-content.rx-popover-panel,
.wvs-header-popover .rx-popover-panel,
.wvs-header-notification .rx-popover-panel {
    background: var(--cds-background-inverse, #393939);
    color: var(--cds-text-inverse, #ffffff);
}
.wvs-header-popover .rx-popover-panel .cds-popover-item,
.wvs-header-notification .rx-popover-panel .cds-popover-item { color: var(--cds-text-inverse, #ffffff); }
.wvs-header-popover .rx-popover-panel .cds-popover-item:hover,
.wvs-header-notification .rx-popover-panel .cds-popover-item:hover,
.wvs-header-popover .rx-popover-panel .wvs-popover-item:hover,
.wvs-header-notification .rx-popover-panel .wvs-popover-item:hover { background: var(--cds-background-inverse-hover, #474747); }
.wvs-header-popover .rx-popover-panel .rx-popover-header,
.wvs-header-notification .rx-popover-panel .rx-popover-header { border-bottom-color: var(--cds-border-inverse, #161616); }

/* 꼬리(caret) 표시 여부: 기본 표시, rx-popover-no-caret(또는 ShowCaret="false")로 끈다. */

/* 셸 헤더 팝오버는 헤더 바에 붙어 열리므로 꼬리(caret)를 쓰지 않는다. */
.rx-popover-root.wvs-header-popover .rx-popover-panel::before,
.rx-popover-root.wvs-header-notification .rx-popover-panel::before,
.wvs-header-popover .rx-popover-panel::before,
.wvs-header-notification .rx-popover-panel::before { content: none; }
.rx-popover-root.wvs-header-popover .rx-popover-panel,
.rx-popover-root.wvs-header-notification .rx-popover-panel,
.wvs-header-popover .rx-popover-panel,
.wvs-header-notification .rx-popover-panel { margin-top: 0; }

/* ==== 40-components/cds-menu.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
@media (min-width: 1024px) {

}
@media (max-width: 1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width:1023px) {

}
@media (max-width: 1023px) {

}
@media (max-width: 1023px) {

}
@media (max-width: 1023px) {

}
@media (max-width: 1023px) {

}
@media (max-width: 1023px) {

}
@media (max-width: 1023px) {

}
@media (max-width: 1023px) {

}
@media (max-width: 1023px) {

}
@media (max-width: 1023px) {

}
@media (max-width: 1023px) {

}
@media (max-width: 1023px) {

}
@media (max-width: 1023px) {
.cds-mm-next-row .cds-text-primary {
overflow-wrap: anywhere;
        word-break: break-all;
}
}
@media (max-width: 1023px) {
.d-flex.flex-row.cds-mm-side-to-updown {
flex-direction: column !important;
}
}
@media (max-width: 1023px) {
.d-flex.flex-row.cds-mm-side-to-updown > .w-50 {
width: 100% !important;
            max-width: 100% !important;
            min-width: 0 !important;
            flex: none !important;
}
}
@media (max-width: 1023px) {
.dock-wpanel.cds-mm-side-to-updown {
flex-direction: column !important;
}
}
@media (max-width: 760px) {

}

/* ==== 40-components/rx-drawer.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.2024.01.css에서 이전됨) */
.rx-drawer {
position: fixed;
    top: 0;
    height: 100%;
    background-color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease-in-out;
    z-index: 1000;
}
.rx-drawer.open {
transform: translateX(0);
}

/* ==== 40-components/rw-slide.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.rw-slide-viewer::before,
.rw-slide-viewer::after {
content: none;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 4px;
    pointer-events: none;
}
.rw-slide-viewer-header-main {
display: flex;
    align-items: center;
    flex: 1;
    min-width: 0;
}
.rw-slide-viewer-back:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px !important;
}
.rw-slide-viewer-back:hover {
background: #f4f4f4;
}
.rw-slide-viewer-close {
width: 50px;
    height: 50px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center !important;
    color: #161616;
    flex-shrink: 0;
}
.rw-slide-viewer-close:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px !important;
}
.rw-slide-viewer-close-icon {
display: block;
    width: 16px;
    height: 16px;
}
.rw-slide-viewer-close-icon i {
color: var(--cds-text-primary);
}
.rw-slide-viewer-title {
font-size: 1rem;
    font-weight: 600;
    margin: 0;
    color: var(--cds-text-primary);
    flex: 1;
    padding-left: 16px;
}
.rw-slide-viewer-body {
flex: 1;
    overflow-y: auto;
}
.rw-slide-viewer-overlay.active {
opacity: 1;
        visibility: visible;
}
@media (max-width: 1023px) {
.rw-slide-viewer-header .rw-slide-viewer-back {
width: 48px;
            height: 48px;
            justify-content: center !important;
            border-radius: 0;
            /*            margin-right: 4px !important;*/
            color: var(--cds-icon-primary, #161616);
}
}
@media (max-width: 1023px) {
.rw-slide-viewer-header .rw-slide-viewer-back:focus,
            .rw-slide-viewer-header .rw-slide-viewer-back:active {
outline: 2px solid var(--cds-focus, #0f62fe);
                outline-offset: -2px;
}
}
@media (min-width: 1024px) {
.rw-slide-viewer-header > .rw-slide-viewer-back {
display: none !important;
}
}
@media (min-width: 1024px) {
.rw-slide-viewer.force-slide.slide-right {
position: fixed;
        top: var(--rw-viewer-top-offset, 48px);
        right: 0;
        height: calc(100dvh - var(--rw-viewer-top-offset, 48px));
        width: var(--rw-viewer-width, 50%);
        max-width: var(--rw-viewer-max-width, 800px);
        z-index: 500;
        transform: translateX(100%);
        transition: transform 0.3s cubic-bezier(0.2, 0, 0.38, 0.9), visibility 0s linear 0.3s;
        box-shadow: none;
        pointer-events: none;
        visibility: hidden;
        /* No shadow while closed */
}
}
@media (min-width: 1024px) {
.rw-slide-viewer.force-slide.slide-right.open {
transform: none;
            box-shadow: none;
            pointer-events: auto;
            visibility: visible;
            transition-delay: 0s;
            /* Remove transform while open so fixed descendants keep viewport positioning */
}
}
@media (min-width: 1024px) {
.rw-slide-viewer.force-slide.pinned.slide-right.open {
transform: none;
        transition: none;
}
}
@media (min-width: 1024px) {
.rw-slide-viewer.force-slide.slide-left {
position: fixed;
        top: var(--rw-viewer-top-offset, 48px);
        left: 0;
        /* Start from the viewport edge regardless of the sidebar */
        height: calc(100dvh - var(--rw-viewer-top-offset, 48px));
        width: var(--rw-viewer-width, 50%);
        max-width: var(--rw-viewer-max-width, 800px);
        z-index: 1000;
        /* Keep this above the sidebar layer */
        transform: translateX(-100%);
        transition: transform 0.3s cubic-bezier(0.2, 0, 0.38, 0.9), visibility 0s linear 0.3s;
        box-shadow: none;
        pointer-events: none;
        visibility: hidden;
        /* No shadow while closed */
}
}
@media (min-width: 1024px) {
.rw-slide-viewer.force-slide.slide-left.open {
transform: none;
            box-shadow: none;
            pointer-events: auto;
            visibility: visible;
            transition-delay: 0s;
            /* Remove transform while open so fixed descendants keep viewport positioning */
}
}
@media (min-width: 1024px) {
.rw-slide-viewer.force-slide.pinned.slide-left.open {
transform: none;
        transition: none;
}
}
@media (min-width: 1024px) {
.rw-slide-viewer.desktop-overlay-force-slide.force-slide + .rw-slide-viewer-overlay,
    .rw-slide-viewer.desktop-overlay-always + .rw-slide-viewer-overlay {
display: block !important;
}
}
@media (min-width: 1024px) {
.rw-slide-viewer.force-slide.open .rw-slide-viewer-header > .rw-slide-viewer-back {
visibility: visible !important;
        pointer-events: auto !important;
        display: flex !important;
        justify-content: center !important;
        width: 48px;
        height: 48px;
}
}
@media (min-width: 1024px) {
@supports (-webkit-touch-callout: none) {
.rw-slide-viewer {
height: calc(100dvh - var(--rw-viewer-top-offset, 48px)) !important;
}
}
}
@media (max-width: 1023px) {
.rw-slide-viewer.slide-right {
position: fixed;
right: 0;
width: var(--rw-viewer-width, 100%);
z-index: 500;
transform: translateX(100%);
transition: transform 0.3s cubic-bezier(0.2, 0, 0.38, 0.9), visibility 0s linear 0.3s;
box-shadow: none;
pointer-events: none;
visibility: hidden;
}
}
@media (max-width: 1023px) {
.rw-slide-viewer.slide-left {
position: fixed;
left: 0;
width: var(--rw-viewer-width, 100%);
z-index: 500;
transform: translateX(-100%);
transition: transform 0.3s cubic-bezier(0.2, 0, 0.38, 0.9), visibility 0s linear 0.3s;
box-shadow: none;
pointer-events: none;
visibility: hidden;
}
}
@media (max-width: 1023px) {
.rw-slide-viewer.open {
transform: none;
        pointer-events: auto;
        visibility: visible;
        transition-delay: 0s;
}
}
@media (max-width: 1023px) {
.rw-slide-viewer.slide-right.open {
box-shadow: none;
}
}
@media (max-width: 1023px) {
.rw-slide-viewer.slide-left.open {
box-shadow: none;
}
}
@media (max-width: 1023px) {
.rw-slide-viewer-overlay {
display: block;
}
}
@media (max-width: 1023px) {
.rw-slide-viewer-back {
display: flex !important;
}
}
@media (min-width: 1024px) {
.rw-slide-viewer.force-slide.slide-right.open::before {
content: "";
        left: -4px;
        background: linear-gradient(to left, rgba(22, 22, 22, 0.2) 0%, rgba(22, 22, 22, 0.05) 45%, rgba(22, 22, 22, 0) 100%);
}
}
@media (min-width: 1024px) {
.rw-slide-viewer.force-slide.slide-left.open::after {
content: "";
        right: -4px;
        background: linear-gradient(to right, rgba(22, 22, 22, 0.08) 0%, rgba(22, 22, 22, 0.02) 45%, rgba(22, 22, 22, 0) 100%);
}
}
@media (max-width: 1023px) {
.rw-slide-viewer.slide-right.open::before {
content: "";
        left: -4px;
        background: linear-gradient(to left, rgba(22, 22, 22, 0.08) 0%, rgba(22, 22, 22, 0.02) 45%, rgba(22, 22, 22, 0) 100%);
}
}
@media (max-width: 1023px) {
.rw-slide-viewer.slide-left.open::after {
content: "";
        right: -4px;
        background: linear-gradient(to right, rgba(22, 22, 22, 0.08) 0%, rgba(22, 22, 22, 0.02) 45%, rgba(22, 22, 22, 0) 100%);
}
}
@media (max-width: 1023px) {
.rw-slide-viewer-overlay {
top: 48px;
        height: calc(100dvh - 48px);
}
}
@media (max-width: 1023px) {
.rw-slide-viewer.slide-right {
top: 48px;
        height: calc(100dvh - 48px);
        max-height: calc(100dvh - 48px);
}
}
@media (max-width: 1023px) {
.rw-slide-viewer.slide-left {
top: 48px;
        height: calc(100dvh - 48px);
        max-height: calc(100dvh - 48px);
}
}
@media (max-width: 1023px) {
@supports (-webkit-touch-callout: none) {
.rw-slide-viewer {
height: calc(100dvh - 48px) !important;
}
}
}
@media (prefers-reduced-motion: reduce) {
.rw-slide-viewer.slide-right,
    .rw-slide-viewer.slide-left {
transition-duration: 0s !important;
        transition-delay: 0s !important;
}
}
.rw-slide-viewer-header-actions {
display: flex;
    align-items: center;
}
.rw-slide-viewer-pin {
min-width: 50px;
    height: 50px;
    border: none;
    background: transparent;
    color: var(--cds-icon-secondary, #525252);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}
.rw-slide-viewer-pin-icon {
display: inline-flex;
    align-items: center;
    justify-content: center;
}
.mail-container .rw-slide-viewer-back:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
}
.cds-mail-view-wrap .rw-slide-viewer-body {
display: flex;
    flex-direction: column;
    overflow-y: hidden;
}
.cds-motion:not(.dock-wpanel):not(.dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window),
.cds-motion-dock-enter:not(.dock-wpanel):not(.dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window),
.dock-motion:not(.dock-wpanel):not(.dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window) {
animation: cds-motion-enter-fade 240ms cubic-bezier(0, 0, 0.38, 0.9) both;
    will-change: auto;
}
.cds-motion-chain > .cds-motion-enter:not(.dock-wpanel):not(.dock-vpanel):not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window),
.cds-motion-chain > * > .cds-motion-enter:not(.dock-wpanel):not(.dock-vpanel):not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window),
.cds-motion-chain > * > * > .cds-motion-enter:not(.dock-wpanel):not(.dock-vpanel):not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-chain;
    animation-duration: 360ms;
    animation-delay: calc(var(--cds-motion-chain-delay) + var(--cds-motion-chain-item-delay, 0ms));
    animation-fill-mode: backwards;
    will-change: auto;
}
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-slide-viewer):not(.cds-rw-window)
    :is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-slide-viewer):not(.cds-rw-window)
    :is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-slide-viewer):not(.cds-rw-window) {
--dock-motion-depth-delay: 0ms;
}
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-slide-viewer):not(.cds-rw-window)
    > :is(.dock-top, .dock-bottom, .dock-left, .dock-right, .dock-content):not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation: cds-motion-enter-fade 260ms cubic-bezier(0, 0, 0.38, 0.9) backwards;
    animation-delay: var(--dock-motion-depth-delay);
    will-change: auto;
}
:is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter:not(.rw-slide-viewer):not(.cds-rw-window)
    > :is(.dock-top, .dock-bottom, .dock-left, .dock-right, .dock-content):not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation: cds-motion-enter-fade 260ms cubic-bezier(0, 0, 0.38, 0.9) backwards;
    will-change: auto;
}
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-top:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window),
:is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter:not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-top:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-top;
    animation-duration: 280ms;
}
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-bottom:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window),
:is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter:not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-bottom:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-fade;
    animation-duration: 240ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 40ms);
}
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-left:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window),
:is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter:not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-left:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-left;
    animation-duration: 280ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 40ms);
}
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-right:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window),
:is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter:not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-right:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-right;
    animation-duration: 280ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 60ms);
}
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-content:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window),
:is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter:not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-content:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-content;
    animation-duration: 260ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 80ms);
}
.cds-page-motion > :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window) {
--dock-motion-depth-delay: 0ms;
}
.cds-page-motion > :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window) {
--dock-motion-depth-delay: 0ms;
}
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    > :is(.dock-top, .dock-bottom, .dock-left, .dock-right, .dock-content):not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation: cds-motion-enter-fade 260ms cubic-bezier(0, 0, 0.38, 0.9) backwards;
    animation-delay: var(--dock-motion-depth-delay);
    will-change: auto;
}
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-top:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-top;
    animation-duration: 280ms;
}
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-bottom:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-fade;
    animation-duration: 240ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 40ms);
}
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-left:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window),
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-right:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window),
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-content:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-content;
    animation-duration: 260ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 80ms);
}
@media not all {
:is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter
    > :is(.dock-top, .dock-bottom, .dock-left, .dock-right, .dock-content):not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation: cds-motion-enter-fade 260ms cubic-bezier(0, 0, 0.38, 0.9) both;
    will-change: auto;
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter
    > .dock-top:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-top;
    animation-duration: 280ms;
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter
    > .dock-bottom:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-fade;
    animation-duration: 240ms;
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter
    > .dock-left:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-left;
    animation-duration: 280ms;
    animation-delay: 40ms;
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter
    > .dock-right:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-right;
    animation-duration: 280ms;
    animation-delay: 60ms;
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel).cds-motion-dock-enter
    > .dock-content:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-content;
    animation-duration: 260ms;
    animation-delay: 80ms;
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter)
    > :is(.dock-top, .dock-bottom, .dock-left, .dock-right, .dock-content):not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation: cds-motion-enter-fade 260ms cubic-bezier(0, 0, 0.38, 0.9) both;
    animation-delay: var(--dock-motion-depth-delay);
    will-change: auto;
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter)
    > .dock-top:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-top;
    animation-duration: 280ms;
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter)
    > .dock-bottom:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-fade;
    animation-duration: 240ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 40ms);
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter)
    > .dock-left:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-left;
    animation-duration: 280ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 40ms);
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter)
    > .dock-right:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-right;
    animation-duration: 280ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 60ms);
}
}
@media not all {
:is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter)
    > .dock-content:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-content;
    animation-duration: 260ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 80ms);
}
}
@media not all {
.cds-page-motion > :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window) {
--dock-motion-depth-delay: 0ms;
}
}
@media not all {
.cds-page-motion > :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window) {
--dock-motion-depth-delay: 160ms;
}
}
@media not all {
.cds-page-motion > :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window) {
--dock-motion-depth-delay: 320ms;
}
}
@media not all {
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):is(.cds-motion, .dock-motion, .cds-motion-dock-enter):not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
--dock-motion-depth-delay: 0ms;
}
}
@media not all {
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    > :is(.dock-top, .dock-bottom, .dock-left, .dock-right, .dock-content):not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation: cds-motion-enter-fade 260ms cubic-bezier(0, 0, 0.38, 0.9) both;
    animation-delay: var(--dock-motion-depth-delay);
    will-change: auto;
}
}
@media not all {
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-top:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-top;
    animation-duration: 280ms;
}
}
@media not all {
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-bottom:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-fade;
    animation-duration: 240ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 40ms);
}
}
@media not all {
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-left:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-left;
    animation-duration: 280ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 40ms);
}
}
@media not all {
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-right:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-right;
    animation-duration: 280ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 60ms);
}
}
@media not all {
.cds-page-motion :is(.dock-wpanel, .dock-vpanel):not(.rw-slide-viewer):not(.cds-rw-window)
    > .dock-content:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-content;
    animation-duration: 260ms;
    animation-delay: calc(var(--dock-motion-depth-delay) + 80ms);
}
}
@media not all {
.cds-page-motion :is(.dock-wpanel, .dock-vpanel).cds-motion-chain
    > .cds-motion-enter:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window),
.cds-page-motion :is(.dock-wpanel, .dock-vpanel).cds-motion-chain
    > * > .cds-motion-enter:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window),
.cds-page-motion :is(.dock-wpanel, .dock-vpanel).cds-motion-chain
    > * > * > .cds-motion-enter:not(.rw-grid-root):not(.rw-slide-viewer):not(.cds-rw-window) {
animation-name: cds-motion-enter-chain;
    animation-duration: 360ms;
    animation-delay: calc(var(--cds-motion-chain-delay) + var(--cds-motion-chain-item-delay, 0ms));
}
}
@keyframes cds-motion-enter-fade {
from {
        opacity: 0.55;
    }

    to {
        opacity: 1;
    }
}
@keyframes cds-motion-enter-top {
from {
        opacity: 0.55;
        transform: translateY(-20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes cds-motion-enter-chain {
from {
        opacity: 0;
        transform: translateY(-18px);
    }

    12% {
        opacity: 0.55;
        transform: translateY(-18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes cds-motion-enter-left {
from {
        opacity: 0.55;
        transform: translateX(-28px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}
@keyframes cds-motion-enter-right {
from {
        opacity: 0.55;
        transform: translateX(28px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}
@media (max-width:1023px) {
.messenger-container .rw-slide-viewer-header {
padding-left: 0 !important;
}
}
.messenger-container .rw-slide-viewer.slide-right {
top: 0 !important;
    max-height: 100%;
}

/* ==== 40-components/rx-tree.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.2024.01.css에서 이전됨) */
.rx-tree-view-item {
margin: 6px 0;
}
.rx-tree-view-item.selected > .item-content {
background-color: #e6f3ff;
        border-color: #1890ff;
}
.rx-tree-view-item .item-content {
display: flex;
        align-items: center;
        /* background-color: #fff; */
        /* border: 1px solid #e0e0e0; */
        border-radius: 0px;
        padding: 0px 0px;
}
.rx-tree-view-item .toggle-icon {
display: inline-block;
        width: 16px;
        height: 16px;
        text-align: center;
        line-height: 16px;
        font-weight: bold;
}
.rx-tree-view-item .toggle-icon.empty {
color: #ccc;
}
.rx-tree-view-item .badge {
background-color: #ccc;
        color: white;
        border-radius: 5px;
        padding: 2px 3px;
        font-size: 10px;
}

/* task-20 — default tree only; ConnectedLine is unchanged. */
.rx-tree-default-row.rx-tree-view-item { margin: 0; color: var(--cds-text-primary, #161616); cursor: pointer; }
.rx-tree-default-row.rx-tree-view-item > .item-content { display: flex; align-items: center; gap: 8px; height: 32px; padding: 0 8px 0 0; border: 0; border-radius: 0; }
.rx-tree-default-row:hover > .item-content { background: var(--cds-layer-hover-01, #e8e8e8); }
.rx-tree-default-row.rx-tree-view-item.selected > .item-content { background: var(--cds-highlight, #d0e2ff); box-shadow: inset 3px 0 0 var(--cds-button-primary, #0f62fe); }
.rx-tree-default-row:focus-visible,
.rx-tree-default-row .rx-tree-default-toggle:focus-visible { outline: 2px solid var(--cds-focus, #0f62fe); outline-offset: -2px; }
.rx-tree-default-row.rx-tree-view-item .toggle { display: inline-flex; flex: 0 0 24px; align-items: center; justify-content: center; width: 24px; height: 32px; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: inherit; cursor: pointer; }
.rx-tree-default-row .toggle:disabled { cursor: default; }
.rx-tree-default-icon { flex: 0 0 16px; width: 16px; height: 16px; }
.rx-tree-default-row .item-name { flex: 1; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.rx-tree-default-count { padding: 0 8px; color: var(--cds-text-secondary, #525252); font-size: 12px; font-variant-numeric: tabular-nums; }
.rx-tree-view .children.rx-tree-default-children,
.rx-tree-default-children { margin-left: 24px; }

/* ==== 40-components/signin.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css에서 이전됨) */
.sign-header {
height: 40px;
    border-bottom: 1px solid var(--cds-border-tile-01, #c6c6c6);
    background-color: #16161680;
}
.sign-logo {
height: 100%;
    padding-left: 30px;
    padding-top: 8px;
    color: #ED3E24;
    font-weight: 700;
    font-size: 14px;
    cursor: default;
}
.sign-right {
position: relative;
    overflow: hidden;
}
.sign-left {
width: 650px;
    background-color: #16161680;
    z-index: 9;
}
.signin-form-wrap {
width: 532px;
    padding: 96px 16px 0;
}
.signin-title {
font-size: 32px;
    font-weight: 500;
}
.signin-form {
margin-top: 32px;
}
.signin-bottom {
/* IBM 로그인 푸터: 폼 컬럼(532px)과 좌측 정렬, 작은 무채색 텍스트 */
    width: 532px;
    padding: 32px 16px;
    text-align: left;
    color: #6f6f6f;
    font-size: 12px;
}
.signin-bottom .signin-copyright {
font-family: 'IBM Plex Sans KR', sans-serif;
        font-size: 12px;
        font-weight: 400;
        letter-spacing: 0.16px;
        color: #6f6f6f;
}
.promotion-wrap {
height: 330px;
    width: 520px;
    /*background-color: #16161680;*/
}
.promotion-title-wrap {
padding-left: 40px;
    padding-right: 50px;
    padding-top: 80px;
}
.promotion-title {
color: var(--cds-text-secondary, #525252);
    font-size: 36px;
    line-height: 52px;
    font-weight: 500;
}
.promotion-description-wrap {
padding-left: 40px;
    padding-right: 50px;
    padding-top: 38px;
}
.promotion-description {
color: var(--cds-text-secondary, #525252);
    font-size: 28px;
    font-weight: 300;
}
@media (max-width: 1200px) {
.promotion-wrap {
display: none;
}
}
@media (max-width: 991px) {
.sign-wrap {
display: block !important;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 0;
        background-color: #16161680;
}
}
@media (max-width: 991px) {
.sign-container, .signin-form-wrap, .signup-form-wrap {
width: 100% !important;
}
}
@media (max-width: 991px) {
.signin-bottom {
width: 100%;
        max-width: 100%;
}
}
@media (max-width: 991px) {
.signin-form-wrap, .signup-form-wrap {
padding-left: 32px !important;
        padding-right: 32px !important;
}
}
@media (max-width: 991px) {
.sign-left {
background-color: rgba(0,0,0,0);
}
}
@media (max-width: 991px) {
.rw-auth-bg--signal-gravity ~ .dock-wpanel .sign-left {
width: 100% !important;
}
}
@media (max-width: 991px) {
.rw-auth-bg--signal-gravity ~ .dock-wpanel .dock-right.sign-right {
display: none !important;
}
}
@media (max-width: 991px) {
.sign-right {
display: none !important;
}
}

/* ==== 40-components/keyboard.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css에서 이전됨) */
#keyboardzone {
background-color: #ccc;
}
.goja-keyboard {
position: absolute;
    width: 900px;
    align: center;
    visibility: hidden;
    font-size: 25px;
    background-color: moccasin;
}
.goja-keyboard .goja-key-row {
display: flex;
        flex-wrap: nowrap; /* 줄 바꿈 방지 */
        flex-direction: row; /* 가로 방향으로 나열 */
        justify-content: space-around; /* 균등한 간격 */
}
.goja-keyboard .goja-key-row .goja-key {
flex: 1 1 8%; /* 각 키가 동일한 크기를 가지도록 설정 */
            margin: 10px;
            padding: 20px;
            align-content: center;
            text-align: center;
            border-radius: 5px;
            background-color: #ccc;
            color: white;
            font-size: 1.5rem;
            user-select: none;
            transition: background-color 0.3s;
}

/* ==== 40-components/signup.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css에서 이전됨) */
.signup-form-wrap {
width: 532px;
    padding: 80px 16px 0;
}
.signup-title {
font-size: 32px;
    font-weight: 500;
}
.signup-form {
margin-top: 48px;
}

/* ==== 40-components/cds-loading.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
@media (max-width: 760px) {
.company-container .teams-list-wrap .cds-progress-wrap {
width: 100px !important;
}
}
.cds-progress-wrap {
min-width: 0;
}
@media (max-width:760px) {
.projects-container .cds-progress-wrap {
width: 100px !important;
}
}

/* ==== 40-components/rw-file.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.2024.01.css에서 이전됨)
   RwFileUpload — Carbon File uploader 모양. 마크업은 컴포넌트 전용 클래스만 쓰고(벤더 유틸리티 없음) 모양은 여기서 정한다. */
.rw-file-upload-root {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* 업로드 영역: 점선 테두리 드롭존 */
.rw-file-upload-drop {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 48px;
    padding: 8px 16px;
    border: 1px dashed var(--cds-border-strong-01, #8d8d8d);
    background: var(--cds-layer-01, #f4f4f4);
    color: var(--cds-link-primary, #0f62fe);
    font: inherit;
    font-size: 14px;
    cursor: pointer;
    text-align: left;
}

.rw-file-upload-drop:hover {
    background: var(--cds-layer-hover-01, #e8e8e8);
    border-color: var(--cds-link-primary, #0f62fe);
}

.rw-file-upload-drop:focus-visible,
.rw-file-upload-item-main:focus-visible,
.rw-file-upload-item-remove:focus-visible {
    outline: 2px solid var(--cds-focus, #0f62fe);
    outline-offset: -2px;
}

.rw-file-upload-drop-icon,
.rw-file-upload-item-icon,
.rw-file-upload-item-status {
    flex: 0 0 auto;
}

/* 파일 항목: Carbon file item (32px, layer 배경, 오른쪽 상태/삭제) */
.rw-file-upload-item {
    display: flex;
    align-items: center;
    min-height: 32px;
    background: var(--cds-layer-01, #f4f4f4);
    color: var(--cds-text-primary, #161616);
}

.rw-file-upload-item-main {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1 1 auto;
    min-width: 0;
    height: 32px;
    padding: 0 8px 0 16px;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    font-size: 14px;
    text-align: left;
    cursor: pointer;
}

.rw-file-upload-item-main:hover {
    background: var(--cds-layer-hover-01, #e8e8e8);
}

.rw-file-upload-item-name {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rw-file-upload-item-tag {
    flex: 0 0 auto;
    padding: 0 8px;
    height: 18px;
    line-height: 18px;
    font-size: 12px;
    background: var(--cds-tag-background-blue, #d0e2ff);
    color: var(--cds-tag-color-blue, #0043ce);
}

.rw-file-upload-item-status {
    width: 32px;
    height: 32px;
    padding: 8px;
    color: var(--cds-support-success, #24a148);
}

.rw-file-upload-item-remove {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    padding: 8px;
    border: 0;
    background: transparent;
    color: var(--cds-icon-primary, #161616);
    cursor: pointer;
}

.rw-file-upload-item-remove:hover {
    background: var(--cds-layer-hover-01, #e8e8e8);
}

.rw-file-upload-item-remove .carbon-icon,
.rw-file-upload-item-status.carbon-icon {
    display: block;
}

/* 폼 항목(rw-item-container) 안에서는 높이를 줄에 맞춘다 */
.rw-item-container .rw-file-upload {
    min-height: 32px;
    overflow: hidden;
}

.rw-fileupload-image-container {
    max-width: 100%;
    max-height: 200px;
    object-fit: contain;
}

/* task-20 — upload family */
.rw-image-upload-grid { display: grid; grid-template-columns: repeat(auto-fill, 96px); gap: 8px; }
.rw-image-upload-thumb { position: relative; width: 96px; height: 96px; background: var(--cds-layer-hover-01, #e8e8e8); }
.rw-image-upload-thumb .rw-fileupload-image-container { display: block; width: 96px; height: 96px; max-height: 96px; object-fit: cover; }
.rw-image-upload-remove { position: absolute; top: 0; right: 0; z-index: 1; display: flex; align-items: center; justify-content: center; width: 24px; height: 24px; padding: 0; border: 0; border-radius: 0; background: var(--cds-background, #ffffff); color: var(--cds-icon-primary, #161616); cursor: pointer; }
.rw-image-upload-remove:hover { background: var(--cds-layer-hover-01, #e8e8e8); }
.rw-image-upload-remove:focus-visible { outline: 2px solid var(--cds-focus, #0f62fe); outline-offset: -2px; }
.rw-paste-upload-drop:disabled { color: var(--cds-text-disabled, #c6c6c6); cursor: not-allowed; }
.rw-paste-upload-drop.rw-paste-dragover,
.rw-paste-dragover .rw-paste-upload-drop { background: var(--cds-layer-hover-01, #e8e8e8); border-color: var(--cds-focus, #0f62fe); }
.rw-paste-upload-dialog { display: flex; flex-direction: column; gap: 16px; height: 100%; min-height: 0; padding: 16px; }
.rw-paste-upload-title { margin: 0 0 8px; font: inherit; font-size: 16px; color: var(--cds-text-primary, #161616); }
.rw-paste-upload-helper { margin: 0; font-size: 12px; color: var(--cds-text-helper, #6f6f6f); }
.rw-paste-upload-list { display: flex; flex: 1 1 auto; flex-direction: column; gap: 8px; min-height: 0; max-height: 350px; overflow: auto; }
.rw-paste-upload-empty { padding: 16px; color: var(--cds-text-helper, #6f6f6f); text-align: center; }
.rw-paste-upload-item { flex-shrink: 0; gap: 8px; padding: 8px; }
.rw-paste-upload-preview { width: 32px; height: 32px; object-fit: cover; }
.rw-paste-upload-details { flex: 1; min-width: 0; }
.rw-paste-upload-progress { display: flex; align-items: center; gap: 8px; color: var(--cds-text-secondary, #525252); font-size: 14px; }
.rw-paste-upload-spinner { flex-shrink: 0; color: var(--cds-button-primary, #0f62fe); animation: rw-paste-upload-spin 1s linear infinite; }
@keyframes rw-paste-upload-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .rw-paste-upload-spinner { animation: none; } }
.rw-paste-upload-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: auto; }

.rw-paste-upload-actions .cds-btn { flex: 0 0 auto; align-items: center; width: auto; min-width: 96px; height: 48px; min-height: 48px; padding: 0 16px; }

.rw-paste-upload-preview-list { margin-top: 8px; }

/* ==== 40-components/v2.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/echo/css/echo-chat.css에서 이전됨) */
.v2-general-page .image-preview-section {
background-color: var(--cds-field, #ffffff) !important;
    border-bottom: none !important;
    position: absolute;
    bottom: 45px;
    padding-bottom: 18px !important;
    width: 100%;
    z-index:9;
}
.v2-general-page .image-preview-item {
border: none !important;
    padding: 0 !important;
}
.v2-general-page .image-info {
background-color: var(--cds-layer-02, #e0e0e0) !important;
    color: var(--cds-text-primary, #161616) !important;
    left: 0 !important;
    right: 0 !important;
    word-break: break-all;
    padding: 2px 18px 2px 6px;
}

/* ==== 40-components/rw-form.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.rw-bridge.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.rw-textbox-markdown-output pre {
padding: 8px;
    background-color: rgba(var(--bs-gray-200-rgb), 0.8);
    border-radius: 2px;
}
.rw-textbox-markdown-output code {
font-family: Consolas, "Courier New", monospace;
}
.rw-textbox-view,
button.rw-textbox-inline-editor,
span.rw-textbox-inline-editor {
display: inline-flex;
    align-items: center;
    width: 100%;
    min-height: 32px;
    color: var(--cds-text-primary);
    font: inherit;
    line-height: 1.4;
    overflow-wrap: anywhere;
}
button.rw-textbox-inline-editor {
appearance: none;
    justify-content: space-between;
    gap: 8px;
    padding: 0 8px;
    border: 1px solid transparent;
    background: transparent;
    text-align: left;
    cursor: text;
    transition: background-color 0.5s ease;
}
button.rw-textbox-inline-editor:hover {
background: var(--cds-layer-hover-01);
}
button.rw-textbox-inline-editor:focus-visible {
outline: 2px solid var(--cds-focus);
    outline-offset: -2px;
}
.rw-textbox-inline-editor__action {
flex: 0 0 auto;
/*    margin-left: auto;*/
    opacity: 0;
}
.rw-textbox-inline-editor__action::before {
content: "\270e";
}
button.rw-textbox-inline-editor:hover .rw-textbox-inline-editor__action,
button.rw-textbox-inline-editor:focus-visible .rw-textbox-inline-editor__action {
opacity: 1;
}
.rw-textbox-mode-empty {
color: var(--cds-text-placeholder);
}
.rw-textbox-input.rw-textbox-inline-editor.rw-textbox-editing {
outline: 2px solid var(--cds-focus);
    outline-offset: -2px;
}
button.rw-textbox-inline-editor.inline-editor-center {
justify-content: center !important;
    margin-left: 10px;
}
.rw-textbox::placeholder {
color: var(--bs-text-gray-600);
        font-style: italic;
        opacity: 0.9;
}
.rw-item-container .rw-item-content .rw-textbox {
padding: 3px 10px;
        height: 26px;
        min-height: 26px;
        font-size: 12px;
        font-weight: 400;
        border-radius: 0;
        border: 1px solid rgba(var(--bs-gray-300-rgb), 1);
        width: 100%;
}
.rw-textbox-switch {
padding-left: -46px !important;
    margin: 0 !important
}
.rw-textbox-switch .form-check-input {
width: 60px;
        height: 20px;
        transition: all 0.3s ease !important;
}
.rw-textbox-switch .form-check-label {
margin: 0 !important;
        padding: 0 !important;
        /*    margin-left: 0.5rem;
    font-size: 0.875rem;*/
}
.rw-textbox-switch .form-check-input:focus {
box-shadow: 0 0 0 0.25rem rgba(255, 0, 0, 0.25); /* 빨간색으로 변경 */
}
.rw-textbox-checkbox:checked::after {
/*content: '\2714';*/ /* 체크 표시 유니코드 */
            font-size: 12px;
            color: white;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
}
.rw-textbox-label {
width: auto;
    color: var(--bs-text-gray-700);
    font-size: 12px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.wvs-echo-content .rw-textbox,
.wvs-echo-content .rw-combobox-container .rw-textbox,
.wvs-echo-content .cds-combobox,
.rw-window.cds-rw-window .rw-textbox {
font-size: 14px;
}
input.carbon-textbox {
border: none !important;
border-bottom: 1px solid var(--carbon-textbox-border-bottom, #8d8d8d) !important;
padding: 7px 10px;
font-size: 12px;
color: var(--cds-text-primary, #161616);
}
input.carbon-textbox-white {
background-color: var(--cds-field, #ffffff) !important;
}
.carbon-textbox::placeholder {
color: var(--cds-text-placeholder, #a8a8a8) !important;
    font-style: unset;
    font-size: 12px;
}
textarea.carbon-textbox:disabled {
background-color: rgba(0,0,0,0) !important;
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
    border-top: 1px solid transparent !important;
    border-left: 1px solid transparent !important;
    border-right: 1px solid transparent !important;
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.carbon-textarea::placeholder {
color: var(--cds-text-placeholder, #a8a8a8);
        font-style: unset;
        font-size: 12px;
}
.carbon-textarea:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px !important;
}
.cds-textql {
font-family: var(--ww-font-base, var(--ww-font-ibm-sans-kr), sans-serif);
    background-color: var(--cds-rw-ctrl-bg) !important; /* 해당 소스 주석 시 초기 랜더링 됨.*/
    border: none !important;
    border-bottom: 1px solid var(--cds-border-strong-01, #8d8d8d) !important;
    padding: 7px 10px;
    border-bottom-right-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}
.cds-textql .ql-editor {
padding: 0 !important;
        min-height: 180px;
        color: var(--cds-text-primary, #161616);
}
.cds-textql .ql-editor:focus {
outline: none !important;
            outline-offset: 0 !important;
}
.cds-textql:focus-within {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
}
.cds-filter-container .rw-textbox.rw-textbox-input, 
    .cds-filter-container .cds-toolbar-btn {
height: 40px !important;
}
.rw-textbox-checkbox-container input:disabled + .rw-textbox-label {
color: var(--cds-text-disabled, #16161625) !important;
    cursor: not-allowed;
}
.carbon-switch .form-check-input {
background-color: var(--cds-toggle-off, #e0e0e0) !important;
        width: 48px;
        height: 24px;
}
.carbon-switch .form-check-input:focus {
outline: 2px solid var(--cds-focus,#0f62fe);
            outline-offset: 1px;
            box-shadow: none !important;
}
.carbon-switch .form-check-input:disabled {
cursor: not-allowed;
}
.carbon-switch .form-switch {
padding-left: 48px !important;
}
.carbon-switch-small .form-check-input {
width: 32px !important;
        height: 16px !important;
}
.signin-form input.carbon-textbox {
/* IBM g100 필드 문법: 입력은 배경과 분리된 회색 블록 + 하단 보더 */
        background-color: #393939 !important;
        border-bottom: 1px solid #6f6f6f;
        color: #f4f4f4;
}
.signin-form input.carbon-textbox::placeholder {
color: #8d8d8d;
}
input.carbon-textbox {
background-color: var(--cds-rw-ctrl-bg) !important;
}
.company-container .cds-textql .ql-editor {
min-height: 25px !important;
}
.request-container textarea.form-control {
padding: 1.5rem 1rem;
}
.request-container .form-control.request-input {
color: var(--cds-text-primary, #161616);
}
[data-editor] .rw-textbox-editing.ticket-viewer-inline-editor {
padding: 0;
}
.rw-textbox-mode__value--html, .thread-content {
display: block;
    font-size: 14px;
    line-height: 1.6;
    color: var(--cds-text-primary, #161616);
    word-break: break-word;
    white-space: normal;
}
.rw-textbox-mode__value--html p,
.thread-content p {
margin: 0 0 0.5rem;
}
.rw-textbox-mode__value--html ul,
.rw-textbox-mode__value--html ol,
.thread-content ul,
.thread-content ol {
margin: 0 0 0.5rem;
    padding-left: 1.5rem;
}
.rw-textbox-mode__value--html li,
.thread-content li {
margin: 0.125rem 0;
}
.rw-textbox-mode__value--html li > p,
.thread-content li > p {
margin: 0;
}
.rw-textbox-mode__value--html h1,
.rw-textbox-mode__value--html h2,
.rw-textbox-mode__value--html h3,
.rw-textbox-mode__value--html h4,
.thread-content h1,
.thread-content h2,
.thread-content h3,
.thread-content h4 {
margin: 0.75rem 0 0.5rem;
    font-weight: 600;
    line-height: 1.4;
}
.rw-textbox-mode__value--html strong,
.thread-content strong {
font-weight: 600;
}
.rw-textbox-mode__value--html blockquote,
.thread-content blockquote {
margin: 0 0 0.5rem;
    padding: 0.25rem 0 0.25rem 0.75rem;
    border-left: 3px solid var(--cds-border-strong-01, #8d8d8d);
    color: var(--cds-text-secondary, #525252);
}
.rw-textbox-mode__value--html blockquote p,
.thread-content blockquote p {
margin: 0;
}
.rw-textbox-mode__value--html code,
.thread-content code {
font-family: var(--cds-code-01-font-family, 'IBM Plex Mono', monospace);
    font-size: 0.9em;
}
.rw-textbox-mode__value--html :not(pre) > code,
.thread-content :not(pre) > code {
padding: 0.0625rem 0.25rem;
    background: var(--cds-layer-02, #f4f4f4);
    border-radius: 3px;
}
.rw-textbox-mode__value--html img,
.thread-content img {
max-width: 100%;
    height: auto;
    border-radius: 4px;
}
.rw-textbox-inline-editor:hover {
background-color: var(--cds-rw-ctrl-bg) !important;
}

/* ==== 40-components/request.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.request-content:has(.request-input:focus) {
outline: 2px solid var(--cds-focus, #0f62fe);
    outline-offset: -2px;
}
.request-container .request-content {
background-color: var(--cds-field, #ffffff);
    border-radius: 8px !important;
    border: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.request-container .request-input {
background-color: transparent;
    resize: none;
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
    border: 0;
    width: 100%;
}
.request-container .request-input::placeholder {
color: var(--cds-text-placeholder, #a8a8a8) !important;
    font-size: 14px;
}
.request-container .request-input:focus {
background-color: transparent;
    outline: none !important;
    border: none !important;
    box-shadow: none;
}
.request-container .request-content button {
border: 0 solid;
    background-color: transparent !important;
    outline: none;
}

/* ==== 40-components/cds-button.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell-compat.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.cds-search-icon .cds-btn-icon {
color: var(--cds-icon-primary, #161616);
        position: unset !important;
}
.cds-toolbar-btn .cds-btn-icon {
position: unset !important;
}
.cds-btn-lg {
width: 100%;
    height: 50px !important;
    padding: 17px 16px !important;
}
.cds-btn-primary {
position: relative;
    border: 1px solid transparent;
    background-color: var(--cds-primary, #0f62fe);
    color: var(--cds-text-on-color, #ffffff);
}
.cds-btn-tertiary {
position: relative;
    border-style: solid;
    border-color: var(--cds-button-primary, #0f62fe);
    background-color: unset;
    color: var(--cds-button-primary, #0f62fe);
}
.cds-btn-tertiary:hover {
background-color: var(--cds-button-tertiary-hover, #0353e9);
        color: var(--cds-text-on-color, #ffffff);
}
.cds-btn-tertiary:focus, .cds-btn-tertiary:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
        box-shadow: inset 0 0 0 1px var(--cds-focus, #0f62fe),inset 0 0 0 2px var(--cds-white-color, #FFFFFF);
}
.cds-btn-ghost:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
        box-shadow: inset 0 0 0 1px var(--cds-focus, #0f62fe),inset 0 0 0 2px var(--cds-white-color, #FFFFFF);
}
.cds-btn-secondary {
position: relative;
    border-style: solid;
    border-color: rgba(0, 0, 0, 0);
    background-color: var(--cds-button-secondary, #393939);
    color: var(--cds-text-on-color, #ffffff);
}
.cds-btn-tertiary-secondary {
position: relative;
    border-style: solid;
    border-color: var(--cds-button-secondary, #393939);
    background-color: unset;
    color: var(--cds-button-secondary, #393939);
}
.cds-btn-tertiary-secondary:hover {
background-color: var(--cds-button-secondary, #393939) !important;
        color: var(--cds-text-on-color, #ffffff);
}
.cds-btn-tertiary-secondary:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
        box-shadow: inset 0 0 0 1px var(--cds-focus, #0f62fe),inset 0 0 0 2px var(--cds-white-color, #FFFFFF);
}
.cds-btn-tertiary-secondary:active {
background-color: var(--cds-button-secondary-active, #6F6F6F);
}
.cds-btn-ghost-secondary {
position: relative;
    border-style: solid;
    border-color: transparent;
    background-color: transparent;
    color: var(--cds-button-secondary, #393939);
}
.cds-btn-ghost-secondary:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
        box-shadow: inset 0 0 0 1px var(--cds-focus, #0f62fe),inset 0 0 0 2px var(--cds-white-color, #FFFFFF);
}
.cds-btn-danger:hover {
background-color: var(--cds-button-danger-hover, #b81921);
}
.cds-btn-danger:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
        box-shadow: inset 0 0 0 1px var(--cds-focus, #0f62fe),inset 0 0 0 2px var(--cds-white-color, #FFFFFF);
}
.cds-btn-danger:active {
background-color: var(--cds-button-danger-active, #750e13);
}
.cds-btn-tertiary-danger {
position: relative;
    border-style: solid;
    border-color: var(--cds-button-danger-primary, #da1e28);
    background-color: unset;
    color: var(--cds-button-danger-primary, #da1e28);
}
.cds-btn-tertiary-danger:hover {
background-color: var(--cds-button-danger-hover, #b81921) !important;
        color: var(--cds-text-on-color, #ffffff);
}
.cds-btn-tertiary-danger:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
        box-shadow: inset 0 0 0 1px var(--cds-focus, #0f62fe),inset 0 0 0 2px var(--cds-white-color, #FFFFFF);
}
.cds-btn-tertiary-danger:active {
background-color: var(--cds-button-danger-active, #750e13);
}
.cds-btn-ghost-danger {
position: relative;
    border-width: 1px;
    border-style: solid;
    border-color: transparent;
    background-color: transparent;
    color: #da1e28;
}
.cds-btn-icon {
position: absolute;
    right: 12px;
}
.cds-icon-btn {
position: relative;
    /*border-width: 1px;*/
    border-style: solid;
    border-color: transparent;
    background-color: transparent;
    color: var(--cds-text-primary, #161616);
    padding: 8px 16px;
    font-size: 12px;
    flex-shrink: 0;
    white-space: nowrap;
}
.cds-icon-btn:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
        /*        box-shadow: none !important;
        border: 2px solid var(--cds-focus, #0f62fe);*/
}
.cds-btn-set {
gap: 1px;
    flex-direction: row-reverse;
    /*    border-block-start: 1px solid var(--cds-border-subtle-01, #e0e0e0);*/
}
.cds-btn-set .cds-form-btn-primary.cds-btn-box {
border: 0 !important;
        position: relative;
        z-index: 2;
        box-shadow: 0 -1px 0 var(--cds-primary), 0 1px 0 var(--cds-primary);
}
.cds-btn-footer {
gap: 1px;
    box-sizing: initial;
    flex-direction: row-reverse;
    justify-content: flex-end;
    /*    border-block-start: 1px solid var(--cds-border-subtle-01, #e0e0e0);*/
    inline-size: 100%;
}
.cds-btn-left {
display: flex;
    flex: 1;
    border-block-start: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-btn-left div {
flex: 1;
}
.cds-btn-right {
flex: 0 1 auto;
    width: 50%;
    margin-inline-start: auto;
    border-block-start: 1px solid transparent;
}
.cds-btn-right-set {
display: flex;
    flex: 0 1 auto;
    width: 50%;
    gap: 1px;
    flex-direction: row-reverse;
    margin-inline-start: auto;
    border-block-start: 1px solid transparent;
}
.cds-btn-right-set div {
flex: 1;
}
.cds-btn-right-set button {
padding-block-end: 32px;
}
.app-navbar-item .cds-icon-btn {
padding: 10px !important;
    cursor: pointer;
}
.cds-btn-icon-only-32px.cds-btn-hover-primary:hover {
background-color: var(--cds-primary) !important;
    color: var(--cds-white-color);
}
.teams-avatar .cds-btn-icon {
position: unset;
    display: block;
}
.teams-card .teams-avatar .cds-btn-icon {
position: unset;
    display: block;
}
.cds-comment-wrap .item-comment .cds-btn-secondary:hover {
background-color: var(--cds-background-hover, #8d8d8d12) !important;
}
.overview-container .cds-icon-btn {
padding: 14px 16px !important;
}
/* ghost 버튼은 비활성일 때도 배경/테두리가 투명해야 한다(Carbon). .cds-btn:disabled(:hover) 가 쓰는 변수만 바꿔 !important 없이 덮는다. v2 전용. */
.cds-btn-ghost:disabled {
    --csd-button-disabled: transparent;
}

/* RwButton(Carbon) 보완 — 2026-09-22
   1) Kind + IconOnly: .cds-btn-icon-only-32px(90-compat/order-fixes.css)가 배경을 투명으로 만들어 primary/secondary/danger/tertiary 의
      흰 아이콘이 안 보인다. Kind 가 붙은 icon-only 는 Kind 의 배경/색/테두리를 유지하고 크기만 32px 정사각으로.
      (order-fixes 가 뒤에 로드되므로 명시도를 두 클래스로 올린다. ghost 계열은 원래 투명이라 대상 아님) */
.cds-btn.cds-btn-primary.cds-btn-icon-only-32px,
.cds-btn.cds-btn-secondary.cds-btn-icon-only-32px,
.cds-btn.cds-btn-danger.cds-btn-icon-only-32px,
.cds-btn.cds-btn-tertiary.cds-btn-icon-only-32px,
.cds-btn.cds-btn-tertiary-danger.cds-btn-icon-only-32px {
    width: 32px;
    min-width: 32px;
    height: 32px;
    padding: 0;
    justify-content: center;
}
.cds-btn.cds-btn-primary.cds-btn-icon-only-32px { background-color: var(--cds-button-primary, #0f62fe); color: var(--cds-text-on-color, #ffffff); }
.cds-btn.cds-btn-secondary.cds-btn-icon-only-32px { background-color: var(--cds-button-secondary, #393939); color: var(--cds-text-on-color, #ffffff); }
.cds-btn.cds-btn-danger.cds-btn-icon-only-32px { background-color: var(--cds-button-danger-primary, #da1e28); color: var(--cds-text-on-color, #ffffff); }
.cds-btn.cds-btn-tertiary.cds-btn-icon-only-32px { border: 1px solid var(--cds-button-primary, #0f62fe); color: var(--cds-button-primary, #0f62fe); }
.cds-btn.cds-btn-tertiary-danger.cds-btn-icon-only-32px { border: 1px solid var(--cds-button-danger-primary, #da1e28); color: var(--cds-button-danger-primary, #da1e28); }
.cds-btn.cds-btn-primary.cds-btn-icon-only-32px:hover { background-color: var(--cds-button-primary-hover, #0353e9); }
.cds-btn.cds-btn-secondary.cds-btn-icon-only-32px:hover { background-color: var(--cds-button-secondary-hover, #474747); }
.cds-btn.cds-btn-danger.cds-btn-icon-only-32px:hover { background-color: var(--cds-button-danger-hover, #b81921); }

/* 2) Small 크기(Carbon sm = 32px 은 이미 기본. Carbon 의 xs 24px 를 cds-btn-sm 으로 제공) + 로딩 상태 */
.cds-btn.cds-btn-sm { height: 24px; min-height: 24px; padding: 3px 12px; font-size: 12px; line-height: 16px; }
.cds-btn.cds-btn-sm.cds-btn-icon-only-32px { width: 24px; min-width: 24px; height: 24px; }
.cds-btn[aria-busy="true"] { pointer-events: none; opacity: .8; }
.cds-btn .cds-btn-spinner { width: 16px; height: 16px; flex: 0 0 16px; animation: ww-btn-spin 0.9s linear infinite; }
@keyframes ww-btn-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .cds-btn .cds-btn-spinner { animation-duration: 3s; } }

/* ==== 40-components/rw-toolbar.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.rw-bridge.css에서 이전됨) */
.cds-rw-grid-toolbar-container .rw-grid-multi-banner {
background-color: var(--cds-primary, ##0f62fe);
    margin: 0;
    padding: 0;
    border-radius: 0;
    height: 40px;
}
.cds-rw-grid-toolbar-container .rw-grid-multi-banner__left {
padding-left:12px;
}
.cds-rw-grid-toolbar-container .rw-grid-multi-banner__right {
position: relative;
}
.cds-rw-grid-toolbar-container .rw-grid-multi-banner__right .rw-grid-multi-banner__clear {
border: none;
    border-radius: 0;
    color: var(--cds-text-on-color, #ffffff);
    background: none;
    font-size: 12px;
    padding: 13px;
}
.cds-rw-grid-toolbar-container .rw-grid-multi-banner__right .rw-grid-multi-banner__clear:hover {
background-color: var(--cds-button-primary-hover, #0353e9);
}
.cds-rw-grid-toolbar-container .rw-grid-multi-banner__right .rw-grid-multi-banner__clear:active,
    .cds-rw-grid-toolbar-container .rw-grid-multi-banner__right .rw-grid-multi-banner__clear:focus {
outline: 2px solid #ffffff !important;
        outline-offset: -2px;
}
.cds-rw-grid-toolbar-container .rw-grid-multi-banner__right .rw-grid-multi-banner__clear:before {
position: absolute;
        display: block;
        border: none;
        background-color: var(--cds-text-on-color, #ffffff);
        block-size: 16px;
        content: "";
        inline-size: 1px;
        inset-block-start: 11px;
        inset-inline-start: 0;
        opacity: 1;
        transition: opacity .11s cubic-bezier(.2,0,.38,.9);
}
.cds-filter-container .cds-toolbar-btn.cds-toolbar-btn-box {
border: 0 !important;
        position: relative;
        z-index: 2;
        box-shadow: 0 -1px 0 var(--cds-primary), 0 1px 0 var(--cds-primary);
}
.rw-grid-toolbar-container.cds-rw-grid-toolbar-container {
padding: 0 !important;
}
.cds-rw-grid-toolbar-container .cds-autocompleted .input-container {
height: 40px !important;
}
.cds-rw-grid-toolbar-container .cds-autocompleted input.autocomplete-input {
background-color: var(--cds-rw-ctrl-bg) !important;
    height: 40px !important;
    border-bottom: 0 !important;
    border-radius: 0 !important;
    border-right: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-rw-grid-toolbar-container .dock-right .cds-autocompleted input.autocomplete-input {
border-left: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-rw-grid-toolbar-container .cds-autocompleted input.autocomplete-input::placeholder {
font-family: var(--ww-font-base, var(--ww-font-ibm-sans-kr), sans-serif);
        color: var(--cds-text-placeholder, #a8a8a8) !important;
        font-style: unset;
        font-size: 12px;
        font-weight: 400;
}
.cds-rw-grid-toolbar-container .cds-autocompleted input.autocomplete-input:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
}
.cds-toolbar-search {
flex: 1;
        position: relative;
}
.cds-toolbar-search .cds-search-input-wrap {
padding-left: 4px; /* 페이지 전체 좌측 여백 맞추기(총 16px) */
}
.cds-toolbar-search:has(.cds-search-input-wrap input.carbon-textbox:hover) {
background-color: var(--cds-background-hover, #8d8d8d12) !important;
}
.cds-toolbar-search:has(.cds-search-input-wrap input.carbon-textbox:hover) .cds-search-icon,
    .cds-toolbar-search:has(.cds-search-input-wrap input.carbon-textbox:hover) input.carbon-textbox {
background-color: transparent !important;
}
.cds-toolbar-action {
display: flex;
    align-items: center;
    background-color: var(--cds-rw-ctrl-bg);
}
.cds-toolbar-action button:active, .cds-toolbar-action button:active,
    .cds-toolbar-action button:focus, .cds-toolbar-action button:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px !important;
}
.cds-toolbar-btn:active, .cds-toolbar-btn:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px !important;
}
.cds-rw-grid-toolbar-container .cds-toolbar-search input.carbon-textbox {
background: transparent !important;
    height: 100%;
}
.cds-rw-grid-toolbar-container .cds-toolbar-btn,
.cds-rw-grid-toolbar-container .cds-toolbar-action {
/*    background: transparent;*/
    background-color: var(--cds-rw-ctrl-bg);
}
.cds-rw-grid-toolbar-container .cds-toolbar-statebar.autocomplete-tagify {
flex-wrap: nowrap !important;
    gap: 8px !important;
    min-width: 0;
    width: 100%;
    overflow: hidden;
}
.cds-rw-grid-toolbar-container .cds-toolbar-statebar .autocomplete-selected-tag {
display: inline-flex;
    align-items: center;
    gap: 8px;
    flex: 0 1 auto;
    min-width: 0;
    max-width: 280px;
}
.cds-rw-grid-toolbar-container .cds-toolbar-statebar {
align-items: center;
    display: flex;
    padding-left: 116px !important;
    height: 100%;
}
.cds-rw-grid-toolbar-container .cds-toolbar-statebar .tag {
min-height: 24px;
    border-radius: 2px !important
}
.cds-rw-grid-toolbar-container .cds-toolbar-statebar .input-container {
display: none !important;
}
.cds-rw-grid-toolbar-container .cds-toolbar-statebar button {
flex: 0 0 auto;
}
.cds-rw-grid-root .cds-rw-grid-toolbar-container {
background: var(--cds-rw-ctrl-bg);
}
.cds-bg-light>.cds-rw-grid-root .cds-rw-grid-toolbar-container {
background: var(--cds-field-01);
}
.cds-rw-grid-toolbar-container .rw-grid-statebar {
display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    height: 40px;
    padding: 0 12px;
    overflow: hidden;
}
.cds-rw-grid-toolbar-container .rw-grid-statebar__chip,
.cds-rw-grid-toolbar-container .rw-grid-statebar__more {
display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    max-width: 240px;
    height: 32px;
    padding: 0 12px;
    border: 1px solid var(--cds-border-subtle, #c6c6c6);
    background: var(--cds-layer, #f4f4f4);
    color: var(--cds-text-primary, #161616);
    font-size: 12px;
    line-height: 1;
}
.cds-rw-grid-toolbar-container .rw-grid-statebar__chip {
cursor: pointer;
}
.cds-rw-grid-toolbar-container .rw-grid-statebar__chip:hover {
background: var(--cds-layer-hover, #e8e8e8);
}
.cds-rw-grid-toolbar-container .rw-grid-statebar__label {
min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.cds-rw-grid-toolbar-container .rw-grid-statebar__remove {
flex: 0 0 auto;
    color: var(--cds-text-secondary, #525252);
    font-size: 11px;
}
.rw-grid-root.cds-rw-grid-root .rw-grid-toolbar-container:has(> *) {
min-height: 40px;
    color: var(--cds-text-primary);
}
.rw-grid-root.cds-rw-grid-root .cds-toolbar-search {
flex: 1 1 auto; transition: flex-basis .15s;
}
.cds-rw-grid-toolbar-container > .dock-wpanel > .dock-right:not(.cds-toolbar-action) {
border-left: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-rw-grid-toolbar-container > .dock-wpanel > .dock-left:not(:empty) {
border-right: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-rw-grid-toolbar-container > .dock-wpanel > :is(.dock-left, .dock-right):has(> .d-none:only-child) {
border: 0;
}
.cds-rw-grid-toolbar-container > .dock-wpanel > .dock-right > .text-nowrap.flex-shrink-0.px-2 {
min-width: 88px;
    justify-content: center;
    padding-left: 12px !important;
    padding-right: 12px !important;
}
.cds-rw-grid-toolbar-container > .dock-wpanel > .dock-content,
.cds-rw-grid-toolbar-container .cds-search-input-wrap > .dock-content {
overflow: hidden;
}
.cds-rw-grid-toolbar-container > .dock-wpanel > .dock-right:not(.cds-toolbar-action),
.cds-rw-grid-toolbar-container > .dock-wpanel > .dock-left {
flex: 0 1 auto;
    min-width: 0;
    overflow: hidden;
}

/* 툴바 배치(2026-09-23): 검색 칸이 0 까지 줄어 사라지던 문제.
   검색은 dock-content 안에 있고 그룹/상태/건수/버튼은 dock-right 라, 좁아지면 dock-content 만 0 이 된다.
   → 검색 칸에 최소 폭을 준다. 두 줄 배치는 모바일의 좁은 툴바에만 적용한다. */
.cds-rw-grid-toolbar-container {
    container: ww-grid-toolbar / inline-size;
}

.cds-rw-grid-toolbar-container > .dock-wpanel > .dock-right { min-width: 0; }

/* 그룹 입력은 작게 시작하고 선택한 태그에 따라 기존 최대 400px까지 늘어난다. */
.cds-rw-grid-toolbar-container .mw-400px:has(> .cds-autocompleted) {
    min-width: 130px;
}

.cds-rw-grid-toolbar-container .mw-400px > .cds-autocompleted .autocomplete-input {
    width: 130px;
    min-width: 0;
    max-width: 100%;
}

/* 좁은 분할 패널에서는 상태 표시보다 검색, 그룹 선택, 작업 버튼을 우선한다.
   상태의 바깥 dock 칸까지 숨겨 빈 공간과 구분선도 남기지 않는다. */
@container ww-grid-toolbar (max-width: 719.98px) {
    .cds-rw-grid-toolbar-container > .dock-wpanel > .dock-content {
        min-width: 160px;
    }

    .cds-rw-grid-toolbar-container > .dock-wpanel > .dock-right:has(.cds-toolbar-statebar) {
        display: none;
    }
}

@media (max-width: 1023.98px) {
@container ww-grid-toolbar (max-width: 719.98px) {
    .cds-rw-grid-toolbar-container > .dock-wpanel {
        flex-wrap: wrap;
        height: auto;
    }

    .cds-rw-grid-toolbar-container > .dock-wpanel > .dock-content,
    .cds-rw-grid-toolbar-container > .dock-wpanel > .dock-content.cds-toolbar-search {
        flex: 1 1 100% !important;
        order: -1;
    }

    .cds-rw-grid-toolbar-container > .dock-wpanel > .dock-right { flex: 1 1 25%; min-width: 132px; max-width: 32%; }

    .cds-rw-grid-toolbar-container > .dock-wpanel > .dock-right.cds-toolbar-action { flex: 0 0 auto; margin-left: auto; }

    .cds-rw-grid-toolbar-container .autocomplete-container .rx-autocomplete-input-grow { flex: 1 1 60px; }
}
}

/* ==== 40-components/cds-form.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.foundation.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.sample.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.cds-slider-container {
max-height: calc(100vh - 96px);
}
@media( min-width: 1023px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
@media (min-width: 1024px) {

}
.cds-label-disabled {
font-size: 12px;
    font-weight: 400;
    margin-block-end: 8px;
    color: var(--cds-text-disabled, #16161625);
}
.cds-control-wrap.cds-xs-label .cds-label {
margin-bottom: 2px !important;
}
.cds-control-wrap.cds-s-label .cds-label {
margin-bottom: 4px !important;
}
.cds-control-wrap.cds-m-label .cds-label {
margin-bottom: 8px !important;
}
.cds-control-wrap.cds-control-fluid .carbon-textbox:focus,
        .cds-control-wrap.cds-control-fluid .carbon-textarea:focus,
        .cds-control-wrap.cds-control-fluid .cds-combobox:not(.disabled):focus-within,
        .cds-control-wrap.cds-control-fluid .cds-autocompleted .input-container.focused,
        .cds-control-wrap.cds-control-fluid .cds-textql:focus-within {
outline: 0px solid var(--cds-focus, #0f62fe) !important;
            outline-offset: 0 !important;
}
.cds-control-wrap.cds-control-fluid .cds-combobox:focus,
        .cds-control-wrap.cds-control-fluid .cds-combobox:active
        .cds-control-wrap.cds-control-fluid .cds-textql:focus-within {
outline: 0px solid var(--cds-focus, #0f62fe) !important;
            outline-offset: 0 !important;
}
.cds-control-wrap.cds-control-fluid:has(.autocomplete-multi-selector)::before {
content: "";
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0; /* inset: 0; 과 같음 → 바깥으로 안 나감 */
            box-sizing: border-box;
            border: 0px solid var(--cds-focus, #0f62fe) !important;
            border-top: 2px solid var(--cds-focus, #0f62fe) !important;
            pointer-events: none;
            z-index: 10; /* 안쪽 input 보다 위로 */
            opacity: 0; /* 기본은 숨김 */
}
.cds-control-wrap.cds-control-fluid:focus-within:has(.autocomplete-multi-selector) .cds-label {
border-left: 2px solid var(--cds-focus, #0f62fe) !important;
            border-right: 2px solid var(--cds-focus, #0f62fe) !important;
}
.cds-control-wrap.cds-control-fluid:focus-within:has(.autocomplete-multi-selector) .input-container {
border-left: 2px solid var(--cds-focus, #0f62fe) !important;
            border-right: 2px solid var(--cds-focus, #0f62fe) !important;
            border-bottom: 2px solid var(--cds-focus, #0f62fe) !important;
}
.cds-control-wrap.cds-control-fluid:focus-within::before {
opacity: 1;
}
.cds-control-wrap.cds-control-fluid .carbon-textarea {
border-bottom: 0 !important;
}
.cds-text-input {
flex: 1 1 auto;
    min-width: 0;
}
.cds-input-horizon {
display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
}
.cds-search {
position: relative;
    width: 100%;
    /*  display: flex;
    align-items: center;
    inline-size: 100%;*/
}
.cds-search-input-wrap {
display: flex;
}
.cds-search-input-wrap input.carbon-textbox:focus,
.cds-search-input-wrap input.carbon-textbox:active {
outline: none !important;
}
.cds-search-input-wrap:focus-within {
outline: 2px solid var(--cds-focus, #0f62fe);
    outline-offset: -2px;
}
.cds-filter-container .cds-search-input-wrap {
position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-left: 4px; /* 페이지 전체 좌측 여백 맞추기(총 16px) */
    /*background-color: var(--cds-layer-01, #f4f4f4);*/
}
.cds-filter-container .cds-search-input-wrap input.carbon-textbox {
/* 내부 여백 */
    padding: 8px 16px 8px 8px;
}
.cds-filter-container .cds-date-input-wrap {
position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-left: 4px; /* 페이지 전체 좌측 여백 맞추기(총 16px) */
}
.cds-filter-container .cds-date-input-wrap:focus-within {
    outline: 2px solid var(--cds-focus);
    outline-offset: -2px;
}
.cds-filter-container .cds-date-input-wrap input.carbon-textbox {
/* 내부 여백 */
        padding: 8px 16px 8px 8px;
}
.cds-filter-container .cds-date-input-wrap input.carbon-textbox:active, .cds-filter-container .cds-date-input-wrap input.carbon-textbox:focus {
outline:0 !important;
}
.cds-filter-container .cds-date-icon {
border-bottom: 0 !important;
    width: 32px;
    height: 32px;
    left: 0;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1;
    color: var(--cds-icon-primary, #161616);
    border-bottom: 1px solid var(--carbon-textbox-border-bottom, #8d8d8d);
}
@media (max-width: 1023px) {
.cds-filter-container > .dock-left.cds-filter-wrap > .cds-combobox {
flex: 1 1 100% !important;
            height: 40px;
            /*            border-bottom: 1px solid var(--cds-gray-300) !important;*/
}
}
.cds-grid-search .cds-search-input-wrap:has(input.carbon-textbox:hover) {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
}
.cds-grid-search .cds-search-input-wrap input.carbon-textbox:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
}
.cds-search-input-wrap input.carbon-textbox:active, .cds-search-input-wrap input.carbon-textbox:focus {
outline: 0px;
    outline-offset: 0;
}
.cds-search-icon {
width: 32px;
    height: 32px;
    left: 0;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1;
    color: var(--cds-icon-primary, #161616);
    border-bottom: 1px solid var(--carbon-textbox-border-bottom, #8d8d8d);
    background-color: transparent !important;
}
.cds-combobox .options-container .option-item {
/* border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important; */
        border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
        background-color: var(--cds-rw-ctrl-bg);
}
.cds-combobox .options-container .option-item:hover {
background-color: var(--cds-layer-hover, #e8e8e8);
            font-weight: inherit;
            color: var(--cds-text-primary, #161616);
}
.cds-combobox .options-container .option-item.selected {
outline: 2px solid var(--cds-focus, #0f62fe);
            outline-offset: -2px;
            margin-top: -2px;
            color: var(--cds-text-primary, #161616);
            background-color: var(--cds-layer-selected, #e0e0e0);
}
.cds-combobox .options-container.open-up .option-item.selected {
margin-top: 0;
}
.cds-combobox .options-container.open-up .option-item.selected:last-child {
margin-bottom: -2px;
}
.cds-combobox .options-container .option-item.highlighted {
/* background-color: var(--cds-layer-selected, #e0e0e0); */
            font-weight: inherit;
            color: var(--cds-text-primary, #161616);
            outline: 2px solid var(--cds-focus, #0f62fe);
            outline-offset: -2px;
}
.cds-combobox:not(.disabled):focus-within {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px;
}
.cds-combobox.viewer.disabled .rx-combo-toggle {
display: none !important;
}
.cds-combobox .icon-disabled {
background-color: var(--cds-icon-disabled, #c6c6c6) !important;
}
.cds-combobox .rw-textbox::placeholder {
color: var(--cds-text-placeholder, #a8a8a8) !important;
        font-style: unset;
}
input.cds-combobox-input {
background-color: var(--cds-layer-01, #F4F4F4) !important; /* 해당 소스 주석 시 초기 랜더링 됨.*/
    border: none !important;
}
.cds-combobox .template-cotainer {
background-color: var(--cds-layer-01, #F4F4F4);
}
.cds-combobox-item:hover {
background-color: var(--cds-primary, #0f62fe) !important;
    color: #fff;
    border-color: transparent;
    color: var(--cds-text-primary, #161616);
}
.cds-combobox-list {
display: block;
    overflow: hidden;
    padding: 10px 16px !important;
    /*    margin: 0 16px !important;*/
    color: var(--cds-text-secondary, #525252);
    box-sizing: border-box;
    border: 0px;
    background-color: var(--cds-layer-01, #F4F4F4) !important;
    border-block-end: 1px solid transparent;
    border-block-start-width: 1px;
    border-block-start-style: solid;
    border-block-start-color: var(--cds-border-suibtle-01);
    vertical-align: baseline;
    /*    outline: 2px solid transparent;
    outline-offset: -2px;*/
    /*    padding-inline-end: 24px;*/
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.cds-combobox-list:hover {
border-color: transparent;
        color: var(--cds-text-primary,#161616);
}
.cds-form-btn-blank {
height: 50px;
    border: 1px solid transparent;
    border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-form-btn-primary {
position: relative;
    height: 50px;
    width: 100%;
    border: 1px solid transparent;
    background-color: var(--cds-primary, #0f62fe);
    color: var(--cds-text-on-color, #ffffff);
}
.cds-form-btn-primary:hover {
background-color: var(--cds-button-primary-hover, #0353e9);
}
.cds-form-btn-primary:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
        box-shadow: inset 0 0 0 1px var(--cds-focus, #0f62fe),inset 0 0 0 2px var(--cds-white-color, #FFFFFF);
}
.cds-form-btn-primary:active {
background-color: var(--cds-button-primary-active, #002d9c);
}
.cds-form-title {
color: var(--cds-text-primary, #161616);
}
.cds-form {
align-items: center;
    justify-content: center;
}
.cds-form-header {
position: relative;
    margin-block-end: 8px;
    padding-block-start: 16px;
    padding-inline: 16px 48px;
}
.cds-form-heading {
display: block;
    margin: 0;
    vertical-align: baseline;
    font-size: 18px;
    color: var(--cds-text-primary, #161616);
}
.cds-form-subtitle {
color: var(--cds-text-primary, #161616);
    font-size: 14px;
    /*    padding: 24px 0;*/
    padding: 16px 0;
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-form-grid {
display: flex;
    align-items: flex-start;
    /*    gap: 12px;*/
    gap: 16px;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 16px;
}
.cds-form-close-btn {
position: absolute;
    inset-block-start: 0;
    inset-inline-end: 0;
}
.cds-form-close {
padding: 12px;
    color: var(--cds-text-primary, #161616);
    border: 2px solid transparent;
    background-color: transparent;
    block-size: 48px;
    cursor: pointer;
    inline-size: 48px;
    transition: background-color 0.11s cubic-bezier(0.2, 0, 0.38, 0.9);
}
.cds-form-close:hover {
background-color: var(--cds-layer-hover, #e8e8e8);
}
.cds-form-close:focus {
outline: 0;
        box-shadow: none !important;
        border: 2px solid var(--cds-primary, #0f62fe);
}
.cds-form-close-icon {
block-size: 20px;
    fill: var(--cds-primary, #0f62fe);
    inline-size: 20px;
}
.cds-form-btn-set {
gap: 1px;
}
.cds-form-footer > * {
flex: 100% !important;
}
.cds-form-btn-lg {
width: 100%;
    height: 50px;
    padding: 12px 16px 22px !important;
}
.cds-form-btn-ghost {
position: relative;
    border-style: solid;
    height: 50px;
    width: 100%;
    border-color: transparent;
    border: 1px solid transparent;
    border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    background-color: transparent;
/*    color: var(--cds-text-primary, #161616);*/
}
.cds-form-btn-ghost:hover {
background-color: var(--cds-background-hover, #8d8d8d12);
/*        color: var(--cds-text-primary, #161616);*/
}
.cds-form-btn-ghost:focus {
outline: 1px solid var(--cds-focus, #0f62fe);
        box-shadow: inset 0 0 0 1px var(--cds-focus, #0f62fe),inset 0 0 0 2px var(--cds-white-color, #FFFFFF);
}
.cds-form-btn-ghost:active {
background-color: var(--cds-button-ghost-active, #8D8D8D50);
}
.cds-search-btn {
/* form 조회 버튼 */
    display: flex;
    justify-content: right;
}
.cds-checkbox label, .cds-checkbox-label {
font-size: 12px;
    color: var(--cds-text-primary, #161616);
}
.cds-radio-tile input[type="radio"]:checked + .cds-tile-content {
outline: 1px solid var(--cds-dark-color);
    outline-offset: -1px;
}
.cds-radio-indicator::before {
block-size: 4px;
    border-block-end: 1.5px solid var(--cds-white-color, #ffffff);
    border-inline-start: 1.5px solid var(--cds-white-color, #ffffff);
    content: "";
    inline-size: 7px;
    inset-block-start: 2px;
    inset-inline-start: 3px;
    margin-block-start: -2px;
    position: absolute;
    transform: scale(0) rotate(-45deg); /* 기본: 숨김 */
    transform-origin: bottom right;
    transition: transform 0.1s ease;
}
.cds-radio-tile input[type="radio"]:checked + .cds-tile-content .cds-radio-indicator::before {
transform: scale(1) rotate(-45deg); /* 선택시: 표시 */
}
.cds-radio-tile input[type="radio"]:checked + .cds-tile-content .cds-radio-indicator {
background-color: var(--cds-dark-color, #161616);
    border-color: var(--cds-dark-color, #161616);
}
.cds-radio-tile input[type="radio"] {
position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}
.cds-radio-tile:has(input[type="radio"]:disabled) {
cursor: not-allowed;
}
.cds-radio-tile:has(input[type="radio"]:disabled) * {
cursor: not-allowed;
}
.cds-radio-tile input[type="radio"]:disabled + .cds-tile-content {
background-color: #f4f4f4;
    border-color: #c6c6c6;
    cursor: not-allowed;
    pointer-events: none;
}
.cds-radio-tile input[type="radio"]:disabled + .cds-tile-content:hover {
background-color: #f4f4f4;
}
.cds-radio-tile input[type="radio"]:disabled + .cds-tile-content .cds-radio-indicator {
border-color: #c6c6c6;
        background-color: transparent;
}
.cds-radio-tile input[type="radio"]:disabled + .cds-tile-content .cds-tile-title, .cds-radio-tile input[type="radio"]:disabled + .cds-tile-content .carbon-icon {
color: #c6c6c6;
}
.cds-radio-tile input[type="radio"]:disabled + .cds-tile-content .cds-tile-description {
color: #c6c6c6;
}
.cds-radio-tile input[type="radio"]:checked:disabled + .cds-tile-content {
outline: 0 !important;
}
.cds-radio-tile input[type="radio"]:checked:disabled + .cds-tile-content .cds-radio-indicator {
border-color: #c6c6c6;
}
.cds-radio-tile input[type="radio"]:checked:disabled + .cds-tile-content .cds-radio-indicator::after {
background-color: #c6c6c6;
}
.cds-switch-wrap {
display: flex;
    gap: 8px;
    margin-top: 6px;
}
.signin-form .cds-checkbox label {
font-size: 14px;
}
.signup-form .cds-checkbox-label {
cursor: default;
}
.cds-form {
width: 100%;
    min-width: 0;
}
.cds-form-section {
width: 100%;
    min-width: 0;
}
.cds-field {
min-width: 0;
    width: 100%;
}
.mail-container .cds-search-input-wrap input.carbon-textbox {
padding: 7px 16px 7px 2px !important;
}
.cds-selected-file .cds-file-name {
font-size: 12px;
    font-weight: 400;
    overflow: hidden;
    margin-inline-start: 16px;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: block;
}
.cds-selected-file .cds-file-size {
font-size: 10px;
    font-weight: 400;
    overflow: hidden;
    margin-inline-start: 16px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.cds-selected-file .cds-file-state {
display: flex;
    align-items: center;
    justify-content: center;
    min-inline-size: 12px;
    padding-inline-end: 12px;
}
.company-container .cds-search-input-wrap input.carbon-textbox {
padding: 7px 16px 7px 38px !important;
}
@media (max-width:1023px) {
.company-container .cds-form {
padding: 0 !important;
}
}
.company-container .cds-selected-file {
display: grid !important;
    gap: 12px 0 !important;
    background-color: var(--cds-field, #ffffff) !important;
}
.company-container .cds-selected-file .cds-file-item {
border-radius: 0 !important;
    border: 0 !important;
    background-color: var(--cds-field-03, #f4f4f4) !important;
    font-size: 12px !important;
}
.contact-container .cds-search-input-wrap input.carbon-textbox {
padding: 7px 16px 7px 38px !important;
}
.projects-container .cds-combobox .options-container .option-item {
/* border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important; */
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    background-color: var(--cds-field-02, #ffff);
}
.messenger-container .cds-search-input-wrap {
background-color: var(--cds-field, #ffffff) !important;
}
.app-title-container .selected-model-wrap .cds-combobox .template-item-container {
color: var(--cds-text-primary, #161616) !important;
    font-style: normal !important;
}
.app-title-container .selected-model-wrap:has(.cds-combobox .options-container .option-item:hover) {
background-color: transparent;
}
.app-title-container .selected-model-wrap .cds-combobox .rw-textbox-input {
height: 49px !important;
            cursor: pointer;
}
.app-title-container .selected-model-wrap .cds-combobox input::placeholder {
font-size: 14px;
            color: var(--cds-text-primary, #161616) !important;
}
.app-title-container .cds-combobox .template-cotainer {
background-color: transparent !important;
        border: none !important;
}
.app-title-container .cds-combobox .options-container .option-item {
background-color: transparent;
        height: 49px;
        font-size: 14px;
}
.app-title-container .cds-combobox .options-container .option-item:active,
        .app-title-container .cds-combobox .options-container .option-item:focus,
        .app-title-container .cds-combobox .options-container .option-item:hover {
outline: 2px solid var(--cds-focus, #0f62fe);
            outline-offset: -2px;
}
.app-title-container .cds-combobox.echo-ai-model-selector .options-container .option-item {
height: auto;
        min-height: 50px;
        padding: 12px;
}

/* ==== 40-components/cds-autocomplete.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css에서 이전됨) */
.cds-autocompleted {
/*background-color: var(--cds-field-03, #F4F4F4);*/ /* 해당 소스 주석 시 초기 랜더링 됨.*/
    background-color: var(--cds-rw-ctrl-bg) !important;
    border: none !important;
    color: var(--cds-text-secondary, #525252);
    min-height: 32px;
    font-size: 12px !important;
    gap: 0 !important;
}
.cds-autocompleted .input-container .autocomplete-input {
padding: 8px 18px;
            height: 100%;
}
.cds-autocompleted .input-container.focused {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
            outline-offset: -2px;
}
.cds-autocompleted .autocomplete-selected-tag button:focus-visible {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
}
.cds-autocompleted.disabled .input-container .autocomplete-input {
cursor: text;
}
.cds-autocompleted .icon-disabled {
/* disable 일 때 아이콘 색상 */
        background-color: var(--cds-icon-disabled, #c6c6c6) !important;
}
.cds-autocompleted.disabled .input-container:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px;
}
.cds-autocompleted .autocomplete-list li {
padding: 6px 16px;
            border-left: none;
            border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-autocompleted .autocomplete-list li:hover {
background-color: var(--cds-background-hover, #8d8d8d30);
}
.cds-autocompleted.viewer.disabled .rx-combo-toggle {
display: none !important;
}
[data-bs-theme=dark] .cds-autocompleted.disabled .tag {
background-color: var(--cds-layer-01, #f4f4f4);
}
.cds-autocompleted .tag-text {
font-size: 12px;
    font-family: var(--ww-font-base, var(--ww-font-ibm-sans-kr), sans-serif);
    font-weight: 300;
    color: var(--cds-text-primary, #161616);
}
.cds-autocompleted .tag button {
color: var(--cds-text-primary, #161616);
    font-size: 12px;
    font-weight: 400;
    margin-left: 2px !important;
}
.cds-autocompleted-tagitem {
background-color: var(--bs-gray-300, #E1E3EA) !important;
}

/* ==== 40-components/rw-button.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.foundation.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.carbon-btn-primary:hover {
background-color: var(--primary-bg-over-color);
}
.cds-user-img-wrap .btn.btn-icon:hover {
color: var(--cds-background-hover, #8d8d8d30);
}

/* ==== 40-components/rw-window.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
@keyframes rw-window-slideDown {
from {
        transform: translateY(-100px);
        opacity: 1;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}
.rw-window-slide-down {
animation: rw-window-slideDown 0.5s ease-out;
}
.rw-window-hidden {
display: none !important;
}
.cds-modal {
background-color: var(--cds-white-color, #FFFFFF);
    align-items: center;
    justify-content: center;
}
.cds-modal-header {
position: relative;
    margin-block-end: 8px;
    padding-block-start: 16px;
    padding-inline: 16px 48px;
}
.cds-modal-heading {
display: block;
    margin: 0;
    vertical-align: baseline;
    font-size: 18px;
    color: var(--cds-text-primary, #161616);
}
.cds-modal-close-btn {
position: absolute;
    inset-block-start: 0;
    inset-inline-end: 0;
}
.cds-modal-close {
padding: 12px;
    color: var(--cds-text-primary, #161616);
    border: 2px solid transparent;
    background-color: transparent;
    block-size: 48px;
    cursor: pointer;
    inline-size: 48px;
    transition: background-color 0.11s cubic-bezier(0.2, 0, 0.38, 0.9);
}
.cds-modal-close-icon {
block-size: 20px;
    fill: var(--cds-primary, #0f62fe);
    inline-size: 20px;
}
.cds-modal-btn-set {
gap: 1px;
    flex-direction: row-reverse;
}
.cds-modal-btn-set > * {
flex: 100%;
}
.cds-modal-footer > * {
flex: 100% !important;
}
/* RwWindow 표준 푸터 — Carbon 모달 푸터 비율: 1개 100%, 2개 50/50, 3개 25/25/50(주 버튼 50%) */
.rw-window-footer .rw-window-footer-row { display: flex; flex-direction: row; align-items: stretch; width: 100%; min-width: 0; }
.rw-window-footer .rw-window-footer-row > * { min-width: 0; overflow: hidden; text-overflow: ellipsis; box-sizing: border-box; }
.rw-window-footer[data-rw-footer-buttons="1"] .rw-window-footer-row > .cds-btn[data-rw-action] { flex: 1 1 100%; }
.rw-window-footer[data-rw-footer-buttons="2"] .rw-window-footer-row > .cds-btn[data-rw-action] { flex: 1 1 50%; }
.rw-window-footer[data-rw-footer-buttons="3"] .rw-window-footer-row > .cds-btn[data-rw-action] { flex: 1 1 25%; }
.rw-window-footer[data-rw-footer-buttons="3"] .rw-window-footer-row > .cds-btn-primary[data-rw-action] { flex: 2 1 50%; }
.rw-window-footer .rw-window-footer-row > .cds-btn[data-rw-action="cancel-delete"],
.rw-window-footer .rw-window-footer-row > .cds-btn[data-rw-action="confirm-delete"] { flex: 1 1 25%; }
.rw-window-footer .rw-window-footer-message { flex: 2 1 50%; display: flex; align-items: center; }
.rw-window-footer .rw-window-footer-slot { flex: 0 1 auto; display: flex; align-items: stretch; min-width: 0; }
.rw-window-footer .rw-window-footer-slot > * { flex: 0 1 auto; min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
.rw-window-footer .rw-window-footer-slot-left { margin-right: auto; }
.cds-modal-heading {
white-space: pre-wrap !important; /* \n 문자를 실제 줄바꿈으로 렌더링합니다 */
}
.echo-chat-assistant__lineage-window .cds-modal-header {
position: relative;
}

/* ==== 40-components/cds-tile.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.legacy.css에서 이전됨) */
.cds-tile-content {
display: block;
    padding: 16px;
    cursor: pointer;
    position: relative;
    min-height: 100%;
}
.cds-tile-content:hover {
background-color: var(--cds-background-hover, #8d8d8d12) !important;
}
.cds-tile-content:active, .cds-tile-content:focus {
outline: 2px solid var(--cds-focus) !important;
        outline-offset: -2px !important;
}
.cds-tile-header {
display: flex;
    align-items: flex-start;
    gap: 8px;
    flex-direction: row-reverse;
    justify-content: space-between;
}
.cds-tile-description {
font-size: 14px;
    color: var(--cds-text-secondary, #525252);
    line-height: 20px;
    margin: 0;
}
.cds-card-actions {
display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-top: 1rem;
}
.cds-card-actions--end {
justify-content: flex-end;
}
.cds-card-actions--stack-mobile {
justify-content: flex-end;
}
@media (max-width: 767px) {
.cds-card-actions--stack-mobile {
flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
}
}

/* ==== 40-components/cds-mail.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.cds-mail-nav {
/*    max-width: 180px;*/
    max-width:230px;
    border-right: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-mail-nav .cds-mailfolder-name {
width: 80px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}
.cds-mail-nav .cds-list-content .cds-list-item {
height: 40px !important;
    padding: 7px 16px !important;
}
@media (max-width:1279px) {
.cds-mail-list-wrap {
width: 320px !important;
}
}
@media (max-width:1279px) {
.cds-mail-title,
    .cds-mail-content {
width: 260px !important;
}
}
.cds-mail-list-wrap .cds-empty-state {
text-align: left;
    padding: 32px;
}
.cds-mail-list {
display: flex;
    position: relative;
    flex-direction: row;
    padding: 0 0 8px 8px;
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
    border-left: solid 3px transparent;
    font-size: 14px;
    background-color: transparent;
}
.cds-mail-list.focused {
outline: 2px solid transparent !important;
    outline-offset: -2px !important;
    /*        background-color: transparent !important;*/
}
.cds-mail-list:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px !important;
}
.cds-mail-list.active {
border-left: solid 3px var(--cds-focus, #0f62fe);
    background-color: var(--cds-layer-selected, #e0e0e0) !important;
}
.cds-mail-list:hover {
background-color: var(--cds-layer-hover, #e8e8e8)
}
.cds-mail-list:active:has(.cds-icon-only-btn:focus) {
outline: 0px !important;
    outline-offset: 0 !important;
}
.cds-mail-list .carbon-checkbox:checked::before {
inset-inline-start: 3.4px;
}
.cds-mail-from-wrap {
display: flex;
    justify-content: space-between;
    align-items: center;
}
.cds-mail-from {
margin-bottom: 4px;
}
.cds-mail-title-wrap {
display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.cds-mail-time {
font-size: 12px;
    color: var(--cds-text-helper, #6f6f6f);
}
.cds-mail-content span {
font-size: 13px;
}
.cds-mail-tool {
position: absolute;
    top: 0;
    right: 0;
    display: none;
}
.cds-mail-list:hover .cds-mail-tool {
display: flex;
}
.cds-mail-tool .cds-icon-only-btn:hover {
color: var(--cds-icon-primary, #161616);
}
.cds-mail-view-title {
height: 40px;
}
.cds-mail-view-title span {
font-size: 16px;
    white-space: nowrap;
    font-weight: 600;
    color: var(--cds-text-primary, #161616);
}
@media (max-width: 1023px) {
.cds-mail-view-title {
height: 50px !important;
}
}
@media (max-width: 1023px) {
.cds-mail-view-title span {
display: -webkit-box;
        -webkit-line-clamp: 2; /* 표시하고 싶은 줄 수 */
        -webkit-box-orient: vertical; /* 기존 충돌 속성 방어 및 초기화 */
        overflow: hidden;
        word-break: break-all; /* 공백 없이 길어도 안전하게 줄바꿈 되도록 설정 */
        white-space: normal; /* 한 줄로 쭉 뻗는 것을 방지 */
        padding-right: 16px;
        line-height: 18px;
}
}
.cds-mail-view-toolbar {
display: flex;
    flex-wrap: wrap;
}
.cds-mail-view-toolbar .ai-icon {
display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px;
    height: 24px;
    width: 24px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.5px;
    cursor: default;
    border: 1px solid var(--cds-primary, #0f62fe);
}
.cds-mail-view-toolbar-border {
border-right: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    margin: 8px 0;
}
.cds-mail-view-toolbar .wvs-header-popover .wvs-popover-item {
font-size: 12px;
    color: var(--cds-text-primary, #161616);
}
.cds-mail-view-toolbar .wvs-header-popover .wvs-popover-item:focus,
.cds-mail-view-toolbar .wvs-header-popover .wvs-popover-item:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px !important;
}
.cds-mail-view-header {
width: 100%;
    display: flex;
    flex-wrap: nowrap;
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    flex-direction: column;
}
.cds-mail-view-header .cds-mail-avatar {
margin: 0 8px 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.cds-mail-option {
width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
}
.cds-mail-option-item.sender {
align-items: baseline;
    flex-wrap: wrap;
    white-space: nowrap;
}
.cds-mail-option-item .cds-mail-sender-name {
font-size: 14px;
    font-weight: 500;
}
.cds-mail-option-content {
width: 100%;
    word-break: break-word;
}
.cds-mail-view-file .wvs-header-popover .wvs-popover-item {
font-size: 12px;
    color: var(--cds-text-primary, #161616);
    width: 100%;
    height: 100%;
}
.cds-mail-view-file .wvs-header-popover .wvs-popover-item:focus,
.cds-mail-view-file .wvs-header-popover .wvs-popover-item:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px !important;
}
.cds-mail-view-body {
display: flex;
    flex-direction: column;
    position: relative;
    overflow-y: auto;
    overflow-x: hidden;
    font-size: 12px;
}
.cds-mail-view-wrap .cds-empty-state {
text-align: left;
    padding: 32px;
}
.cds-mail-view-body pre {
font-size: 16px;
    padding: 16px;
    font-family: var(--ww-font-base);
}
.cds-mail-write-header {
padding: 16px;
    border-bottom: 0px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-mail-write-wrap {
overflow-y: auto;
    overflow-x: hidden;
}
.cds-mail-write-body {
background-color: var(--cds-field-02, #F4F4F4) !important;
}
.cds-mail-file-wrap {
display: flex;
    flex-direction: column;
    max-height: 150px;
    overflow-y: auto;
}
.cds-mail-filedrop-container:hover {
outline-color: var(--cds-focus, #0f62fe);
    text-decoration-line: underline;
}
.cds-mail-filedrop-container input:focus {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px !important;
}
.cds-mail-card {
display: block;
    width: 100%;
    padding: 8px 12px;
    border: none;
    background-color: var(--cds-field-02, #ffffff);
    color: var(--cds-text-primary, #161616);
    text-align: left;
    font-family: inherit;
    font-size: inherit;
    padding: 8px 12px;
    border-radius: 0px !important;
    cursor: pointer;
    margin-bottom: 0px;
    position: relative;
}
.cds-mail-card:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
}
.cds-mail-card:focus,
.cds-mail-card:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
    outline-offset: -2px !important;
    transition: none !important;
}
.contact-container .cds-mail-title {
font-size: 14px;
    width: auto !important;
}
.contact-container .cds-mail-content {
width: auto !important;
}

/* ==== 40-components/cds-tooltip.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell-compat.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css, WaveWorks.RxComponents/wwwroot/echo/css/echo-chat.css에서 이전됨) */
.cds-popover-wrap .cds-popover-item {
display: flex;
    gap: 8px;
    color: #ffffff;
    padding: 10px 16px;
    cursor: pointer;
    font-size: 12px;
    color: var(--cds-text-primary, #161616);
}
.cds-popover-wrap .cds-popover-item:hover {
background-color: #8d8d8d29;
}
.cds-popover-wrap .cds-popover-item:focus,
    .cds-popover-wrap .cds-popover-item:active {
outline: 2px solid var(--cds-focus, #0f62fe);
        outline-offset: -2px;
}
.app-sidebar-wrapper .cds-popover-wrap {
width:100%;
}
.app-sidebar-wrapper .cds-popover-wrap .rx-popover-container .rx-popover-content {
width: 196px;
    top: 2px !important;
    left: 0px !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border: 0 !important;
    margin-top: -1px;
    background-color: var(--cds-field-01, #f4f4f4);
    box-shadow: 0 2px 6px var(--cds-shadow, rgba(0, 0, 0, 0.3));
}
.app-sidebar-wrapper .cds-popover-wrap .cds-popover-item {
display: flex;
    height: 50px;
    gap: 8px;
    color: #ffffff;
    padding: 15px 16px;
    cursor: pointer;
    font-size: 12px;
    color: var(--cds-text-primary, #161616);
}
.app-sidebar-wrapper .cds-popover-wrap .rx-popover-parent .cds-icon-only-btn {
padding: 15px 16px !important;
}
.app-sidebar-wrapper .cds-popover-wrap .cds-popover-item:hover {
background-color: #8d8d8d29;
}
.app-sidebar-wrapper .cds-popover-wrap .cds-popover-item:focus,
    .app-sidebar-wrapper .cds-popover-wrap .cds-popover-item:active {
outline: 2px solid var(--cds-focus, #0f62fe);
        outline-offset: -2px;
}
@media (max-width: 1023px) {
.app-sidebar-wrapper .cds-popover-wrap .rx-popover-container .rx-popover-content {
width: 100% !important;
}
}
.teams-list-item:active:has(.cds-popover .cds-icon-only-btn:focus) {
outline: 0px !important;
    outline-offset: 0 !important;
}
teams-card:focus:has(.cds-popover-wrap .cds-popover-item:focus) {
outline: 0px !important;
    outline-offset: 0 !important;
}
teams-card:active:has(.cds-popover-wrap .cds-popover-item:active) {
outline: 0px !important;
    outline-offset: 0 !important;
}
.cds-popover-wrap button.cds-icon-only-btn {
background-color: transparent !important;
}
.cds-popover-wrap button.cds-icon-only-btn:hover {
background-color: var(--cds-background-hover, #8d8d8d12) !important;
}
.cds-list-content .cds-list-item:has(.cds-popover-wrap .cds-icon-only-btn:focus) {
outline: 0 !important;
}
.cds-list-content .cds-list-item:has(.cds-popover-wrap .cds-popover-item:focus, .cds-popover-wrap .cds-popover-item:active) {
outline: 0 !important;
}
.cds-popover-wrap .cds-popover-item:is(button) {
width: 100%;
    border: 0;
    background: transparent;
    text-align: left;
}
.cds-popover-wrap .cds-popover-item:disabled {
color: var(--cds-text-disabled, #8d8d8d);
    cursor: not-allowed;
}
.cds-popover-wrap .cds-popover-item:disabled:hover {
background: transparent;
}
.cds-popover-item--danger {
color: var(--cds-support-error, #da1e28) !important;
}
.cds-popover-helper {
max-width: 180px;
    padding: 8px 16px;
    color: var(--cds-text-secondary, #525252);
    border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    font-size: 11px;
    line-height: 1.4;
}
.echo-history-drawer__item-wrap:hover .cds-popover-wrap {
display: block !important;
}
.echo-history-drawer__list .cds-popover-wrap {
position: absolute;
    top: 6px;
    right: 0;
}
.echo-ai-window .echo-info-wrap .cds-popover-wrap button.cds-icon-only-btn {
border-radius: 0 8px 8px 0;
}
.v2-general-page .request-container .cds-popover-wrap .rx-popover-container .rx-popover-content .cds-popover-item {
font-size: 14px !important;
        gap: 16px !important;
        align-items: center;
}


.rw-combobox-container .option-item.option-template-item:has(.echo-ai-option) {
    padding: 8px 16px;
    height: auto !important;
    margin-top: 0px;
}
/* ==== 40-components/cds-notification.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.cds-notification-wrap {
position: relative;
    display: flex;
    flex-wrap: nowrap;
    block-size: auto;
    inline-size: 100%;
    min-height: auto;
    /*    min-block-size: 48px;*/
    /*    min-inline-size: 288px; */
    /*    max-inline-size: 600px;*/
}
.cds-notification-title {
font-size: 14px;
    font-weight: 600;
    color: var(--cds-text-primary, #161616);
}
.cds-notification-subtitle {
font-size: 14px;
    color: var(--cds-text-primary, #161616);
}
.contact-container .cds-notification-wrap {
min-inline-size: 0;
}
.contact-container .cds-notification-info {
padding: 0 10px;
    flex-direction: column;
}
.contact-container .cds-notification-text {
padding: 10px 0;
}
.contact-container .cds-notification-subtitle {
font-size: 13px;
}
.cds-notify-action:hover:not(:disabled) {
color: var(--cds-link-inverse);
}
.cds-notify-action:disabled {
opacity: .35;
    cursor: default;
}
.cds-notify-link {
padding: 12px 40px 12px 24px;
    text-decoration: none;
    background: transparent;
}
.cds-notify-link:hover {
text-decoration: none;
}
.cds-notify-text {
min-width: 0;
}

/* ==== 40-components/cds-list.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.cds-list-content {
display: flex;
    flex-direction: column;
    align-items: start;
    text-decoration: none;
    transition: background 0.2s;
    white-space: nowrap;
}
.cds-list-content .cds-list-item {
justify-content: space-between;
        align-items: center;
        gap: 2px;
        padding: 12px 16px;
        width: 100%;
        border-left: solid 3px transparent;
        border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.cds-list-content .cds-list-item:hover {
background-color: var(--cds-layer-hover, #e8e8e8);
}
.cds-list-content .cds-list-item:active,
        .cds-list-content .cds-list-item:focus {
outline: 2px solid var(--cds-focus, #0f62fe);
            outline-offset: -2px;
}
.cds-list-content .cds-list-item .cds-list-item-title {
font-size: 14px;
            display: block;
            text-overflow: ellipsis;
            white-space: nowrap;
            overflow: hidden;
            font-weight: 600;
}
.cds-list-content .cds-list-item .cds-list-item-sub {
font-size: 12px;
            font-weight: 400;
            display: inline-block;
            white-space: normal;
            word-break: break-word;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item {
animation: cds-motion-enter-chain 320ms cubic-bezier(0, 0, 0.38, 0.9) backwards;
    animation-delay: var(--cds-motion-list-item-delay, 0ms);
    will-change: auto;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item:nth-child(1) {
--cds-motion-list-item-delay: 0ms;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item:nth-child(2) {
--cds-motion-list-item-delay: 60ms;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item:nth-child(3) {
--cds-motion-list-item-delay: 120ms;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item:nth-child(4) {
--cds-motion-list-item-delay: 180ms;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item:nth-child(5) {
--cds-motion-list-item-delay: 240ms;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item:nth-child(6) {
--cds-motion-list-item-delay: 300ms;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item:nth-child(7) {
--cds-motion-list-item-delay: 360ms;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item:nth-child(8) {
--cds-motion-list-item-delay: 420ms;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item:nth-child(9) {
--cds-motion-list-item-delay: 480ms;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item:nth-child(10) {
--cds-motion-list-item-delay: 540ms;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item:nth-child(11) {
--cds-motion-list-item-delay: 600ms;
}
.cds-list-content:is(.cds-motion, .cds-motion-chain, .cds-motion-list) > .cds-list-item:nth-child(12) {
--cds-motion-list-item-delay: 660ms;
}
.company-container .cds-list-item {
border-left: none;
    padding: 7px 16px;
    font-size: 12px;
}
.contact-container .cds-list-item {
border-left: none;
    padding: 7px 16px;
    font-size: 12px;
}
.prompt-container .cds-list-content .cds-list-item {
align-items: start !important;
    flex-direction: column !important;
}
.wavedesk-container .cds-list-content .cds-list-item {
border-left: none !important;
}
.messenger-container .cds-list {
width: 320px;
}
.cds-member-list-wrap .cds-list-content .cds-list-item {
padding: 16px 12px !important;
}

/* ==== 40-components/cards.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css, WaveWorks.RxComponents/wwwroot/echo/css/echo-chat.css에서 이전됨) */
.echo-chat-assistant .chat-assistant-container .card .echo-message-icon {
font-size: 14px;
            color: var(--cds-text-primary, #161616);
}
.echo-chat-assistant .chat-assistant-container .card .card-body {
padding: 0;
        margin-left: 2px;
}
.echo-chat-assistant .chat-assistant-container .card p {
margin-top: 16px;
        margin-bottom: 12px;
}
.echo-chat-assistant .chat-assistant-container .card-body p:first-child {
word-wrap: break-word;
        margin-top: 10px;
}
.echo-chat-assistant .chat-user-container .card .card-body {
padding: 12px 18px;
}
.echo-chat-assistant .messages .card-text ul {
margin-bottom: 24px;
}
.echo-chat-assistant .messages .card-text li {
margin-bottom: 4px;
        padding-left: 4px;
        line-height: 24px;
}
@media (max-width:1023px) {
.echo-chat-assistant .chat-assistant-container .card .echo-message-icon .carbon-icon {
display: none;
}
}
@media (max-width:1023px) {
.echo-chat-assistant .chat-assistant-container .card .card-body {
margin-left: 0 !important;
}
}
.echo-chat-bubble--assistant .card-body {
display: flex;
    flex-direction: column;
}

/* ==== 40-components/rx-components.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.2024.01.css에서 이전됨) */
@keyframes rx-slide-left {
from {
        transform: translateX(100%);
        opacity: 1;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}
.rx-slide-left {
animation: rx-slide-left 0.3s ease-in-out;
}
.rx-scroll {
--bs-scrollbar-size: 7px;
    --bs-scrollbar-color: rgba(136, 136, 136, 0.4);
    --bs-scrollbar-hover-color: rgba(85, 85, 85, 0.9);
    --bs-scrollbar-min-thumb-size: 120px;
}
.rx-scroll::-webkit-scrollbar {
width: var(--bs-scrollbar-size);
        height: var(--bs-scrollbar-size);
}
.rx-scroll::-webkit-scrollbar-track {
background: transparent;
        margin: 0 5px; /* 왼쪽, 오른쪽 여백 */
}
.rx-scroll::-webkit-scrollbar-thumb {
border-radius: 0; 
        border-width: calc(var(--bs-scrollbar-size) / 2) !important;
        border-block-style: solid !important;
        border-color: var(--bs-scrollbar-color) !important;
        max-height: var(--bs-scrollbar-max-thumb-size) !important;
        max-width: var(--bs-scrollbar-max-thumb-size) !important;
        transition: background-color 0.2s ease;

        background-clip: padding-box !important;
        background-color: var(--bs-scrollbar-color) !important;
}
.rx-scroll::-webkit-scrollbar-track {
/*
            ksh 
        background-color: var(--bs-scrollbar-color) !important;
        border-color: var(--bs-scrollbar-color) !important;    
        */
        background-color: transparent;
}
.rx-scroll::-webkit-scrollbar-thumb:hover {
background-color: var(--bs-scrollbar-hover-color) !important;
        border-color: var(--bs-scrollbar-hover-color) !important;
}
.rx-scroll-x {
overflow-x: auto;
    /*overflow-y: hidden;*/
}
.rx-scroll.rx-scroll-hover-y::-webkit-scrollbar {
width: 9px !important; /* 공간 차지 안함 */
}
.rx-scroll.rx-scroll-hover-y:hover::-webkit-scrollbar {
width: 9px !important;
}
.rx-scroll-hover-y::-webkit-scrollbar-thumb {
background-color: transparent !important;
        border-color: transparent !important;
        transition: background-color 0.3s;
}
.rx-scroll-hover-y:hover::-webkit-scrollbar-thumb {
background-color: var(--bs-scrollbar-color) !important;
        border-color: var(--bs-scrollbar-color) !important;
}
.rx-scroll-hover-x::-webkit-scrollbar-thumb {
background-color: transparent !important;
        border-color: transparent !important;
        transition: background-color 0.3s;
}
.rx-scroll-hover-x:hover::-webkit-scrollbar-thumb {
background-color: var(--bs-scrollbar-color) !important;
        border-color: var(--bs-scrollbar-color) !important;
}

/* ==== 40-components/table.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css, WaveWorks.RxComponents/wwwroot/echo/css/echo-chat.css에서 이전됨) */
.echo-chat-assistant .chat-assistant-container .table-responsive .table {
color: var(--cds-text-primary, #161616);
        border-bottom: 1px solid var(--cds-border-disabled, #c6c6c6);
}
.echo-chat-assistant .chat-assistant-container .table-responsive .table th {
background: transparent;
            text-align: center;
            font-weight: 600;
            border: 1px solid var(--cds-border-disabled, #c6c6c6);
}
.echo-chat-assistant .chat-assistant-container .table-responsive .table td {
background: transparent;
            color: var(--cds-text-primary, #161616);
            border: 1px solid var(--cds-border-disabled, #c6c6c6);
}
.echo-chat-assistant .chat-assistant-container .table-responsive .table th,
        .echo-chat-assistant .chat-assistant-container .table-responsive .table td {
padding: 6px 13px;
}
.echo-chat-host .markdown-body .table-responsive > table {
width: max-content;
    min-width: 100%;
}
.echo-chat-host .markdown-body .table-responsive th,
.echo-chat-host .markdown-body .table-responsive td {
white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
}

/* ==== 40-components/rw-composer.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.rw-composer {
position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    background: var(--cds-bg-gray);
    border-bottom: 1px solid var(--carbon-textbox-border-bottom, #8d8d8d) !important;
}
.rw-composer:focus-within {
outline: 2px solid var(--cds-focus, currentColor);
    outline-offset: -2px;
}
.rw-composer:has(.cds-btn:focus) {
outline: 0;
}
.rw-composer__input {
width: 100%;
    min-height: 72px;
    padding: 16px;
    color: var(--cds-text-primary, currentColor);
    background: transparent;
    border: 0;
    outline: 0;
    resize: none;
}
.rw-composer__input[hidden],
.rw-composer__markdown-source[hidden] {
display: none;
}
.rw-composer__file-list {
display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0 16px 8px;
}
.rw-composer__file {
display: inline-flex;
    max-width: 100%;
    min-height: 32px;
    align-items: center;
    gap: 8px;
    padding-left: 10px;
    color: var(--cds-text-primary, #161616);
    background: var(--cds-layer-02, #ffffff);
    border: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.rw-composer__file > .carbon-icon--attachment {
flex: 0 0 16px;
    width: 16px;
    height: 16px;
    background-color: var(--cds-icon-secondary, #525252);
    -webkit-mask: url("/_content/WaveWorks.RxComponents/icons/carbon/16/attachment.svg") center / contain no-repeat;
    mask: url("/_content/WaveWorks.RxComponents/icons/carbon/16/attachment.svg") center / contain no-repeat;
}
.rw-composer__file-name {
max-width: 240px;
    overflow: hidden;
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.rw-composer__file-size {
color: var(--cds-text-secondary, #525252);
    font-size: 12px;
    white-space: nowrap;
}
.rw-composer__file-remove:hover:not(:disabled) {
background: var(--cds-layer-hover-02, #e8e8e8);
}
.rw-composer__file-remove:disabled {
color: var(--cds-text-disabled, #c6c6c6);
    cursor: not-allowed;
}
.rw-composer__view-switcher {
display: flex;
    min-height: 32px;
    align-items: stretch;
    justify-content: flex-end;
    background: var(--cds-layer, white);
    border-bottom: 1px solid var(--cds-border-subtle-01, currentColor);
}
.rw-composer__view-option {
min-width: 88px;
    padding: 0 12px;
    color: var(--cds-text-secondary, currentColor);
    background: transparent;
    border: 0;
    border-bottom: 2px solid transparent;
}
.rw-composer__view-option:hover {
color: var(--cds-text-primary, currentColor);
    background: var(--cds-layer-hover, transparent);
}
.rw-composer__view-option.is-selected {
color: var(--cds-text-primary, currentColor);
    border-bottom-color: var(--cds-border-interactive, #0f62fe);
}
.rw-composer__markdown-source {
min-height: 320px;
    max-height: 60vh;
    overflow: auto;
    font-family: var(--cds-code-01-font-family, "IBM Plex Mono", monospace);
    font-size: 13px;
    line-height: 1.5;
    tab-size: 4;
}
.rw-composer--compact .rw-composer__input {
min-height: 32px;
    padding: 12px 16px;
}
.rw-composer__actions {
display: flex;
    min-height: 40px;
    align-items: center;
    padding: 0 8px;
}
.rw-composer__action:hover,
.rw-composer__suggestion:hover,
.rw-composer__suggestion.is-active {
background: var(--cds-layer-hover, transparent);
}
/* bump: 순서 의존 해소 (vs .rw-composer__file > .carbon-icon--attachment) */
.rw-composer__action--icon .carbon-icon--attachment.carbon-icon--attachment {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/attachment.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/attachment.svg");
}
/* bump: 순서 의존 해소 (vs .wave-carbon-icon.carbon-icon--attachment) */
.rw-composer__action--icon .carbon-icon--at.carbon-icon--at {
-webkit-mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/at.svg");
    mask-image: url("/_content/WaveWorks.RxComponents/icons/carbon/16/at.svg");
}
.rw-composer__action--icon:disabled {
cursor: not-allowed;
}
.rw-composer__send:disabled {
color: var(--cds-text-disabled, currentColor);
    background: var(--cds-button-disabled, transparent);
}
.rw-composer__submit {
position: relative;
}
.rw-composer__submit-label--busy {
visibility: hidden;
}
@keyframes rw-composer-submit-spin {
to {
        transform: rotate(360deg);
    }
}
.rw-composer__hint {
color: var(--cds-text-secondary, currentColor);
    font-size: 12px;
}
.rw-composer__suggestion-kind {
min-width: 56px;
    color: var(--cds-text-secondary, currentColor);
    font-size: 12px;
}
.rw-composer__suggestion-copy {
display: flex;
    min-width: 0;
    flex-direction: column;
}
.rw-composer__suggestion-copy small {
color: var(--cds-text-secondary, currentColor);
}
.rw-composer__editor {
max-height: 40vh;
    overflow-y: auto;
}
.rw-composer--document:not(.rw-composer--markdown) .rw-composer__editor {
/*    min-height: clamp(320px, 42dvh, 480px);*/
    min-height: clamp(200px, 21dvh, 480px);
    max-height: min(72dvh, 760px);
}
.rw-composer__editor .rw-composer__surface {
outline: 0;
    white-space: pre-wrap;
    word-break: break-word;
}
.rw-composer__editor .rw-composer__surface:focus,
.rw-composer__editor .rw-composer__surface:focus-visible {
outline: 0 !important;
}
.rw-composer__editor .rw-composer__surface p {
margin: 0;
}
.rw-composer__editor .rw-composer__surface p.is-editor-empty:first-child::before {
content: attr(data-placeholder);
    float: left;
    height: 0;
    color: var(--cds-text-placeholder, currentColor);
    pointer-events: none;
}
.rw-composer__mention {
padding: 1px 6px;
    border-radius: 12px;
    color: var(--cds-link-primary, currentColor);
    background: var(--cds-highlight, transparent);
    font-weight: 600;
    white-space: nowrap;
}
.rw-composer__image-node {
position: relative;
    display: table;
    max-width: 100%;
    margin: 8px 0;
}
.rw-composer__attachment-image {
display: block;
    box-sizing: border-box;
    max-width: 100%;
    height: auto;
    margin: 0;
    object-fit: contain;
    background: var(--cds-layer-accent-01, transparent);
    border: 1px solid var(--cds-border-subtle-01, currentColor);
}
.rw-composer__attachment-image.ProseMirror-selectednode,
.rw-composer__image-node.is-selected .rw-composer__attachment-image {
border-color: var(--cds-focus, currentColor);
    outline: 2px solid var(--cds-focus, currentColor);
    outline-offset: 2px;
}
.rw-composer__attachment-file-name {
min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.rw-composer__attachment-file-size {
margin-left: auto;
    color: var(--cds-text-secondary, currentColor);
    font-size: 12px;
    white-space: nowrap;
}
.rw-composer__attachment-file.ProseMirror-selectednode {
border-color: var(--cds-focus, currentColor);
    outline: 2px solid var(--cds-focus, currentColor);
    outline-offset: 2px;
}
.rw-composer__image-size-presets {
position: absolute;
    top: calc(100% + 6px);
    left: 0;
    z-index: 1;
    display: none;
    align-items: center;
    gap: 2px;
    padding: 2px;
    background: var(--cds-layer-01, transparent);
    border: 1px solid var(--cds-border-subtle-01, currentColor);
    box-shadow: 0 2px 6px var(--cds-shadow, transparent);
}
.rw-composer__image-node.is-selected .rw-composer__image-size-presets {
display: flex;
}
.rw-composer__image-node.has-resize.is-selected {
margin-bottom: 44px;
}
.rw-composer__image-size-preset {
min-width: 44px;
    min-height: 28px;
    padding: 0 8px;
    color: var(--cds-text-secondary, currentColor);
    font: inherit;
    font-size: 12px;
    line-height: 1;
    background: transparent;
    border: 0;
    cursor: pointer;
}
.rw-composer__image-size-preset:focus-visible {
outline: 2px solid var(--cds-focus, currentColor);
    outline-offset: -2px;
}
.rw-composer__image-node.is-selected .rw-composer__image-resize-handle {
display: block;
}
.rw-composer__image-resize-handle.is-north-west {
top: -7px;
    left: -7px;
    cursor: nwse-resize;
}
.rw-composer__image-resize-handle.is-north-east {
top: -7px;
    right: -7px;
    cursor: nesw-resize;
}
.rw-composer__image-resize-handle.is-south-west {
bottom: -7px;
    left: -7px;
    cursor: nesw-resize;
}
.rw-composer__image-resize-handle.is-south-east {
right: -7px;
    bottom: -7px;
    cursor: nwse-resize;
}
.rw-composer__image-resize-handle:focus-visible {
outline: 2px solid var(--cds-focus, currentColor);
    outline-offset: 2px;
}
.rw-composer.is-readonly .rw-composer__image-size-presets,
.rw-composer.is-readonly .rw-composer__image-resize-handle {
display: none;
}
.rw-composer.is-readonly .rw-composer__image-node.is-selected {
margin-bottom: 8px;
}
.rw-composer__suggestion-group {
height: 32px;
    padding: 8px 16px;
    color: var(--cds-text-secondary, currentColor);
    font-size: 12px;
}
.rw-composer__toolbar {
display: flex;
    min-width: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 2px;
    padding: 2px 8px;
    border-top: 1px solid var(--cds-border-subtle-01, transparent);
}
.rw-composer__format-toggle[aria-pressed="true"] {
color: var(--cds-link-primary, currentColor);
    background: var(--cds-layer-selected, transparent);
}
.rw-composer__format {
position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    min-height: 28px;
    padding: 0 6px;
    color: var(--cds-text-primary, currentColor);
    background: transparent;
    border: 0;
    border-radius: 4px;
}
.rw-composer__format--heading {
padding-right: 10px;
}
.rw-composer__format-level {
position: absolute;
    right: 2px;
    bottom: 2px;
    color: currentColor;
    font-size: 9px;
    font-weight: 600;
    line-height: 1;
}
.rw-composer__format:hover {
background: var(--cds-layer-hover, transparent);
}
.rw-composer__link-editor {
display: grid;
    grid-template-columns: auto minmax(180px, 1fr) auto auto;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: var(--cds-layer-02, var(--cds-layer));
    border-top: 1px solid var(--cds-border-subtle-01, currentColor);
}
.rw-composer__link-input {
min-height: 32px;
    padding: 0 8px;
    color: var(--cds-text-primary, currentColor);
    background: var(--cds-field-02, var(--cds-field));
    border: 0;
    border-bottom: 1px solid var(--cds-border-strong-01, currentColor);
    outline: 0;
}
.rw-composer__link-input:focus {
outline: 2px solid var(--cds-focus, currentColor);
    outline-offset: -2px;
}
.rw-composer__link-action {
min-height: 32px;
    padding: 0 12px;
    color: var(--cds-text-on-color, #fff);
    background: var(--cds-button-primary, #0f62fe);
    border: 0;
}
.rw-composer__link-action:disabled {
color: var(--cds-text-disabled, currentColor);
    background: var(--cds-button-disabled, transparent);
}
.rw-composer__status {
padding: 0 16px;
    color: var(--cds-text-secondary);
    font-size: 12px;
    line-height: 16px;
}
.rw-composer__status--error {
color: var(--cds-text-error, #da1e28);
}
.rw-composer--document .rw-composer__input {
min-height: 160px;
}
.rw-composer--markdown .rw-composer__input {
min-height: 320px;
    max-height: 60vh;
}
.rw-composer--markdown .rw-composer__surface h2,
.rw-composer--markdown .rw-composer__surface h3,
.rw-composer--markdown .rw-composer__surface h4 {
margin: 24px 0 12px;
    font-weight: 400;
    line-height: 1.25;
}
.rw-composer--markdown .rw-composer__surface h2 {
font-size: 24px;
}
.rw-composer--markdown .rw-composer__surface h3 {
font-size: 20px;
}
.rw-composer--markdown .rw-composer__surface table {
width: 100%;
    margin: 16px 0;
    border-collapse: collapse;
}
.rw-composer--markdown .rw-composer__surface img {
display: block;
    max-width: 100%;
    margin: 16px 0;
}
.rw-composer__editor .rw-composer__surface ul,
.rw-composer__editor .rw-composer__surface ol {
.rw-composer--document:not(.rw-composer--markdown) .rw-composer__editor margin: 4px 0;
    padding-left: 24px;
}
@media (max-width: 600px) {
.rw-composer__hint {
display: none;
}
}
@media (max-width: 600px) {
.rw-composer--document:not(.rw-composer--markdown) .rw-composer__editor {
height: clamp(240px, 42vh, 360px);
        min-height: clamp(240px, 42svh, 360px);
        max-height: clamp(240px, 42svh, 360px);
        overflow-y: auto;
}
}

/* ==== 40-components/rx-comment.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.rx-comment-thread {
display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    color: var(--cds-text-primary);
    background: var(--cds-rw-ctrl-bg, var(--cds-layer-01));
}
.rx-comment-thread__header {
display: flex;
    min-height: 48px;
    align-items: center;
    gap: 8px;
    padding: 0 16px;
    border-bottom: 1px solid var(--cds-border-subtle-01);
}
.rx-comment-thread__title {
margin: 0;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
}
.rx-comment-thread__composer,
.rx-comment-thread__article {
display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 12px;
}
.rx-comment-thread__composer {
padding: 16px;
/*    background: var(--cds-layer-01);*/
    border-top: 1px solid var(--cds-border-subtle-01);
}
.rx-comment-thread__composer-content,
.rx-comment-thread__content {
min-width: 0;
}
.rx-comment-thread__composer-label {
margin-bottom: 8px;
    color: var(--cds-text-secondary);
    font-size: 12px;
    font-weight: 600;
}
.rx-comment-thread__announcer:empty {
display: none;
}
.rx-comment-thread__list,
.rx-comment-thread__attachments {
margin: 0;
    padding: 0;
    list-style: none;
}
.rx-comment-thread__item {
position: relative;
}
.rx-comment-thread__item--reply {
margin-inline-start: 44px;
/*    border-inline-start: 2px solid var(--cds-border-subtle-01);*/
}
.rx-comment-thread__item--reply .rx-comment-thread__article {
padding-top: 12px;
    padding-bottom: 12px;
    background: var(--cds-rw-ctrl-bg, var(--cds-layer-01));
}
.rx-comment-thread__article {
position: relative;
    padding: 16px 48px 16px 16px;
    background: var(--cds-rw-ctrl-bg, var(--cds-layer-01));
}
.rx-comment-thread__item:hover .rx-comment-thread__article,
.rx-comment-thread__item:focus-within .rx-comment-thread__article {
background: var(--cds-layer-hover-01);
}
.rx-comment-thread__metadata {
display: flex;
    min-height: 20px;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 6px;
    color: var(--cds-gray-500);
    font-size: 12px;
}
.rx-comment-thread__author {
color: var(--cds-text-primary);
    font-size: 14px;
    font-weight: 600;
}
.rx-comment-thread__edited {
color: var(--cds-text-helper);
}
.rx-comment-thread__body {
min-width: 0;
    color: var(--cds-text-primary);
    font-size: 14px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
.rx-comment-thread__body a {
color: var(--cds-link-primary);
}
.rx-comment-thread__body--deleted {
color: var(--cds-text-helper);
    font-style: italic;
}
.rx-comment-thread__reply-action:hover:not(:disabled) {
color: var(--cds-link-primary);
}
.rx-comment-thread__reply-composer {
display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 12px;
    padding: 12px 16px 16px;
/*    background: var(--cds-layer-02);
    border-top: 1px solid var(--cds-border-subtle-01);*/
}
.rx-comment-thread__reply-composer--from-root {
margin-inline-start: 44px;
    border-inline-start: 2px solid var(--cds-border-subtle-01);
}
.rx-comment-thread__attachments {
display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}
.rx-comment-thread__attachment {
display: inline-flex;
    max-width: 100%;
    min-height: 32px;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    color: var(--cds-text-primary);
    background: var(--cds-layer-02);
    border: 1px solid var(--cds-border-subtle-01);
    text-decoration: none;
}
.rx-comment-thread__attachment:hover:not(:disabled) {
background: var(--cds-layer-hover-02);
}
.rx-comment-thread__attachment-name {
min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.rx-comment-thread__edit {
min-width: 0;
}
.rx-comment-thread__edit-actions {
display: flex;
    justify-content: flex-end;
    margin-top: 8px;
}
.rx-comment-thread__cancel {
min-height: 32px;
}
.rx-comment-thread__actions {
position: absolute;
    top: 8px;
    right: 8px;
    display: inline-flex;
    gap: 2px;
    padding: 2px;
/*    background: var(--cds-layer-01);
    border: 1px solid var(--cds-border-subtle-01);*/
}
.rx-comment-thread__action:hover:not(:disabled) {
color: var(--cds-icon-primary);
    background: var(--cds-layer-hover-01);
}
.rx-comment-thread__action:disabled {
color: var(--cds-icon-disabled);
    cursor: not-allowed;
}
.rx-comment-thread__action--danger:hover:not(:disabled) {
color: var(--cds-support-error);
}
.rx-comment-thread__state {
padding: 16px;
    color: var(--cds-text-secondary);
/*    background: var(--cds-layer-01);*/
    font-size: 13px;
}
.rx-comment-thread__state--error {
color: var(--cds-support-error);
    border-left: 3px solid var(--cds-support-error);
}
.rx-comment-thread__state--saving {
border-left: 3px solid var(--cds-link-primary);
}
.rx-comment-thread :focus-visible {
outline: 2px solid var(--cds-focus);
    outline-offset: 2px;
}
@media (max-width: 672px) {
.rx-comment-thread__composer,
    .rx-comment-thread__article,
    .rx-comment-thread__reply-composer {
grid-template-columns: 28px minmax(0, 1fr);
        gap: 8px;
        padding-left: 12px;
}
}
@media (max-width: 672px) {
.rx-comment-thread__item--reply,
    .rx-comment-thread__reply-composer--from-root {
margin-inline-start: 36px;
}
}
@media (max-width: 672px) {
.rx-comment-thread__attachments {
flex-direction: column;
}
}

/* ==== 40-components/rw-combobox.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.legacy.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.selected-tags.single-line {
display: flex;
    flex-wrap: nowrap;
    gap: 4px;
    overflow-x: auto; /* 가로 스크롤 가능하게 설정 */
}
.selected-tags.multi-line {
display: flex;
    flex-direction: column; /* 태그를 수직으로 배치 */
    gap: 4px;
}
.rw-combobox-container .options-container.show {
opacity: 1;
}
.rw-combobox-container .option-item {
padding: 5px 10px;
        cursor: pointer;
}
.rw-combobox-container .option-item.option-template-item {
padding: 0px;
height: auto;
}
.carbon-combobox {
background-color: var(--carbon-textbox-bg, #F4F4F4) !important; /* 해당 소스 주석 시 초기 랜더링 됨.*/
    border: none !important;
    border-bottom: 1px solid var(--carbon-textbox-border-bottom, #8d8d8d) !important;
}
input.carbon-combobox-input {
background-color: var(--carbon-textbox-bg, #F4F4F4) !important; /* 해당 소스 주석 시 초기 랜더링 됨.*/
    border: none !important;
}
input.carbon-combobox-input:disabled,
    input.carbon-combobox-input.disabled {
background-color: var(--white-color, #FFFFFF) !important;
        /*        border-bottom: 1px solid var(--carbon-textbox-border-bottom-readonly, #e7e7e7) !important;*/
}
.carbon-combobox-item:hover {
background-color: var(--carbon-combobox-bg) !important;
        color: #fff;
}
button.rw-combobox-inline-editor-view {
appearance: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    min-height: 32px;
    padding: 0 8px;
    border: 1px solid transparent;
    background: transparent;
    color: var(--cds-text-primary);
    font: inherit;
    line-height: 1.4;
    text-align: left;
    cursor: pointer;
    transition: background-color 110ms ease, border-color 110ms ease;
}
.rw-combobox-inline-editor-view:hover {
background: var(--cds-layer-hover-01);
    border-bottom-color: var(--cds-border-strong-01);
}
.rw-combobox-inline-editor-view:focus-visible {
outline: 2px solid var(--cds-focus);
    outline-offset: -2px;
}
.rw-combobox-inline-editor-value {
min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.rw-combobox-inline-editor-empty {
color: var(--cds-text-placeholder);
}
.rw-combobox-inline-editor-action::before {
content: "\270e";
}
.rw-combobox-inline-editor-view:hover .rw-combobox-inline-editor-action,
.rw-combobox-inline-editor-view:focus-visible .rw-combobox-inline-editor-action {
opacity: 1;
}
.rw-combobox-inline-editor-view.rw-combobox-inline-editor-readonly {
cursor: default;
}
.rw-combobox-inline-editor-view.rw-combobox-inline-editor-readonly:hover {
background: transparent;
    border-bottom-color: transparent;
}
.rw-combobox-inline-editor.rw-combobox-editing {
outline: 2px solid var(--cds-focus);
    outline-offset: -2px;
}
.rw-combobox-view,
.rw-selector-view,
.rw-combobox-inline-editor,
.rw-selector-inline-editor {
width: 100%;
}
.rw-combobox-inline-editor:hover .rx-combo-toggle,
.rw-combobox-inline-editor:focus-within .rx-combo-toggle,
.rw-selector-inline-editor:hover .dock-right,
.rw-selector-inline-editor:focus-within .dock-right {
opacity: 1;
}
.rw-combobox-inline-editor:focus-within,
.rw-selector-inline-editor:focus-within {
outline: 2px solid var(--cds-focus);
    outline-offset: -2px;
}

/* ==== 40-components/cds-tag.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.surface.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.legacy.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.cds-badge-indicator {
position: absolute;
    display: flex;
    padding: 1px 4px 2px;
    font-size: 11px;
    inset-block-start: 4px;
    inset-inline-end: 4px;
    background-color: var( --cds-icon-danger);
    color: var(--cds-text-on-color);
    max-block-size: 16px;
    min-block-size: 8px;
    min-inline-size: 8px;
    border-radius: 100px;
}
.cds-tag {
display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    cursor: default;
    padding: 2px 8px 4px;
    font-size: 12px;
}
.cds-tag-label {
white-space: nowrap;
}
.cds-tag-blue {
background-color: var(--cds-tag-bg-blue, #D0E2FF);
    color: var(--cds-tag-text-blue, #0043CE);
}
.cds-tag-red {
background-color: var(--cds-tag-bg-red, #FFD7D9);
    color: var(--cds-tag-text-red, #A2191F);
}
.cds-tag-green {
background-color: var(--cds-tag-bg-green, #A7F0BA);
    color: var(--cds-tag-text-green, #0E6027);
}
.cds-tag-gray {
background-color: var(--cds-tag-bg-gray, #E0E0E0);
    color: var(--cds-tag-text-gray, #161616);
}
.cds-tag-yellow {
background-color: var(--cds-tag-bg-yellow, #f1c21b);
    color: var(--cds-tag-text-yellow, #161616);
}
.cds-tag-black {
background-color: var(--cds-tag-bg-black, #393939);
    color: var(--cds-tag-text-black, #ffffff);
}
.cds-tag-purple {
background-color: var(--cds-tag-bg-purple, #E8DAFF);
    color: var(--cds-tag-text-purple, #6929C4);
}
.cds-tag-outline {
outline: 1px solid var(--cds-background-inverse, #393939);
    outline-offset: -1px;
}
.cds-tag-close {
padding-right:0 !important;
}
.cds-tag-close .cds-icon-only-btn {
border-radius: 50% !important;
}
.cds-status-indicator {
display: inline-flex;
    align-items: center;
}
.cds-status-dot--success {
background-color: #24a148;
}
.cds-status-dot--info {
background-color: #0f62fe;
}
.cds-status-dot--warning {
background-color: #f1c21b;
}
.cds-status-dot--error {
background-color: #da1e28;
}
.cds-status-dot--inactive {
background-color: #8d8d8d;
}
.cds-status-badge {
display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #161616;
}
.remote-container .teams-list-wrap .cds-tag-wrap {
width: 75px;
}

/* ==== 40-components/cds-thread.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.cds-thread {
background: #ffffff;
    border: 1px solid #e0e0e0;
    color: #161616;
}
.cds-thread__header {
min-height: 72px;
    padding: 16px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    border-bottom: 1px solid #e0e0e0;
}
.cds-thread__header h2 {
margin: 0;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0;
}
.cds-thread__header p {
margin: 6px 0 0;
    color: #525252;
    font-size: 12px;
}
.cds-thread__header-actions {
display: flex;
    align-items: center;
    gap: 8px;
}
.cds-thread__error {
margin: 16px 24px 0;
}
.cds-thread__composer {
padding: 24px;
    border-bottom: 1px solid #c6c6c6;
    background: #f4f4f4;
}
.cds-thread__composer-label {
margin-bottom: 12px;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
}
.cds-thread__composer-label strong {
font-size: 14px;
    font-weight: 600;
}
.cds-thread__composer-label span {
color: #525252;
    font-size: 12px;
    text-align: right;
}
.cds-thread__editor {
min-height: 240px;
}
.cds-thread__composer .ql-toolbar,
.cds-thread__composer .ql-container {
border: 1px solid #8d8d8d;
    border-radius: 0;
}
.cds-thread__composer .ql-container {
min-height: 192px;
    border-top: 0;
    background: #ffffff;
}
.cds-thread__composer .ql-editor {
min-height: 192px;
}
.cds-thread__composer-actions {
margin-top: 16px;
    display: flex;
    justify-content: flex-end;
}
.cds-thread__empty {
min-height: 152px;
    padding: 32px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #525252;
    text-align: center;
}
.cds-thread__empty strong {
color: #161616;
    font-size: 14px;
}
.cds-thread__empty > span:last-child {
font-size: 12px;
}
.cds-thread__timeline {
position: relative;
    padding: 8px 24px 16px;
}
.cds-thread__timeline::before {
content: "";
    position: absolute;
    top: 32px;
    bottom: 40px;
    left: 43px;
    width: 1px;
    background: #c6c6c6;
}
.cds-thread__insert-action {
position: relative;
    z-index: 2;
    height: 24px;
    margin: -12px 0 -12px 56px;
    display: flex;
    align-items: center;
    opacity: 0;
    transition: opacity 120ms ease;
}
.cds-thread__insert-action:hover,
.cds-thread__insert-action:focus-within {
opacity: 1;
}
.cds-thread__insert-action::before,
.cds-thread__insert-action::after {
content: "";
    height: 1px;
    flex: 1 1 auto;
    background: #c6c6c6;
}
.cds-thread__insert-action button {
min-height: 24px;
    padding: 0 8px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 0;
    background: #ffffff;
    color: #0f62fe;
    cursor: pointer;
    font-size: 12px;
}
.cds-thread__insert-action button:focus-visible {
outline: 2px solid #0f62fe;
    outline-offset: 2px;
}
.cds-thread__entry {
position: relative;
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 16px;
    padding: 16px 0;
}
.cds-thread__avatar-image {
width: 100%;
    height: 100%;
    border-radius: inherit;
    object-fit: cover;
}
.cds-thread__entry--received .cds-thread__marker {
background: #525252;
}
.cds-thread__entry--progress .cds-thread__marker {
background: #0f62fe;
}
.cds-thread__entry--hold .cds-thread__marker {
background: #f1c21b;
    color: #161616;
}
.cds-thread__entry--done .cds-thread__marker {
background: #198038;
}
.cds-thread__entry--cancelled .cds-thread__marker {
background: #da1e28;
}
.cds-thread__entry-body {
min-width: 0;
    padding: 0 0 20px;
    border-bottom: 1px solid #e0e0e0;
}
.cds-thread__entry:last-child .cds-thread__entry-body {
border-bottom: 0;
}
.cds-thread__entry-head {
min-height: 40px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}
.cds-thread__entry-head > div:first-child {
display: flex;
    flex-direction: column;
    gap: 3px;
}
.cds-thread__entry-head strong {
font-size: 14px;
    font-weight: 600;
}
.cds-thread__entry-head time {
color: #6f6f6f;
    font-size: 12px;
}
.cds-thread__entry-actions {
display: flex;
    align-items: center;
    gap: 8px;
}
.cds-thread__event-label,
.cds-thread__pinned {
min-height: 24px;
    padding: 3px 8px;
    display: inline-flex;
    align-items: center;
    background: #e8e8e8;
    color: #393939;
    font-size: 12px;
}
.cds-thread__pinned {
background: #d0e2ff;
    color: #0043ce;
}
.cds-thread__content {
margin-top: 12px;
    font-size: 14px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}
.cds-thread__content strong {
display: block;
    margin-bottom: 8px;
    font-weight: 600;
}
.cds-thread__content p {
margin: 0;
}
@media (max-width: 640px) {
.cds-thread__header,
    .cds-thread__composer {
padding: 16px;
}
}
@media (max-width: 640px) {
.cds-thread__header {
align-items: flex-start;
        flex-direction: column;
}
}
@media (max-width: 640px) {
.cds-thread__header-actions {
width: 100%;
        display: grid;
        grid-template-columns: 32px minmax(0, 1fr);
}
}
@media (max-width: 640px) {
.cds-thread__insert-action {
display: none;
}
}
@media (max-width: 640px) {
.cds-thread__composer-label,
    .cds-thread__entry-head {
align-items: flex-start;
        flex-direction: column;
}
}
@media (max-width: 640px) {
.cds-thread__composer-label span {
text-align: left;
}
}
@media (max-width: 640px) {
.cds-thread__timeline {
padding-inline: 16px;
}
}
@media (max-width: 640px) {
.cds-thread__timeline::before {
left: 35px;
}
}
@media (max-width: 640px) {
.cds-thread__entry {
gap: 12px;
}
}

/* ==== 60-echo/echo-chat.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.legacy.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css, WaveWorks.RxComponents/wwwroot/echo/css/echo-chat.css에서 이전됨) */
.prompt-container .cds-top-btn {
border-bottom: 1px solid var( --cds-border-subtle-01, #e0e0e0) !important;
}
.prompt-container .cds-top-btn > *:last-child {
margin-right: 0px !important;
}
@media (max-width: 1023px) {
.chat-content-root {
padding-left: 3vh;
        padding-right: 3vh;
}
}
.cds-copilot-echo .echo-fade-bg::after {
height: 120px !important;
}
.cds-copilot-echo.echo-ai-bg {
background-image: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgb(69 137 255 / 15%) 40%) !important;
    background-size: 100% !important;
}
.cds-copilot-echo .echo-assistant-container .echo-message-icon .spinner-border {
display: none;
    width: 14px !important;
    height: 14px !important;
}
.cds-copilot-echo .echo-assistant-container .echo-message-icon .carbon-icon {
display: inline-block;
}
.cds-copilot-echo .echo-assistant-container:last-of-type .echo-message-icon:has(.carbon-icon.is-loading) .spinner-border {
display: inline-block;
}
.cds-copilot-echo .echo-assistant-container:last-of-type .echo-message-icon:has(.carbon-icon.is-loading) .carbon-icon {
display: none;
}
.cds-copilot-echo .markdown-body {
word-break: break-all;
    /* 단어 단위와 상관없이 너비 끝에서 줄바꿈 */
    overflow-wrap: break-word;
    /* 긴 단어가 있으면 줄바꿈 (강력 추천) */
    white-space: normal;
    /* 텍스트가 한 줄로 쭉 이어지지 않게 설정 */
}
.cds-copilot-echo .markdown-body ol li {
margin-bottom: 8px !important;
}
.cds-copilot-echo .markdown-body ol ul {
padding-left: 16px !important;
    margin-bottom: 16px;
}
.cds-copilot-echo .markdown-body ol p {
margin-bottom: 8px !important;
}
.cds-copilot-echo .markdown-body li {
margin-bottom: 4px;
}
.cds-copilot-echo .markdown-body em {
font-style: normal;
}
.cds-copilot-echo .markdown-body h3,
.cds-copilot-echo .markdown-body h4 {
font-size: 13px !important;
}
.echo-input::placeholder {
color: var(--cds-text-placeholder, #a8a8a8);
}
[data-bs-theme=light] .ai-bg {
background: linear-gradient(180deg, rgba(38, 38, 38, 0) 0%, rgba(38, 38, 38, 0) 80%, rgb(174 204 255 / 16%) 90%, rgb(148 187 255 / 28%) 100%);
}
[data-bs-theme=dark] .ai-bg {
background: linear-gradient( 180deg, rgba(38, 38, 38, 0) 0%, rgba(38, 38, 38, 0) 80%, rgba(46, 72, 116, 0.16) 90%, rgba(74, 116, 188, 0.28) 100% );
}
.echo-chat-assistant__activity-item--live-only .echo-chat-assistant__status-text {
opacity: 0.8;
}
.echo-chat-assistant .echo-info-wrap {
container-type: inline-size;
}
.app-title-container .token-wrap .echo-token-percent {
display: none;
}
@container (max-width: 480px) {
.app-title-container .token-wrap .echo-token-full {
display: none;
}
}
@container (max-width: 480px) {
.app-title-container .token-wrap .echo-token-percent {
display: inline;
}
}
.app-title-container .ai-icon {
display: flex;
        align-items: center;
        justify-content: center;
        padding: 4px;
        margin-right: 8px;
        height: 24px;
        width: 24px;
        font-size: 12px;
        font-weight: 600;
        letter-spacing: 0.5px;
        cursor: default;
        border: 1px solid var(--cds-text-primary, #161616);
}
.app-title-container .echo-version {
padding: 14px 16px;
        cursor: default;
        line-height: 20px;
}
.thinking-text-container {
color: var(--bs-gray-600);
    font-size: 14px;
    padding: 12px 28px;
    margin-left: 5px;
    border-radius: 0 !important;
    white-space: normal;
    word-wrap: break-word;
    line-height: 1.75;
}
.thinking-text-container .thinking-text-content {
white-space: normal;
}
@media (max-width:767px) {
.thinking-text-container {
padding: 20px;
}
}
.echo-chat-assistant .thinking-text-container span.is-loading {
display: inline-block;
    background: linear-gradient(90deg, var(--cds-text-secondary, #525252) 0%, var(--cds-text-primary, #161616) 45%, var(--cds-link-primary, #0f62fe) 55%, var(--cds-text-secondary, #525252) 100%);
    background-size: 220% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    animation: echoThinkingTextSweep 1.6s linear infinite;
}
.echo-chat-assistant .thinking-text-container span.is-loading::after {
content: none;
}
.echo-chat-assistant .echo-thinking-dots {
display: inline-flex;
    align-items: center;
    gap: 5px;
    line-height: 1;
    vertical-align: middle;
}
.echo-chat-assistant .echo-thinking-dots--below {
display: flex;
    margin-top: 7px;
    margin-left: 1px;
}
.echo-chat-assistant .echo-dot {
display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--cds-interactive-01, #0f62fe);
    animation: echoDotPulse 1.15s ease-in-out infinite;
}
.echo-chat-assistant .echo-dot:nth-child(2) {
animation-delay: 0.16s;
}
.echo-chat-assistant .echo-dot:nth-child(3) {
animation-delay: 0.32s;
}
.echo-chat-assistant .echo-thinking-indicator {
display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 20px;
    padding: 2px 0;
}
.echo-chat-assistant .thinking-text-container .echo-thinking-dots::after,
.echo-chat-assistant .thinking-text-container .echo-dot::after {
content: none;
    display: none;
}
.echo-chat-assistant .app-title-container {
background: var(--bs-body-bg);
    border-bottom: 1px solid #e5e5e5;
}
.echo-chat-assistant .echo-chat-body-container {
border: 0 solid #ccc;
    border-radius: 0;
    width: 95%;
    max-width: 720px !important;
    line-height: 1.75em;
    font-size: 16px;
    font-weight: 400;
}
.echo-chat-assistant .chat-assistant-container {
justify-content: start;
    width: 100%;
}
.echo-chat-assistant .chat-assistant-container .echo-message-icon .spinner-border {
display: none;
}
.echo-chat-assistant .chat-assistant-container .echo-message-icon .carbon-icon {
display: inline-block;
}
.echo-chat-assistant .chat-assistant-container:last-of-type .echo-message-icon:has(.carbon-icon.is-loading) .spinner-border {
display: inline-block;
}
.echo-chat-assistant .chat-assistant-container:last-of-type .echo-message-icon:has(.carbon-icon.is-loading) .carbon-icon {
display: none;
}
.echo-chat-assistant .chat-user-container {
justify-content: flex-end;
    width: 100%;
    padding: 16px 0 0 0;
}
.echo-chat-assistant .echo-chat-body-container > .echo-chat-assistant__turn:last-of-type {
padding-bottom: 150px;
}
.echo-chat-assistant .echo-chat-assistant__image-thumb {
display: block;
    padding: 0;
    border: 0;
    border-radius: 6px;
    background: transparent;
    cursor: zoom-in;
}
.echo-chat-assistant .echo-chat-assistant__image-thumb:focus-visible {
outline: 2px solid var(--cds-border-interactive, #0f62fe);
        outline-offset: 3px;
}
.echo-chat-assistant__image-viewer {
position: fixed;
    inset: 0;
    z-index: 2147483000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 48px 24px;
    background: rgba(0, 0, 0, 0.78);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
}
.echo-chat-assistant__image-viewer-content {
position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: calc(100vw - 48px);
    max-height: calc(100vh - 96px);
}
.echo-chat-assistant__image-viewer-image {
display: block;
    max-width: calc(100vw - 72px);
    max-height: calc(100vh - 120px);
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 18px 60px rgba(0, 0, 0, 0.42);
}
.echo-chat-assistant .messages {
margin-bottom: 10px;
}
.echo-chat-assistant .request-container {
position: absolute;
    bottom: 10px;
    left: -8px;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    width: 95%;
    max-width: 710px;
    margin-inline: auto;
    z-index: 99;
    overflow: hidden;
}
.echo-chat-assistant .request-container::before,
.echo-chat-assistant .request-container::after {
content: "";
    position: absolute;
    left: 0;
    right: 0;
    pointer-events: none;
    z-index: -1;
}
.echo-chat-assistant .request-container::before {
top: -40px;
    height: 44px;
/*    background: linear-gradient(to top, rgba(249, 249, 249, 0.96) 12%, rgba(249, 249, 249, 0.82) 40%, rgba(249, 249, 249, 0) 100%);*/
}
.echo-chat-assistant .request-container::after {
bottom: -24px;
    height: 24px;
    background: linear-gradient(to bottom, rgba(249, 249, 249, 0.92) 0%, rgba(249, 249, 249, 0) 100%);
}
.echo-chat-assistant .request-container .request-content button:hover {
background-color: var(--cds-background-hover, #8d8d8d12) !important;
}
.echo-chat-assistant .request-container .request-content button:focus {
background-color: transparent;
    outline: none;
    border: none;
    box-shadow: none;
}
.echo-chat-assistant .request-container .request-content .dock-left .cds-icon-only-btn:first-child {
border-radius: 8px 0 0 8px;
}
.echo-chat-assistant .request-container .request-content .dock-right .cds-icon-only-btn {
border-radius: 0 8px 8px 0;
}
.echo-chat-assistant__turn-meta {
display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: -8px;
    padding-top: 0;
    padding-top: 0;
    margin-left: 33px;
    color: var(--bs-gray-600, #525252);
    font-size: 10px;
}
.echo-chat-assistant__lineage-btn {
min-height: 24px;
    height: 24px;
    padding: 0 8px;
    font-size: 12px;
}
.echo-chat-assistant .request-container.drag-over {
border-color: #0d6efd !important;
    background-color: rgba(13, 110, 253, 0.05);
}
.echo-chat-assistant .request-container.drag-over::before {
content: "이미지를 여기에 드롭하세요";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        background: rgba(13, 110, 253, 0.9);
        color: white;
        padding: 12px 24px;
        border-radius: 8px;
        font-weight: bold;
        z-index: 10;
        pointer-events: none;
}
@media (max-width: 768px) {
.echo-chat-assistant .chat-content-root {
padding-left: 1vh;
        padding-right: 1vh;
}
}
@media (max-width: 768px) {
.echo-chat-assistant .request-container {
width: 94%;
        left: 0 !important;
}
}
.echo-chat-host .markdown-body {
padding-left: 32px;
}
.v2-general-page .echo-chat-host .dock-bottom.request-container .request-content .cds-icon-only-btn {
width: 36px;
            height: 36px;
            min-width: 36px;
            border-radius: 10px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border: 0;
            background: #eef3fb;
            color: #334155;
}
.v2-general-page .echo-chat-host .dock-bottom.request-container .request-content .cds-icon-only-btn:hover {
background: #e2eaf8 !important;
}
.v2-general-page .echo-chat-host .dock-bottom.request-container .request-content .cds-icon-only-btn:disabled {
opacity: 0.55;
}
@keyframes echoThinkingTextSweep {
0% {
        background-position: 120% 0;
    }

    100% {
        background-position: -120% 0;
    }
}
@keyframes echoDotPulse {
0%,
    80%,
    100% {
        opacity: 0.35;
        transform: translateY(0);
    }

    40% {
        opacity: 1;
        transform: translateY(-2px);
    }
}
.echo-chat-host {
overflow: hidden;
}
.echo-chat-assistant__context-title,
.echo-chat-assistant__context-description {
min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.echo-chat-assistant__context-title {
font-size: 14px;
    font-weight: 600;
    line-height: 20px;
}
.echo-chat-assistant__context-description {
color: var(--cds-text-secondary, #525252);
    font-size: 12px;
    line-height: 16px;
}
.echo-chat-assistant__suggested-action strong,
.echo-chat-assistant__suggested-action span {
overflow-wrap: anywhere;
}
.echo-chat-assistant__suggested-action span {
color: var(--cds-text-secondary, #525252);
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
}
.echo-history-scrim {
position: absolute;
    inset: 0;
    z-index: 40;
    background: rgba(22, 22, 22, 0.28);
    animation: echoHistoryScrimIn 160ms ease-out;
}
@keyframes echoHistoryScrimIn {
from { opacity: 0; }
    to { opacity: 1; }
}
.echo-history-drawer.is-open {
transform: translateX(0);
    visibility: visible;
}
.echo-history-drawer.is-open ~ .dock-bottom .request-content {
display: none !important;
}
.echo-history-drawer__header {
display: flex;
    align-items: center;
    justify-content: space-between;
    height: 50px;
    padding: 0 8px 0 16px;
    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.echo-history-drawer__title {
font-size: 14px;
    font-weight: 600;
    color: var(--cds-text-primary);
}
.echo-history-drawer__new:hover {
background: #edf4ff;
}
.echo-history-drawer__empty {
padding: 24px 12px;
    color: var(--echo-gray-60, #525252);
    font-size: 13px;
    text-align: center;
}
.echo-bot-channel {
border: 1px solid var(--echo-gray-20, #e0e0e0);
    background: var(--echo-gray-10, #f4f4f4);
    margin-bottom: 8px;
}
.echo-bot-channel.is-active {
border-color: var(--echo-blue-60, #0f62fe);
}
.echo-history-drawer__item-top {
display: flex;
    align-items: center;
    gap: 4px;
}
.echo-history-drawer__item-preview {
margin-top: 2px;
    font-size: 12px;
    color: var(--cds-text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
@media (prefers-reduced-motion: reduce) {
.echo-history-scrim {
animation: none;
}
}
.thinking-text-container.mcp-progress-running {
border-color: #b8b8b8 !important;
}
.thinking-text-container.mcp-progress-done {
border-color: #24a148 !important;
    background-color: #f3fff6;
    display:none;
}
.echo-ai-window {
border-radius: 16px !important;
/*    overflow: visible !important;*/
    border: 1px solid var(--cds-gray-400);
}
[data-bs-theme=light] .echo-ai-window {
box-shadow: rgba(255, 255, 255, 0.22) 0px 0px 2px 0px inset, rgba(255, 255, 255, 0.18) 0px 0px 4px 1px, rgb(255 255 255 / 35%) 0px 0px 6px 4px, rgba(255, 255, 255, 0.12) 0px 0px 80px 12px !important;
}
[data-bs-theme=dark] .echo-ai-window {
box-shadow: rgba(255, 255, 255, 0.12) 0px 0px 2px 0px inset, rgba(0, 0, 0, 0.05) 0px 0px 2px 1px, rgba(0, 0, 0, 0.3) 0px 12px 30px !important;
}
[data-bs-theme=light] .echo-ai-window .ai-bg {
background: linear-gradient(180deg, rgba(38, 38, 38, 0) 0%, rgba(38, 38, 38, 0) 50%, rgb(174 204 255 / 16%) 70%, rgb(148 187 255 / 28%) 100%);
}
[data-bs-theme=dark] .echo-ai-window .ai-bg {
background: linear-gradient( 180deg, rgba(38, 38, 38, 0) 0%, rgba(38, 38, 38, 0) 50%, rgba(46, 72, 116, 0.16) 70%, rgba(74, 116, 188, 0.28) 100% );
}
.echo-ai-window .request-container .request-content.failed {
outline: 2px solid #da1e28;
    outline-offset: -2px;
}
.echo-ai-window .echo-chat-assistant .echo-chat-body-container {
font-size: 14px !important;
}
.echo-ai-window .drag-bar-wrap {
width: 100%;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: move;
}
.echo-ai-window .drag-bar {
width: 100px;
    height: 3px;
    background-color: var(--cds-gray-500, #8d8d8d);
    border-radius: 50px;
}
.echo-ai-window .echo-info-wrap {
width: 95%;
    background-color: var(--cds-layer-01, #f4f4f4) !important;
    border-radius: 8px;
}
.echo-ai-window .echo-info-wrap .app-title-container {
border: 0 !important;
}
.echo-ai-window .thinking-text-container .echo-chat-assistant__status-text {
padding-left: 16px !important;
}
.echo-ai-window .thinking-text-container .echo-chat-assistant__status-text.is-loading {
padding-left: 0 !important;
}
.echo-ai-window .echo-chat-assistant__chart-block {
padding-left: 32px !important;
    margin-top: 16px !important;
}
.echo-ai-window .echo-chart-title {
font-weight: 600 !important;
    font-size: 14px;
}
.echo-ai-window .echo-chat-assistant .chat-user-container {
padding-left: 80px !important;
}
.echo-ai-window .echo-window-header:hover .position-absolute.top-0 {
display: block !important;
}



.echo-chat-message-row--user {
    display: flex;
    justify-content: flex-end;
}
.echo-chat-message-row--assistant {
display: flex;
    justify-content: flex-start;
}
.echo-chat-body-container .echo-new-chat {
display: flex;
    flex-direction: column;
    justify-content: center;
    min-height:220px;
}
.echo-chat-bubble {
max-width: min(92%, 960px);
    /*    border: 1px solid var(--echo-bubble-border, #d0d7e2) !important;*/
    /*    border-radius: 12px !important;*/
}
.echo-chat-bubble--user {
background-color: var(--cds-echo-bubble, #f4f4f4);
}
.echo-chat-bubble--assistant {
background: var(--echo-assistant-bubble-bg, #ffffff);
}
.echo-chat-plain {
margin: 0;
    white-space: pre-wrap;
    font-family: "IBM Plex Sans", var(--ww-font-ibm-sans-kr), "Segoe UI", sans-serif;
    color: var(--cds-text-primary, #161616);
}
.echo-response-metrics {
margin-top: 8px;
    order: 4;
}
.echo-response-metrics__row {
display: flex;
    flex-wrap: wrap;
    gap: 10px;
    /*    color: var(--cds-text-secondary, #525252);*/
    color: var(--text-gray-400, #9ca3af);
    font-size: 12px;
    line-height: 1.2;
}
.echo-thinking-block {
margin-bottom: 8px;
    margin-left: 16px;
    padding: 0px 10px;
    border-left: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    padding-left: 16px;
    white-space: pre-wrap;
    font-size: 12px;
    line-height: 1.45;
    color: var(--cds-text-secondary, #525252);
}
.echo-orch-feed {
display: flex;
flex-direction: column;
gap: 6px;
}
.echo-progress-panel {
display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    margin: 0 0 12px 16px;
    padding-left: 16px;
    border-left: 1px solid var(--cds-border-subtle-01, #e0e0e0);
}
.echo-progress-panel__headline.is-live .echo-progress-panel__headline-text {
background: linear-gradient(90deg, #dbeafe 0%, #ffffff 50%, #bfdbfe 100%);
    background-size: 220% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: echoProgressTextSweep 1.6s linear infinite;
}
.echo-progress-panel__headline.is-error {
border-color: rgba(218, 30, 40, 0.6);
    background: rgba(218, 30, 40, 0.08);
}
.echo-chat-assistant__activity-item {
animation: echoStepEnter 240ms ease-out;
}
@keyframes echoStepEnter {
from {
        opacity: 0;
        transform: translateY(4px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}
.echo-chat-assistant__activity-item .thinking-text-content:has(> .echo-chat-assistant__status-text.is-loading),
.thinking-text-container.is-live .thinking-text-content {
position: relative;
    padding-left: 18px;
}
.echo-chat-assistant__activity-item[data-state="Succeeded"] .echo-chat-assistant__status-text,
.echo-chat-assistant__activity-item[data-state="Completed"] .echo-chat-assistant__status-text {
color: var(--cds-text-secondary, #525252);
    transition: color 300ms ease;
}
.echo-thinking-dots .echo-dot,
.echo-thinking-indicator .echo-dot {
animation-timing-function: ease-in-out;
}
.echo-progress-panel__headline.is-live .echo-progress-panel__headline-icon {
animation: echoProgressPulse 1.15s ease-in-out infinite;
}
.echo-progress-panel__headline.is-error .echo-progress-panel__headline-icon {
background: var(--echo-orch-error-border, #da1e28);
}
.echo-progress-panel__headline-text {
white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.01em;
}
.echo-progress-panel__detail.is-error {
color: var(--echo-orch-error-border, #da1e28);
}
.echo-progress-panel__detail.is-live .echo-progress-panel__detail-text {
animation: echoProgressDetailFade 1.2s ease-in-out infinite;
}
.echo-orch-item--error {
background: var(--echo-orch-error-bg);
    border-color: var(--echo-orch-error-border);
    box-shadow: inset 3px 0 0 var(--echo-orch-error-border);
}
.echo-orch-item--error::before {
background: var(--echo-orch-error-border);
}
.echo-orch-badge--phase {
background: #dbeafe;
    color: #1e3a8a;
    border: 1px solid #bfdbfe;
}
.echo-orch-badge--status {
background: #e5e7eb;
    color: #374151;
    border: 1px solid #d1d5db;
}
.echo-orch-item__raw {
margin-top: 4px;
    padding: 4px 6px;
    border-radius: 6px;
    border: 1px dashed #cbd5e1;
    background: #f8fafc;
    color: #64748b;
    font-family: "IBM Plex Mono", "D2Coding", Consolas, monospace;
    font-size: 11px;
    line-height: 1.4;
    white-space: pre-wrap;
    word-break: break-word;
}
.echo-orch-item--transient {
border: 0;
    background: transparent;
    box-shadow: none;
    padding: 2px 0 2px 2px;
    font-size: 12px;
    color: #6f6f6f;
}
.echo-orch-item--transient::before {
display: none;
}
.echo-chat-bubble--assistant.has-main-content .echo-orch-item--transient {
display: none;
}
.echo-phase--mcp {
order: 1;
}
.echo-phase--thinking {
order: 2;
}
.echo-phase--response {
order: 3;
}
.echo-phase-card__head {
display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 34px;
    margin-left: 16px;
    padding-bottom:4px;
}
.echo-phase-card__title {
font-size: 12px;
    color: var(--cds-text-primary, #161616);
    padding: 0px 12px;
}
.echo-phase-card__toggle {
border: 0;
    border-radius: 20px;
    background-color: var(--cds-layer-03, #fafafa);
    padding: 0 12px;
    font-size: 12px;
    color: var(--cds-text-primary, #161616);
}
.echo-phase-card__toggle:hover {
background-color: var(--cds-layer-hover, #e8e8e8);
}
.echo-phase-card__body {
margin-top: 8px;
        padding: 10px 14px;
        border-radius: 4px;
}
.echo-phase-card__body > div {
/* 3줄 제한 핵심 코드 */
            max-height: 4.5em; /* line-height(1.5) * 3줄 = 4.5em */
            line-height: 1.5;
            overflow-y: auto; /* 세로 스크롤 활성화 */
            font-size: 14px;
            color: var(--cds-text-secondary, #525252);
            white-space: pre-wrap; /* 줄바꿈 허용 */
            word-break: break-all;
}
.echo-phase-card.is-collapsed .echo-phase-card__body {
display: none;
}
.echo-phase-card.is-active .echo-phase-card__head {
border-bottom: 0;
}
.echo-phase-card--mcp .echo-orch-feed {
margin-bottom: 0;
}
.echo-orch-feed {
margin-bottom: 0;
    margin-left: 16px;
    border-left: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    padding-left: 16px;
}
.echo-chat-host.mode-normal .echo-thinking-block--preview.is-active {
margin-bottom: 8px;
    padding: 8px 10px;
    border-left: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    padding-left: 16px;
    white-space: pre-wrap;
    font-size: 12px;
    line-height: 1.45;
    color: var(--cds-text-secondary, #525252);
}
.echo-chat-host.mode-debug .echo-phase--mcp,
.echo-chat-host.mode-debug .echo-phase--thinking {
display: block;
    opacity: 1;
    max-height: none;
}
.echo-chat-host .markdown-body {
font-family: "IBM Plex Sans", var(--ww-font-ibm-sans-kr), "Segoe UI", sans-serif;
    color: var(--cds-text-primary, #161616);
    font-size: 14px;
    line-height: 24px;
}
.echo-chat-host .markdown-body p {
margin-bottom: 8px;
    margin-top: 8px;
    word-break: normal;
    overflow-wrap: anywhere;
}
.echo-chat-host .markdown-body p:last-child {
margin-top: 0;
    margin-bottom: 0;
}
.echo-chat-host .markdown-body h1,
.echo-chat-host .markdown-body h2,
.echo-chat-host .markdown-body h3,
.echo-chat-host .markdown-body h4 {
margin-top: 8px;
    margin-bottom: 6px;
    font-family: "IBM Plex Sans", var(--ww-font-ibm-sans-kr), "Segoe UI", sans-serif;
    font-weight: 600;
}
.echo-chat-host .markdown-body ul,
.echo-chat-host .markdown-body ol {
margin-top:8px;
    margin-bottom: 8px;
    padding-left: 1.2rem;
}
.echo-chat-host .markdown-body blockquote {
margin: 0.65rem 0;
    border-left: 3px solid var(--echo-blue-60);
    background: #f6f9ff;
    color: #374151;
    border-radius: 0 8px 8px 0;
}
.echo-chat-host .markdown-body a {
color: var(--echo-blue-70);
    text-decoration: underline;
    text-underline-offset: 2px;
}
.echo-chat-host .markdown-body :not(pre) > code {
background: none;
    color: var(--cds-text-primary, #161616);
/*    border: 1px solid #d6e3ff;*/
/*    border-radius: 6px;*/
/*    padding: 0.12rem 0.38rem;*/
/*    font-family: "IBM Plex Mono", "D2Coding", Consolas, monospace;*/
    font-size: 12px;
    box-shadow: none;
    font-weight: 600;
    margin: 0;
    padding: 0;
}
.echo-chat-host .markdown-body .code-block {
display: flex;
    flex-direction: column;
    margin: 10px 0 16px !important;
    overflow: hidden;
}
.echo-chat-host .markdown-body .code-block .code-header .text-muted {
color: #ffffff !important;
    font-family: "IBM Plex Mono", Consolas, monospace;
    font-size: 12px;
}
.echo-chat-host .markdown-body .code-block pre,
.echo-chat-host .markdown-body pre[class*="language-"] {
background: var(--echo-code-bg) !important;
    margin: 0 !important;
    padding: 0 !important;
}
.echo-chat-host .markdown-body .code-block code,
.echo-chat-host .markdown-body code[class*="language-"] {
background: transparent !important;
    color: var(--echo-code-text) !important;
    font-family: "IBM Plex Mono", "D2Coding", Consolas, monospace;
    font-size: 12px;
    line-height: 1.58;
    text-shadow: none !important;
}
.echo-chat-host .markdown-body .code-block .copy-btn:hover {
border-color: #a8a8a8;
    background: #393939;
    color: #f4f4f4;
}
.echo-chat-host .request-content .echo-chat-stop-btn {
/*    min-width: 64px;
    height: 36px;
    padding: 0 12px;*/
    border-radius: 10px;
    font-size: 0.78rem;
    line-height: 1;
}
.echo-chat-host .markdown-body .token.comment, .echo-chat-host .markdown-body .token.doctype {
color: #8d8d8d;
}
.echo-chat-host .markdown-body .token.property,
.echo-chat-host .markdown-body .token.tag,
.echo-chat-host .markdown-body .token.constant,
.echo-chat-host .markdown-body .token.symbol,
.echo-chat-host .markdown-body .token.deleted {
color: #78a9ff;
}
.echo-chat-host .markdown-body .token.boolean,
.echo-chat-host .markdown-body .token.number {
color: #ff8389;
}
.echo-chat-host .markdown-body .token.selector, .echo-chat-host .markdown-body .token.string, .echo-chat-host .markdown-body .token.char, .echo-chat-host .markdown-body .token.inserted {
color: #42be65;
}
.echo-chat-host .markdown-body .token.operator, .echo-chat-host .markdown-body .token.entity, .echo-chat-host .markdown-body .token.url, .echo-chat-host .markdown-body .style .token.string {
color: #a6c8ff;
}
.echo-chat-host .markdown-body .token.keyword {
color: #be95ff;
}
.echo-chat-host .markdown-body .token.function {
color: #08bdba;
}
.echo-chat-host .markdown-body .token.regex,
.echo-chat-host .markdown-body .token.important,
.echo-chat-host .markdown-body .token.variable {
color: #f1c21b;
}
@media (max-width: 768px) {
.echo-chat-bubble {
max-width: 100%;
        border-radius: 10px !important;
}
}
@media (max-width: 768px) {
.echo-chat-host .markdown-body .code-block .cds-code-body {
padding: 0.72rem 0.75rem;
}
}
.v2-general-page .echo-chat-host .request-container .request-content .cds-icon-only-btn {
width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: #eef3fb;
    color: #334155;
}
.v2-general-page .echo-chat-host .request-container .request-content .cds-icon-only-btn:hover {
background: #e2eaf8 !important;
}
.v2-general-page .echo-chat-host .request-container .request-content .cds-icon-only-btn:disabled {
opacity: 0.55;
}
.echo-phase-card--mcp.is-active::after, .echo-phase-card--thinking.is-active::after {
content: "";
        position: absolute;
        inset: 0;
        transform: translateX(-120%);
        background: linear-gradient( 90deg, transparent 0%, rgba(255, 255, 255, 0) 35%, rgba(255, 255, 255, 0.55) 50%, rgba(255, 255, 255, 0) 65%, transparent 100% );
        mix-blend-mode: screen;
        animation: thinkingSweep 1.3s ease-in-out infinite;
        pointer-events: none;
}
@keyframes thinkingSweep {
0% {
        transform: translateX(-120%);
    }

    100% {
        transform: translateX(120%);
    }
}
@keyframes echoProgressPulse {
0% {
        box-shadow: 0 0 0 0 rgba(15, 98, 254, 0.28);
        transform: scale(0.92);
    }

    70% {
        box-shadow: 0 0 0 8px rgba(15, 98, 254, 0);
        transform: scale(1);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(15, 98, 254, 0);
        transform: scale(0.92);
    }
}
@keyframes echoProgressTextSweep {
0% {
        background-position: 200% 0;
    }

    100% {
        background-position: -20% 0;
    }
}
@keyframes echoProgressDetailFade {
0% {
        opacity: 0.65;
    }

    50% {
        opacity: 1;
    }

    100% {
        opacity: 0.65;
    }
}
.chat-assistant-container .echo-message-icon .spinner-border {
display: none;
}
.chat-assistant-container:last-of-type
.echo-message-icon:has(.carbon-icon.is-loading) .spinner-border {
display: inline-block;
}
.chat-assistant-container:last-of-type
.echo-message-icon:has(.carbon-icon.is-loading) .carbon-icon {
display: none;
}
.echo-memory-note {
font-size: 11px;
}
.echo-memory-note--success {
font-size: 11px; color: var(--echo-green-50, #24a148);
}
.echo-memory-card {
border-radius: 8px;
}
.echo-memory-content {
font-size: 13px;
}
.echo-memory-source {
font-size: 10px;
}

/* ==== 90-compat/unsorted.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.2024.01.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css에서 이전됨) */
.monaco-editor-container {
min-height: 500px;
    height: 100%;
}
.monaco-editor-container .monaco-editor {
padding-top: 20px;
}
.no-focus-border {
outline: none; /* 포커스 상태에서 외곽선 제거 */
}
.insert-above {
border-top: 1px dotted #333 !important;
}
.insert-below {
border-bottom: 1px dotted #333 !important;
}
.dragging {
opacity: 1.0; /* 드래그 중인 요소의 투명도 조절 */
}
.above {
bottom: 100%;
}
.below {
top: 100%;
}
.section-title {
font-size: 16px;
    font-weight: 500;
    margin-bottom: 8px;
    color: var(--cds-text-primary, #161616);
    white-space: nowrap;
}
#mailFrame {
width: 100%;
    border: 0;
    display: block;
    overflow: hidden;
}
.tox-tinymce {
border: 0px solid #eee !important;
    border-radius: 0px !important;
    box-shadow: none;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    overflow: hidden;
    position: relative;
    visibility: inherit !important
}
.tox .tox-edit-area__iframe {
background-color: transparent !important;
}

/* ==== 90-compat/order-fixes.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.shell.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.surface.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.rw-bridge.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.legacy.css, WaveWorks.RxComponents/wwwroot/css/rxcontrols.ui.carbon.2025.01.sample.css, WaveWorks.RxComponents/wwwroot/css/wave-carbon-design.css, WaveWorks.RxComponents/wwwroot/echo/css/echo-chat.css에서 이전됨) */
@media (min-width: 1024px) {
.wvs-sidebar.closed {
width: 48px;
}
}
.wvs-sidebar-nav-item {
display: flex;
    align-items: center;
    padding: 10px 16px;
    color: var(--cds-text-primary, #161616);
    text-decoration: none;
    transition: background 0.2s;
    gap: 12px;
    white-space: nowrap;
    
    /* 김정훈(2026.06.01) : 수정 */
    height: 32px;
    border-radius: 0 !important
    
    /*    border-color: var(--cds-border-subtle-01, #e0e0e0);*/
    /*    border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0);*/
}
.wvs-header-popover .rx-popover-container .rx-popover-content {
width: 200px;
        /*left: -152px !important;*/
        background-color: #292929;
        padding: 0 !important;
        border-radius: 0 !important;
        border: 0 !important;
        margin-top: 0px;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.8);
}
.wvs-header-notification-title {
color: var(--cds-text-on-color);
    padding: 12px 24px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    border-bottom: 1px solid var(--cds-background-active);
}
.cds-list-content .cds-list-item.active {
border-left: solid 3px var(--cds-focus, #0f62fe);
            background-color: var(--cds-layer-selected, #e0e0e0);
}
.cds-scroll-hover-y {
/* 1. 기본적으로 내용을 자르지 않음 */
    overflow-y: auto;
    /* 2. [핵심] WebKit(크롬, 엣지)에서 스크롤바를 내용물 위에 겹치게 만듦 (공간 차지 X) */
    overflow-y: overlay;
}
.cds-border-left-primary {
border-left: 3px solid var(--cds-primary);
    padding-left: 0;
}
.cds-fw-700 {
font-weight: 700;
}
.cds-control-wrap.cds-control-fluid .carbon-textbox,
        .cds-control-wrap.cds-control-fluid .carbon-textarea {
padding: 2px 10px 7px !important;
}
.carbon-textbox:disabled.viewer {
border-bottom: 0 !important;
    padding: 0 !important;
}
.carbon-textarea:disabled.viewer {
border-bottom: 0 !important;
        padding: 0 !important;
        background-color: var(--cds-bg-gray) !important;
}
@media (max-width: 1023px) {
.dock-wpanel.cds-filter-container {
flex-wrap: wrap !important; /* 줄바꿈 허용 */
        flex-direction: column !important;
        height: auto !important;
        min-height: 40px; /* 기본 높이 유지 */
}
}
@media (max-width: 1023px) {
.cds-filter-container > .dock-left.cds-filter-wrap {
flex-direction: column !important;
        flex: 1 1 100% !important;
        height: auto; /* 콤보박스 수에 따라 높이 조절 */
        margin: 0;
        padding: 0;
}
}
@media (max-width: 1023px) {
.cds-filter-container > .dock-right:last-child {
flex: 1 1 100% !important;
        height: 40px;
        margin: 0;
        padding: 0;
}
}
.cds-rw-grid-toolbar-container .autocomplete-container.autocomplete-tagify {
padding: 0 !important;
    /*    display: none !important;*/
}
.cds-tab-list.cds-contained-tab .cds-tabs-link {
position: relative;
flex: 1;
cursor: pointer;
background-color: var(--cds-layer-02, #e0e0e0);
color: var(--cds-text-secondary, #525252);
transition: background 0.11s cubic-bezier(0.2, 0, 0.38, 0.9);
padding: 11px 16px !important;
font-weight: 400;
white-space: nowrap;
box-shadow: none;
        border: 0;
}
.cds-combobox.rw-combobox-container .rx-combo-toggle {
border: none !important;
}
.cds-combobox.noborder.disabled {
border-bottom: 1px solid transparent !important;
}
.cds-combobox.viewer.disabled {
border-bottom: 0 !important;
}
.cds-autocompleted .autocomplete-list.selected {
border: none;
            background-color: var(--cds-field, #f4f4f4) !important
}
.cds-autocompleted.viewer.disabled {
border-bottom: 0 !important;
}
[data-bs-theme=dark] .cds-autocompleted .tag {
background-color: var(--cds-field-01, #f4f4f4);
}
.cds-autocomplete-tag .autocomplete-container.autocomplete-tagify {
border-bottom: 1px solid var(--cds-border-strong-01, #8d8d8d) !important;
    padding: 0 !important;
}
.cds-btn:disabled:hover {
background-color: var(--csd-button-disabled, #c6c6c6) !important;
}
.cds-btn-danger {
position: relative;
    border-style: solid;
    border-color: rgba(0, 0, 0, 0);
    background-color: var(--cds-button-danger-primary, #da1e28);
    color: var(--cds-text-on-color, #ffffff);
}
.cds-form-btn-set > * {
flex: 50%;
}
.cds-form-input {
color: var(--cds-text-primary, #161616) !important;
    flex: 0 1 auto !important;
}
.cds-notification-warning {
display: flex;
    flex-grow: 1;
    background-color: var(--cds-notification-warning, #FFF1F1);
    border: 1px solid #f1c21b30;
    border-inline-start: 3px solid var(--cds-support-warning, #f1c21b);
    padding-left: 16px;
}
.cds-notification-error {
display: flex;
    flex-grow: 1;
    background-color: var(--cds-notification-danger, #FFF1F1);
    border: 1px solid #DA1E2830;
    border-inline-start: 3px solid var(--cds-button-danger-primary, #da1e28);
    padding-left: 16px;
}
.cds-notification-fail {
display: flex;
    flex-grow: 1;
    background-color: var(--cds-notification-danger, #FFF1F1);
    border: 1px solid #DA1E2830;
    border-inline-start: 3px solid var(--cds-button-danger-primary, #da1e28);
    padding-left: 16px;
}
.cds-notification-success {
display: flex;
    flex-grow: 1;
    background-color: var(--cds-notification-success, #DEFBE6);
    border: 1px solid #24A14830;
    border-inline-start: 3px solid var(--cds-support-success, #24a148);
    padding-left: 16px;
}
.cds-notification-gray {
display: flex;
    flex-grow: 1;
    background-color: var(--bs-gray-200, #EDF5FF);
    border: 1px solid var(--bs-gray-300);
    border-inline-start: 3px solid var(--bs-gray-400, #0043CE);
    padding-left: 16px;
}
.cds-notification-info {
display: flex;
    flex-grow: 1;
    background-color: var(--cds-notification-info, #EDF5FF);
    border: 1px solid #0043CE30;
    border-inline-start: 3px solid var(--cds-support-info, #0043CE);
    padding-left: 16px;
}
.cds-notification-text {
display: flex;
    flex-grow: 1;
    padding: 15px 15px 15px 0;
    flex-direction: column;
}
.carbon-checkbox {
appearance: none;
    border: 1px solid var(--cds-text-primary, #161616) !important;
    border-radius: 2px;
    width: 16px !important;
    height: 16px !important;
    position: relative !important;
    cursor: pointer;
    transition: all 0.1s ease-in-out;
    /*    background-color: var(--cds-field-02, #ffffff) !important;*/
    background-color: transparent;
}
.cds-radio-tile {
position: relative;
    flex: 1;
}
.cds-radio-indicator {
width: 14px;
    height: 14px;
    border: 1px solid #8d8d8d;
    border-radius: 50%;
    position: relative;
    flex-shrink: 0;
    margin-top: 2px;
}
.cds-tile-title {
font-size: 14px;
    font-weight: 600;
    color: var(--cds-text-primary, #161616);
    margin: 0;
    flex: 1;
}
.carbon-switch {
/*    width: 40px;*/
    height: 20px;
    border-radius: 12px;
    /*    background-color: var(--cds-white-color, #FFFFFF) !important;*/
    transition: background-color 70ms cubic-bezier(0.2, 0, 1, 0.9);
}
.cds-popover-wrap .rx-popover-container .rx-popover-content {
width: 140px;
    top: 2px !important;
    left: -9px !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border: 0 !important;
    margin-top: -1px;
    background-color: var(--cds-field-01, #f4f4f4);
    box-shadow: 0 2px 6px var(--cds-shadow, rgba(0, 0, 0, 0.3));
}
.signin-form .cds-btn {
height: 48px !important;
        margin-bottom: 24px;
        padding: 16px 64px 11px 16px;
        font-size: 14px;
}
.signup-form .cds-btn {
height: 40px !important;
        margin-bottom: 24px;
        padding: 11px 64px 11px 16px;
}
.cds-cht-1-btn {
/*    height:100%;*/
    height: 50px;
    align-items: center;
}
.cds-bg-light {
background-color: var(--cds-bg-light) !important;
    --cds-rw-ctrl-bg: var(--cds-bg-gray) !important;
    --cds-rw-active-bg: var(--cds-bg-light) !important;
}
.cds-bg-light2 {
background-color: var(--cds-bg-light);
}
.cds-status-dot {
width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 8px; /* 점과 텍스트 사이의 간격 */
    flex-shrink: 0;
}
.cds-bg-ctrl {
background-color: var(--cds-rw-ctrl-bg) !important;
}
.rw-grid-border-0 .rw-grid-bottom,
.cds-rwgrid-fluid .rw-grid-bottom {
border-top: 0 !important;
}
.cds-rw-grid-toolbar-container .cds-autocompleted .input-container {
border-bottom: 0px !important;
    background: var(--cds-rw-ctrl-bg);
}
.cds-rw-grid-toolbar-container .cds-autocompleted .tag {
background: var(--cds-rw-ctrl-bg);
}
.rw-pager .cds-combobox .rw-textbox-input {
padding: 16px 10px 16px !important;
}
.rw-pager-content .rw-pager-btn:last-of-type {
border-right-color: transparent;
}
.rw-pager-content .rw-pager-btn.active {
background-color: var(--cds-gray-300) !important;
    box-shadow: var(--cds-rw-active-bg) !important;
}
.rwgrid:not(:where(.cds-rwgrid)) .rw-data-row:hover {
/* 반투명 호버 — rxcontrols.2024.01.css와 동일 토큰 */
    background-color: var(--rw-grid-hover-bg, rgba(141, 141, 141, .10));
}
.cds-grid-container .rwgrid .rw-data-row {
border-bottom: solid 1px var(--cds-grid-cell-border, var(--cds-grid-border, #d9d9d9));
    background-color: var(--cds-rw-ctrl-bg) !important;
}
.cds-grid-container .rwgrid .header {
font-weight: 500;
}
.rwgrid:not(:where(.cds-rwgrid)) .rw-data-row.rw-row-selected,
.cds-grid-container .rwgrid:not(:where(.cds-rwgrid)) .rw-data-row.rw-row-selected,
.cds-bg-field .cds-grid-container .rwgrid:not(:where(.cds-rwgrid)) .rw-data-row.rw-row-selected,
.cds-bg-filed .cds-grid-container .rwgrid:not(:where(.cds-rwgrid)) .rw-data-row.rw-row-selected {
background-color: var(--cds-grid-select, var(--cds-layer-selected, #e5e5e5)) !important;
}
.cds-bg-field .rw-grid-root .bg-white,
.cds-bg-field .rw-grid-root .cds-combobox-white {
background-color: var(--cds-field-01, #f4f4f4) !important;
}
.cds-filter-container .autocomplete-container.autocomplete-tagify,
.cds-filter-container .tagify {
--tags-border-color: transparent;
    border: none !important;
    padding: 0 !important;
}
.rw-grid-root .rwgrid.cds-rwgrid .rw-data-row.rw-row-selected,
.rw-grid-root .rwgrid.cds-rwgrid .rw-row-selected .rw-fixed-cell {
background-color: var(--cds-grid-select, var(--cds-layer-selected-01, var(--cds-layer-selected))) !important;
}
.rw-grid-root.cds-rw-grid-root .rw-grid-loading-overlay {
position: relative;
    inset: auto;
    display: block;
    min-height: 192px;
    padding: 16px;
    z-index: auto;
    background: var(--cds-skeleton-background, var(--cds-layer-01));
}
.rw-grid-root.cds-rw-grid-root .rw-grid-loading-spinner {
width: 100%;
height: 160px;
border: 0;
border-radius: 0;
background: repeating-linear-gradient(to bottom,
        var(--cds-skeleton-element, var(--cds-layer-accent)) 0 16px,
        var(--cds-skeleton-background, var(--cds-layer-01)) 16px 32px);
}
@media (prefers-reduced-motion: reduce) {
.rw-grid-root.cds-rw-grid-root .rw-grid-loading-spinner {
animation: none;
}
}
.rw-grid-root.cds-rw-grid-root .rw-grid-bottom,
.rw-grid-root.cds-rw-grid-root .rw-pager {
min-height: 40px;
}
.rw-grid-root.cds-rw-grid-root .rw-grid-bottom {
border-top: 1px solid var(--cds-border-subtle-01);
}
.rw-grid-root.rw-grid-compact .rw-compact-toolbar {
display: flex; flex-wrap: nowrap; align-items: center; width: 100%; gap: 0; height: 40px; min-height: 40px;
}
.rw-grid-root.rw-grid-compact .rw-compact-search {
flex: 1 1 auto; min-width: 0; width: auto; height: 40px; padding-left: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important;
}
.rw-grid-root .rw-row-detail-auto {
display: grid; grid-template-columns: minmax(80px, 1fr) minmax(0, 2fr); gap: 8px 16px; margin: 0; white-space: normal; overflow-wrap: anywhere;
}
.rw-grid-root.rw-grid-compact .rw-row-detail-toggle {
min-width: 30px; min-height: 44px;
}
.rw-grid-root {
position: relative;
}
.rw-grid-root.cds-rw-grid-root .rw-grid-loading-spinner {
position: relative;
    overflow: hidden;
    animation: none;
}
.cds-overflow-menu {
flex: 0 0 auto;
}
.cds-overflow-menu__surface {
min-width: 11rem;
    padding: 0.25rem 0;
    border: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    border-radius: 0;
    background: var(--cds-field-02, #ffffff);
    box-shadow: 0 2px 6px rgba(22, 22, 22, 0.16);
}
.cds-overflow-menu__item {
display: flex;
    align-items: center;
    width: 100%;
    min-height: 2.5rem;
    padding: 0.625rem 1rem;
    border: 0;
    background: transparent;
    color: var(--cds-text-primary, #161616);
    font-size: 0.875rem;
    line-height: 1.28571;
    text-align: left;
    cursor: pointer;
}
.cds-overflow-menu__item--danger {
color: var(--cds-support-error, #da1e28);
}
@media (max-width: 767px) {
.cds-card-actions--stack-mobile > * {
width: 100%;
}
}
.cds-status-indicator {
width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}
.cds-user-profile-img {
width: 160px;
    height: 160px;
    background-color: var(--cds-layer-selected, #e0e0e0);
}
.cds-user-info-wrap {
flex: 1 auto;
    padding-left: 32px;
}
.cds-comment-symbol {
position: relative;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    overflow: hidden;
}
.cds-comment-input .cds-icon-btn {
padding: 6px 8px;
}
.cds-workload-symbol {
position: relative;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    overflow: hidden;
}
.cds-tab-button {
flex: 1;
    border: none;
    border-right: 1px solid #c6c6c6;
    font-size: 12px;
    font-weight: 400;
    color: var(--cds-text-secondary, #525252);
    cursor: pointer;
    transition: background 0.11s cubic-bezier(0.2, 0, 0.38, 0.9);
    position: relative;
    box-shadow: inset 0 -2px 0 0 var(--cds-border-subtle-01, #e0e0e0);
    background-color: var(--cds-field, #ffffff);
/*    padding: 11px 16px !important;*/
    padding: 11px 64px 11px 16px !important;
    max-width: 176px !important;
    white-space: nowrap;
}
.cds-tab-button:disabled {
background: #e0e0e0;
        color: #c6c6c6;
        cursor: not-allowed;
        border-top: none;
}
@media (max-width:760px) {
.cds-tab-button {
white-space: normal !important;
        word-break: keep-all;
        flex: 1 1 auto;
}
}
.carbon-combobox:not(.disabled):focus-within {
border: 2px solid var(--border-primary-color) !important;
        outline: none;
}
.carbon-combobox.disabled:focus-within {
border-top: none !important;
        border-left: none !important;
        border-right: none !important;
        border-bottom: 1px solid var(--carbon-textbox-border-bottom, #8d8d8d) !important;
        outline: none !important;
}
.cds-task-list {
flex: 0 0 760px;
}
@media (max-width: 760px) {
.cds-task-list {
flex: 0 0 375px !important;
}
}
.cds-verticaltab-active:hover {
margin-bottom: 0px;
        border-left: 3px solid var(--cds-primary, #0f62fe) !important;
        color: var(--cds-text-primary, #161616) !important;
}
.prompt-list-top .cds-icon-only-btn:hover {
background-color: var(--cds-primary, #0f62fe) !important;
        color: var(--cds-text-on-color, #ffffff) !important;
}
.cds-ccx-1 {
padding-left: 12px;
    padding-right: 12px;
}
.cds-filter-wrap .cds-label {
background-color: var(--cds-bg-light);
        width: 200px;
        height: 40px;
        display: flex;
        align-items: center;
        padding-left: 8px;
}
.cds-grid {
display: grid;
    grid-template-columns: repeat(16, minmax(0, 1fr));
    column-gap: 16px;
    align-items: start;
    width: 100%;
    min-width: 0;
}
.cds-field > .cds-label {
margin-bottom: 0.5rem;
}
.cds-field > .carbon-textbox,
    .cds-field > .cds-combobox,
    .cds-field > .cds-autocompleted,
    .cds-field > .carbon-switch,
    .cds-field > .carbon-checkbox,
    .cds-field > .d-flex {
width: 100%;
        min-width: 0;
}
.cds-bg-darkgray {
background-color: #222;
}
.w-94 {
width:94%;
}
.w-96 {
width: 96%;
}
.w-98 {
width: 98%;
}
.mail-list-top .cds-btn {
height: 47px;
    padding: 14px 64px 14px 16px;
    color: var(--cds-text-primary, #161616);
}
.mail-list-top .cds-icon-only-btn {
padding: 13px;
}
.cds-mail-list-wrap {
width: 460px;
    border-right: 1px solid var(--cds-border-subtle-01, #e0e0e0) !important;
}
.cds-mail-list-wrap .carbon-checkbox:checked {
background-color: var(--cds-icon-secondary, #525252) !important;
}
.mail-container .cds-toolbar-btn:hover {
background-color: var(--cds-layer-hover, #e8e8e8) !important;
}
.cds-mail-avatar .cds-btn-icon {
position: unset;
    display: block;
    color: var(--cds-border-subtle-01, #e0e0e0);
}
.cds-mail-from-wrap .cds-icon-only-btn {
padding: 4px;
}
.cds-mail-list-item {
display: flex;
    flex: 1;
    flex-direction: column;
    font-size: 12px;
    width: 100%;
    padding: 8px 8px 0 8px;
    color: var(--cds-text-primary, #161616);
}
.cds-mail-title {
font-weight: 600;
    width: 400px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}
.cds-mail-content {
width: 400px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    color: var(--cds-text-secondary, #525252);
}
.cds-mail-tool-icon {
padding: 6px;
    width:30px;
    height:30px;
    color: var(--cds-text-placeholder, #a8a8a8);
}
.cds-mail-tool .cds-icon-only-btn {
padding: 4px;
    color: var(--cds-text-placeholder, #a8a8a8)
}
@media (max-width: 1023px) {
.cds-mail-title {
width: 346px;
}
}
@media (max-width: 1023px) {
.cds-mail-content {
width: 330px;
}
}
.cds-mail-view-toolbar .cds-btn {
color: var(--cds-text-primary, #161616) !important;
    height: 50px;
    align-items: center;
}
.cds-mail-view-toolbar .wvs-header-popover .rx-popover-container .rx-popover-content {
width: 140px;
    top: 3px !important;
    left: -27px !important;
    background-color: var(--cds-field-01, #f4f4f4);
    box-shadow: 0 2px 6px var(--cds-shadow, rgba(0, 0, 0, 0.3));
}
.cds-mail-option-wrap {
flex: 1;
}
.cds-mail-view-time {
position: absolute;
    top: 8px;
    right: 16px;
    font-size: 10px;
    color: var(--cds-text-helper, #6f6f6f);
    flex: 0 0 auto;
}
.cds-mail-option-item {
display: flex;
    flex: 1 1 auto;
}
.cds-mail-option-title {
width: 60px;
    flex: 1 0 auto;
}
.cds-mail-view-file .wvs-header-popover .rx-popover-container .rx-popover-content {
width: 140px;
    top: 2px !important;
    left: -117px !important;
    background-color: var(--cds-field-01, #f4f4f4);
    box-shadow: 0 2px 6px var(--cds-shadow, rgba(0, 0, 0, 0.3));
}
.cds-mail-write-title .cds-btn {
height: 47px;
    padding: 14px 64px 14px 16px;
    color: var(--cds-text-primary, #161616);
}
.cds-mail-write-option .cds-control-wrap {
margin-bottom: 8px;
}
.cds-mail-write-option .autocomplete-container.autocomplete-tagify {
padding: 0px !important;
}
.cds-mail-write-option .cds-btn {
font-size: 11px;
    padding: 9px;
    border: 0;
    color: var(--cds-text-primary, #161616) !important;
    background-color: var(--cds-field-02, #F4F4F4) !important;
    border-bottom: 1px solid var(--carbon-textbox-border-bottom, #8d8d8d) !important;
}
.cds-mail-write-option .cds-btn:hover {
background-color: var(--cds-background-hover, #8d8d8d30) !important;
}
.cds-mail-write-option .cds-icon-only-btn {
align-items: center;
    padding: 8px;
}
.cds-mail-filedrop-container {
display: flex;
    flex: 1;
    overflow: hidden;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background-color: var(--cds-white-color, #ffffff);
    border: 1px dashed var(--cds-border-strong-01, #8d8d8d);
    block-size: 96px;
    color: var(--cds-link-primary, #0f62fe);
    /*max-inline-size: 320px;*/
    outline: 2px solid rgba(0, 0, 0, 0);
    outline-offset: -2px;
    transition: 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.cds-selected-file {
display: grid;
    align-items: center;
    background-color: var(--cds-layer-01, #f4f4f4);
    gap: 12px 0;
    grid-auto-rows: auto;
    grid-template-columns: 1fr auto;
    margin-block-end: 8px;
    width: 320px;
    min-block-size: 43px;
    word-break: break-word;
    /*    border-bottom: 1px solid var(--cds-primary, #0f62fe);*/
}
.cds-selected-file .cds-file-state .cds-icon-only-btn {
padding: 2px;
}
.dock-wpanel {
width: 100%;
    height: 100%;
    display: flex;
    flex-wrap: nowrap;
}
.dock-vpanel {
width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
}
.dock-top,
.dock-bottom,
.dock-left,
.dock-right {
flex: none;
    position: relative;
}
.dock-content {
flex: 1;
    overflow: auto;
    min-width: 0;
    min-height: 0;
}
.rwgrid:is(.cds-motion, .cds-rwgrid) .rw-data-row,
.rwgrid:is(.cds-motion, .cds-rwgrid) .rw-row-detail-row {
animation: cds-motion-enter-chain 360ms cubic-bezier(0, 0, 0.38, 0.9) backwards;
    animation-delay: calc(180ms + (var(--cds-motion-row-depth, 0) * 180ms) + (var(--cds-motion-row-order, 0) * 80ms));
    will-change: auto;
}
@media not all {
.cds-motion:not(.dock-wpanel):not(.dock-vpanel),
.cds-motion-dock-enter:not(.dock-wpanel):not(.dock-vpanel) {
animation: cds-motion-enter-fade 240ms cubic-bezier(0, 0, 0.38, 0.9) both;
    will-change: auto;
}
}
@media not all {
.rwgrid:is(.cds-motion, .cds-rwgrid) .rw-data-row,
.rwgrid:is(.cds-motion, .cds-rwgrid) .rw-row-detail-row {
animation: cds-motion-enter-chain 360ms cubic-bezier(0, 0, 0.38, 0.9) both;
    animation-delay: calc(180ms + (var(--cds-motion-row-depth, 0) * 180ms) + (var(--cds-motion-row-order, 0) * 80ms));
    will-change: auto;
}
}
.chat-content-root {
scrollbar-gutter: stable;
    overflow-y: scroll;
}
.cds-copilot-echo {
display: flex;
    flex-direction: column;
    flex: 1;
    /*    max-width: calc(100vw - 1580px);*/
    /*max-width: calc(100vw - 1620px);*/
/*    max-width: 860px;*/
    min-width: 250px;
    font-size: 12px !important;
}
.cds-copilot-echo .echo-message-icon .carbon-icon {
background: linear-gradient(to left, #0f62feb0, #0f62fe7d 50%, #0f62fed9 75%, #0f62fe 75%) !important;
}
.echo-chat {
flex: 1;
    overflow-y: auto;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.cds-copilot-echo .ol, ul {
padding-left: 14px;
}
.echo-input {
flex: 1;
    padding: 8px;
    border-radius: 8px;
    font-size: 14px;
    color: var(--cds-text-primary);
    resize: none;
    min-height: 44px;
    max-height: 120px;
    font-family: inherit;
    transition: all 0.11s cubic-bezier(0.2, 0, 0.38, 0.9);
}
.cds-btn-icon-only-32px {
background-color: transparent;
    border: none;
    padding: 0 0 0 0;
    width: 32px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
}
.cursor-pointer {
cursor: pointer;
}
.cds-left-panel {
/*    max-width: 760px;*/
    max-width: 600px;
    flex: 1;
}
.cds-right-panel {
max-width: 760px;
    flex: 1;
}
@media (max-width:1023px) {
.cds-left-panel {
max-width: 100%;
}
}
.company-container .cds-popover-wrap .rx-popover-container .rx-popover-content {
top: 0 !important;
    left: -112px !important;
}
.teams-thread-item .cds-popover-wrap .rx-popover-container .rx-popover-content {
left: -96px !important;
}
.teams-menu-tool.comment-tool .cds-icon-only-btn {
padding: 4px !important;
}
.contact-container .cds-user-profile .cds-user-img-input .carbon-icon {
background-color: var(--cds-border-subtle-01, #e0e0e0);
}
.contact-container .cds-user-info-btn .cds-btn {
width: 100%;
    height: 40px;
    align-items: center;
    margin-bottom: 8px;
}
.contact-container .cds-notification-info .carbon-icon {
margin-block-start: 10px;
}
.cds-timeline-item {
width: 9px;
    height: 9px;
    position: absolute;
    top: 8px;
    left: 0;
    border-radius: 50%;
    background-color: var(--cds-primary, #0f62fe);
}
.projects-container .cds-combobox {
background-color: var(--cds-field-02, #ffffff) !important;
}
.cds-popover-wrap.radio-wrap .rx-popover-container .rx-popover-content {
left: -348px !important;
    padding: 16px !important;
    width: 384px !important;
    background-color: var(--cds-field-02, #ffffff) !important;
}
.teams-list-wrap .wvs-header-popover .rx-popover-container .rx-popover-content {
width: 140px;
    top: 3px !important;
    left: -113px !important;
    background-color: var(--cds-field-01, #f4f4f4);
    box-shadow: 0 2px 6px var(--cds-shadow, rgba(0, 0, 0, 0.3));
}
.teams-menu-tool .cds-icon-only-btn {
z-index: 9;
    padding: 21px 4px !important;
}
.teams-card .teams-menu-tool .cds-icon-only-btn {
padding: 8px !important;
}
.teams-card .cds-popover .rx-popover-container .rx-popover-content {
left: -105px !important;
}
.teams-thread-item .teams-menu-tool .cds-icon-only-btn {
padding: 12px !important;
}
.teams-thread-item .wvs-header-popover .rx-popover-container .rx-popover-content {
width: 140px;
    top: 3px !important;
    left: -96px !important;
    background-color: var(--cds-field-01, #f4f4f4);
    box-shadow: 0 2px 6px var(--cds-shadow, rgba(0, 0, 0, 0.3));
}
.cds-comment-wrap .item-comment .cds-btn-secondary {
background-color: var(--cds-field-, #f4f4f4);
    color: var(--cds-text-secondary, #393939);
}
.cds-user-img-wrap .btn.btn-icon {
background-color: var(--cds-field-02, #ffffff) !important;
}
.prompt-container .cds-list-content .carbon-icon {
width: 12px;
    height: 12px;
    margin: 0 0 4px 4px;
    color: var(--cds-support-caution, #ff832b);
}
.wavedesk-top .cds-btn {
height: 47px;
    padding: 14px 64px 14px 16px;
    color: var(--cds-text-primary, #161616);
}
.cds-messenger-nav-bottom .wvs-sidebar-nav-item.selected {
background-color: var(--cds-white-color, #FFFFFF);
        font-weight: 600;
}
@media (max-width:1023px) {
.cds-messenger-nav-bottom .wvs-sidebar-nav-item {
height: 52px;
            flex: 1;
            justify-content: center;
            flex-direction: column;
            padding: 6px 0 !important;
            gap: 2px;
}
}
.cds-member-item .cds-btn {
position: absolute;
    top: -12px;
    right: -16px;
}
.messenger-container .cds-user-img-input .carbon-icon {
background-color: var(--cds-border-subtle-01, #e0e0e0);
}
.cds-chat-time {
position: absolute;
    top: 0;
    right: 0;
    font-size: 10px;
    color: var(--cds-text-helper, #6f6f6f);
    flex: 0 0 auto;
}
.cds-invite-list-item .cds-icon-only-btn {
padding: 2px !important;
}
.messenger-container .wvs-header-popover .rx-popover-container .rx-popover-content {
width: 140px;
    top: 0px !important;
    left: -106px !important;
    background-color: var(--cds-field-01, #f4f4f4);
    box-shadow: 0 2px 6px var(--cds-shadow, rgba(0, 0, 0, 0.3));
}
.app-title-container .selected-model-wrap .cds-combobox {
background-color: transparent !important;
            border-bottom: none !important;
            height: 49px !important;
}
.app-title-container .selected-model-wrap .cds-combobox .options-container {
/*                overflow-y: unset !important;*/
                margin-top: 1px;
                background-color: var(--cds-field, #ffffff);
                color: var(--cds-text-primary, #161616) !important;
                max-height: 356px !important;
}
@media (max-width:1023px) {
.app-title-container .selected-model-wrap .cds-combobox .options-container {
max-height: 390px !important;
}
}
.request-btn .cds-icon-only-btn {
cursor: pointer;
    border: 0;
}
.request-btn .cds-icon-only-btn:active {
outline: 2px solid var(--cds-focus, #0f62fe) !important;
        outline-offset: -2px !important;
}
.echo-chat-assistant .chat-assistant-container .card {
border-width: 0;
        background-color: transparent;
        width: 100%;
        padding: 25px 0 25px 0;
        margin-bottom: 25px;
        border-bottom: 0 solid var(--bs-gray-700);
}
.echo-chat-assistant .chat-assistant-container .card .echo-message-icon .carbon-icon {
background: linear-gradient(to left, #0f62feb0, #0f62fe7d 50%, #0f62fed9 75%, #0f62fe 75%) !important;
}
.echo-chat-assistant .chat-assistant-container .blockquote {
background-color: var(--cds-notification-info, #EDF5FF) !important;
        border: 1px solid #0043CE30;
        border-inline-start: 3px solid var(--cds-support-info, #0043CE);
        font-size: 14px;
}
.echo-chat-assistant .chat-user-container .card {
border-radius: 25px 4px 25px 25px;
        border: 0;
        background-color: var(--cds-echo-bubble, #f4f4f4);
        max-width: 450px;
}
.echo-chat-assistant__image-viewer-close {
position: fixed;
    top: 18px;
    right: 18px;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 50%;
    color: #ffffff;
    background: rgba(38, 38, 38, 0.78);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.echo-chat-assistant .messages .card {
font-size: 14px;
        color: var(--cds-text-primary, #161616);
}
.echo-chat-assistant__turn-meta-text {
flex: 1 1 auto;
    min-width: 0;
}
@media (max-width: 768px) {
.echo-chat-assistant .chat-assistant-container .card {
padding: 0 0 25px 0 !important;
}
}
.echo-chat-host .markdown-body .code-block .copy-btn {
/*            border: 1px solid #6f6f6f;
            border-radius: 6px;*/
            background-color: transparent !important;
}
.rw-composer__file-remove {
display: inline-flex;
    width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
    padding: 0;
    color: var(--cds-icon-secondary, #525252);
    background: transparent;
    border: 0;
    cursor: pointer;
}
.rw-composer__action,
.rw-composer__send,
.rw-composer__suggestion {
min-height: 32px;
    width:32px;
    color: var(--cds-text-primary, currentColor);
    background: transparent;
    border: 0;
}
.wave-carbon-icon {
display: inline-block;
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    background-color: currentColor;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
}
.rw-composer__action--icon {
display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    min-width: 32px;
    padding: 0;
    cursor: pointer;
}
.rw-composer__action--icon .carbon-icon {
display: inline-block;
    width: 16px;
    height: 16px;
    background-color: var(--cds-icon-secondary, #525252);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
}
.rw-composer__action--icon:hover:not(:disabled) .carbon-icon {
background-color: var(--cds-icon-primary, #161616);
}
.rw-composer__action--icon:disabled .carbon-icon {
background-color: var(--cds-icon-disabled, #c6c6c6);
}
.rw-composer__send {
padding: 0 16px;
    color: var(--cds-text-on-color, white);
    background: var(--cds-button-primary, currentColor);
}
.rw-composer__submit-indicator {
position: absolute;
    inset: 50% auto auto 50%;
    width: 16px;
    height: 16px;
    margin: -8px 0 0 -8px;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: rw-composer-submit-spin 0.8s linear infinite;
}
.rw-composer__spacer {
flex: 1;
}
.rw-composer__suggestions {
position: absolute;
    right: 0;
    bottom: calc(100% + 4px);
    left: 0;
    z-index: 20;
    max-height: 288px;
    width: 280px;
    overflow-y: auto;
    background: var(--cds-layer, white);
    border: 1px solid var(--cds-border-subtle-01, currentColor);
    box-shadow: 0 0px 8px rgb(0 0 0 / 16%);
}
.rw-composer__suggestion {
display: flex;
    width: 100%;
    min-height: 48px;
    align-items: center;
    gap: 12px;
    padding: 8px 16px;
    text-align: left;
}
.rw-composer__attachment-file {
display: flex;
    box-sizing: border-box;
    width: min(100%, 640px);
    min-height: 48px;
    align-items: center;
    gap: 8px;
    margin: 8px 0;
    padding: 8px 16px;
    color: var(--cds-text-primary, currentColor);
    background: var(--cds-layer-02, transparent);
    border: 1px solid var(--cds-border-subtle-01, currentColor);
    cursor: pointer;
}
.rw-composer__image-size-preset:hover,
.rw-composer__image-size-preset.is-active {
color: var(--cds-text-primary, currentColor);
    background: var(--cds-layer-hover-01, transparent);
}
.rw-composer__image-resize-handle {
position: absolute;
    z-index: 2;
    display: none;
    width: 12px;
    height: 12px;
    background: var(--cds-icon-on-color, currentColor);
    border: 2px solid var(--cds-focus, currentColor);
    border-radius: 50%;
    touch-action: none;
}
.rw-composer__format.is-active {
color: var(--cds-link-primary, currentColor);
    background: var(--cds-layer-selected, transparent);
}
.rw-composer__toolbar-divider {
width: 1px;
    height: 16px;
    margin: 0 4px;
    background: var(--cds-border-subtle-01, currentColor);
}
.rw-composer__link-help {
position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}
[data-editor="request-content"],
[data-editor="processing-record"],
[data-editor="processing-registration"] {
min-width: 0;
}
.rw-textbox-mode__value--html > :first-child,
.thread-content > :first-child {
margin-top: 0;
}
.rw-textbox-mode__value--html > :last-child,
.thread-content > :last-child {
margin-bottom: 0;
}
.rw-textbox-mode__value--html pre,
.thread-content pre {
margin: 0 0 0.5rem;
    padding: 0.75rem;
    background: var(--cds-layer-02, #f4f4f4);
    border-radius: 4px;
    overflow-x: auto;
    font-family: var(--cds-code-01-font-family, 'IBM Plex Mono', monospace);
    font-size: 13px;
}
.ticket-status-control > .rx-popover-root,
.ticket-status-control > .rx-popover-root > .rx-popover,
.ticket-status-control .rx-popover-parent {
width: 100%;
}
.cds-inline-edit-surface {
appearance: none;
    box-sizing: border-box;
    width: calc(100% + 16px);
    min-width: 0;
    padding: 8px;
    margin: -8px;
    border: 1px solid transparent;
    border-radius: 4px;
    background: transparent;
    color: var(--cds-text-primary);
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: background-color 100ms ease, border-color 100ms ease;
    transition-delay: 0ms;
}
@media (prefers-reduced-motion: reduce) {
.cds-inline-edit-surface {
transition: none;
        transition-delay: 0ms;
}
}
.rx-comment-thread__count {
display: inline-flex;
    min-width: 24px;
    height: 20px;
    align-items: center;
    justify-content: center;
    padding: 0 7px;
    color: var(--cds-text-secondary);
    background: var(--cds-layer-02);
    border-radius: 10px;
    font-size: 12px;
}
.rx-comment-thread__sr-status {
position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.rx-comment-thread__body > :first-child {
margin-top: 0;
}
.rx-comment-thread__body > :last-child {
margin-bottom: 0;
}
.rx-comment-thread__attachment-size {
flex: 0 0 auto;
    color: var(--cds-text-secondary);
    font-size: 12px;
}
.rx-comment-thread__action {
display: inline-flex;
    width: 28px;
    min-width: 28px;
    height: 28px;
    min-height: 28px;
    align-items: center;
    justify-content: center;
    padding: 0;
    color: var(--cds-icon-secondary);
    background: transparent;
    border: 0;
    cursor: pointer;
}
.rw-combobox-inline-editor-action {
flex: 0 0 auto;
    opacity: 0;
}
.rw-combobox-inline-editor .rw-textbox,
.rw-selector-inline-editor .autocomplete-input {
background: transparent;
    border-color: transparent;
    border-bottom-color: transparent;
    transition: background-color 110ms ease, border-color 110ms ease;
}
.rw-combobox-inline-editor .rx-combo-toggle,
.rw-selector-inline-editor .dock-right {
opacity: 0;
    transition: opacity 110ms ease;
}
.rw-combobox-inline-editor:hover .rw-textbox,
.rw-combobox-inline-editor:focus-within .rw-textbox,
.rw-selector-inline-editor:hover .autocomplete-input,
.rw-selector-inline-editor:focus-within .autocomplete-input {
background: var(--cds-layer-hover-01);
    border-bottom-color: var(--cds-border-strong-01);
}
@media (prefers-reduced-motion: reduce) {
button.rw-combobox-inline-editor-view,
    .rw-combobox-inline-editor .rw-textbox,
    .rw-selector-inline-editor .autocomplete-input,
    .rw-combobox-inline-editor .rx-combo-toggle,
    .rw-selector-inline-editor .dock-right {
transition: none;
}
}
.cds-thread__count {
min-width: 32px;
    height: 24px;
    padding: 0 8px;
    display: inline-grid;
    place-items: center;
    background: #e8e8e8;
    color: #393939;
    font-size: 12px;
}
.cds-thread__marker {
width: 40px;
    height: 40px;
    z-index: 1;
    display: grid;
    place-items: center;
    background: #393939;
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
}
@media (max-width: 640px) {
.cds-thread__header-actions .cds-btn {
width: 100%;
}
}
@media (max-width: 640px) {
.cds-thread__composer-actions .cds-btn {
width: 100%;
}
}
[data-cds-notify-center] {
display: flex;
    flex-direction: column;
    max-height: min(40rem, calc(100vh - 5rem));
    max-height: min(40rem, calc(100dvh - 5rem));
    overflow: hidden;
}
.wvs-header-notification-title {
flex: 0 0 auto;
}
.cds-notify-scroll {
min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior-y: contain;
    overflow-wrap: anywhere;
}
.cds-notify-action {
display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: transparent;
    color: var(--cds-text-inverse);
    cursor: pointer;
}
.cds-notify-action:focus-visible,
.cds-notify-link:focus-visible {
outline: 2px solid var(--cds-focus-inverse);
    outline-offset: -2px;
}
.cds-project-identity-title {
display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    min-height: 3.375rem;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
.echo-chat-assistant__context {
display: grid;
    gap: 2px;
    padding: 12px 16px;
    background: var(--cds-layer-01, #f4f4f4);
    color: var(--cds-text-primary, #161616);
}
.echo-chat-assistant__suggested-actions {
display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 8px;
    margin-top: 20px;
}
.echo-chat-assistant__suggested-action {
display: grid;
    justify-items: start;
    min-height: 72px;
    padding: 12px 16px;
    text-align: left;
}
.echo-history-drawer {
position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 280px;
    max-width: 86%;
    z-index: 50;
    display: flex;
    flex-direction: column;
    background: var(--cds-bg-light);
    border-right: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    box-shadow: 2px 0 14px rgba(15, 23, 42, 0.14);
    transform: translateX(-100%);
    transition: transform 240ms cubic-bezier(0.2, 0, 0.2, 1);
    will-change: transform;
    visibility: hidden; /* 슬라이드 닫혔을 때 box-shadow 안보이게 처리 */
}
.echo-history-drawer__new {
display: flex;
    align-items: center;
    width: calc(100% - 24px);
    margin: 12px;
    padding: 8px 12px;
    border: 1px solid var(--echo-blue-60, #0f62fe);
    border-radius: 8px;
    background: #ffffff;
    color: var(--echo-blue-60, #0f62fe);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background 140ms ease;
}
.echo-history-drawer__list {
flex: 1;
    overflow-y: auto;
    padding: 0 8px 12px;
}
.echo-bot-channel .carbon-icon {
color: var(--echo-blue-60, #0f62fe);
}
.echo-history-drawer__item {
display: block;
    width: 100%;
    text-align: left;
    padding: 10px 32px 10px 12px;
    margin-bottom: 2px;
    border: none;
    border-radius: 8px;
    background: transparent;
    cursor: pointer;
    transition: background 120ms ease;
}
.echo-history-drawer__item:hover {
background: var(--echo-gray-10, #f4f4f4);
}
.echo-history-drawer__item.is-active {
background: var(--cds-background-active);
}
.echo-history-drawer__item-title {
flex: 1;
    min-width: 0;
    font-size: 13px;
    font-weight: 500;
    color: var(--cds-text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.echo-history-drawer__item-time {
flex: none;
    font-size: 11px;
    color: var(--cds-text-secondary);
}
@media (prefers-reduced-motion: reduce) {
.echo-history-drawer {
transition: none;
}
}
.echo-chat-host {
--echo-blue-60: #0f62fe;
    --echo-blue-70: #0043ce;
    --echo-gray-10: #f4f4f4;
    --echo-gray-20: #e0e0e0;
    --echo-gray-30: #c6c6c6;
    --echo-gray-60: #525252;
    --echo-gray-80: #393939;
    --echo-user-bubble-bg: linear-gradient(135deg, #edf5ff 0%, #dbe9ff 100%);
    --echo-assistant-bubble-bg: #ffffff;
    --echo-bubble-border: #d0d7e2;
    --echo-thinking-bg: #f8f9fb;
    --echo-orch-planner-bg: #fff4de;
    --echo-orch-planner-border: #f1c98b;
    --echo-orch-execute-bg: #edf4ff;
    --echo-orch-execute-border: #b8d3ff;
    --echo-orch-done-border: #24a148;
    --echo-orch-error-bg: #fff1f1;
    --echo-orch-error-border: #da1e28;
    --echo-code-bg: #161616;
    --echo-code-border: #393939;
    --echo-code-text: #f4f4f4;
    background: radial-gradient(1200px 520px at 100% 0%, #edf4ff 0%, #f8fbff 45%, #ffffff 100%);
}
.echo-ai-window .rw-window-content,
.echo-ai-window .echo-chat-host .chat-content-root {
background: transparent !important;
    border-radius: 16px !important;
}
.echo-ai-window .dock-top:has(.echo-info-wrap) {
display: flex;
    flex-direction: row;
    justify-content: center;
}
.echo-ai-window .echo-info-wrap .dock-content {
background: transparent !important;
}
.echo-chat-host .dock-content {
/*    background: linear-gradient(180deg, rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 1) 30%);*/
    background-color: var(--cds-field, #ffffff);
}
.echo-chat-body-container .echo-new-chat .carbon-icon {
background: linear-gradient(to left, #0f62feb0, #0f62fe7d 50%, #0f62fed9 75%, #0f62fe 75%) !important;
}
.echo-chat-bubble.card .card-body {
padding: 12px 14px !important;
}
.echo-response-metrics__item {
display: inline-flex;
    align-items: center;
    gap: 4px;
}
.echo-progress-panel__headline {
display: inline-flex;
    align-items: center;
    gap: 10px;
    width: fit-content;
    max-width: 100%;
    min-height: 36px;
    padding: 7px 14px 7px 12px;
    border-radius: 999px;
    border: 1px solid rgba(114, 158, 255, 0.5);
    background: linear-gradient(135deg, rgba(15, 98, 254, 0.15) 0%, rgba(36, 99, 235, 0.08) 100%);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
    color: var(--cds-text-primary, #161616);
    transition: opacity 180ms ease, transform 180ms ease, color 180ms ease;
}
.echo-chat-assistant__status-text.is-loading {
background: linear-gradient(90deg, #0f62fe 0%, #a6c8ff 50%, #0f62fe 100%);
    background-size: 220% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: echoProgressTextSweep 1.6s linear infinite;
}
.echo-progress-panel__headline-icon {
width: 10px;
    height: 10px;
    border-radius: 999px;
    flex: none;
    background: var(--echo-blue-60, #0f62fe);
    box-shadow: 0 0 0 0 rgba(15, 98, 254, 0);
}
.echo-progress-panel__detail {
padding-left: 16px;
    color: var(--cds-text-secondary, #9ca3af);
    font-size: 12px;
    line-height: 1.45;
    opacity: 0.88;
}
.echo-progress-panel__detail-text {
display: block;
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-style: italic;
    letter-spacing: 0.01em;
}
.echo-orch-item {
position: relative;
    display: block;
    padding: 4px 10px 4px 0px;
    white-space: pre-wrap;
    font-size: 0.8rem;
    line-height: 1.45;
    font-family: "IBM Plex Sans", var(--ww-font-ibm-sans-kr), "Segoe UI", sans-serif;
}
.echo-orch-item__text {
display: inline;
    font-size: 12px;
    color: var(--cds-text-secondary, #525252);
}
.echo-orch-item__meta {
display: flex;
    flex-direction: row;
    align-items: start;
    gap: 16px;
}
.echo-orch-badge {
display: inline-flex;
    align-items: center;
    padding: 1px 6px;
    border-radius: 10px;
    font-size: 10px;
    line-height: 1.3;
    font-weight: 600;
    letter-spacing: 0.02em;
}
.echo-chat-host .markdown-body .table-responsive {
margin-top: 12px;
    margin-bottom: 16px;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
}
.echo-chat-host .markdown-body .code-block .code-header {
display: flex;
    align-items: center;
    justify-content: space-between;
    background: #161616;
    color: #ffffff;
    border-top-left-radius:2px;
    border-top-right-radius:2px;
}
.echo-chat-host .markdown-body .code-block .cds-code-body {
background: var(--echo-code-bg) !important;
    margin: 0 !important;
    padding: 12px 10px !important;
    overflow-x: auto;
}
.echo-chat-host .markdown-body .code-block .copy-btn {
border: 1px solid #6f6f6f;
    border-radius: 6px;
    background: transparent;
    color: #d0d0d0;
    width: 26px;
    height: 26px;
}
@media (max-width: 768px) {
.echo-chat-bubble.card .card-body {
padding: 10px 11px !important;
}
}
.v2-general-field .cds-label {
margin-bottom: 4px;
    font-size: 12px;
    color: var(--cds-text-secondary, #525252);
}
.v2-general-field .cds-combobox {
height: 32px;
}
.v2-general-btn-row .cds-btn {
flex: 1 1 0;
    min-width: 0;
}
.v2-general-page .echo-chat-host > .dock-content.rx-scroll {
padding: 14px clamp(12px, 2.2vw, 28px) 20px !important;
}
.v2-general-page .request-container .cds-popover-wrap .rx-popover-container .rx-popover-content {
top: -172px !important;
    left: 0 !important;
    background-color: var(--cds-field, #ffffff) !important;
}
.echo-phase-card--mcp.is-active, .echo-phase-card--thinking.is-active {
position: relative;
    overflow: hidden;
    display: inline-block; /* 텍스트 너비만큼만 잡히도록 설정 (필요시 수정) */
    color: #555; /* 글자색은 적절히 조정하세요 */
}
.chat-assistant-container .echo-message-icon .carbon-icon {
display: inline-block;
}
@media (max-width: 1280px) {
.v2-general-page .request-container .cds-popover-wrap .rx-popover-container .rx-popover-content {
top: -163px !important;
        left: 0 !important;
}
}
.echo-memory-scroll {
overflow-y: auto;
}

/* ==== 30-shell/layout.b.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/common.css에서 이전됨) */
.rxgrid .grid-container .footer-container {
border-top: 1px solid var(--rs-grid-style-table-td-top-border-color) !important;
        margin-top: -1px;
}

/* ==== 40-components/rw-datagrid.b.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/common.css에서 이전됨) */
.rs-grid-style-table {
--rs-grid-style-outer-bdcolor: rgba(var(--bs-gray-300-rgb), 1);
    --rs-grid-style-outer-bdradius: 1px;
    --rs-grid-style-outer-bgcolor: rgba(var(--bs-gray-900-rgb),0.30);
    --rs-grid-style-cell-fix-bgcolor: var(--bs-gray-100);
    
    

 /*   --rs-grid-style-header-bgcolor: #384470;
    --rs-grid-style-header-fontcolor: #fff; */


    --rs-grid-style-th-bdcolor: red;
    --rs-grid-style-th-bottom-bgcolor: transparent;
    --rs-grid-style-table-td-left-border-color: transparent;
    --rs-grid-style-table-td-right-border-color: transparent;
    --rs-grid-style-table-td-top-border-color: rgba(var(--bs-gray-400-rgb), 0.30);
    --rs-grid-style-table-td-bottom-border-color: rgba(var(--bs-gray-400-rgb), 0.30);
    


    --rs-grid-style-td-bgcolor: var(--bs-body-bg);
    --rs-grid-style-table-td-bgcolor: var(--bs-body-bg);
    --rs-grid-style-table-td-alt-bgcolor: var(--bs-body-bg);
    --rs-grid-style-data-selected-bgcolor: var(--bs-primary-light);
    --rs-grid-style-table-subrow-bgcolor: var(--bs-gray-100);
    --rs-grid-style-table-totrow-bgcolor: var(--bs-gray-200);
    --rs-grid-style-data-row-focus: rgba(var(--bs-gray-400-rgb),0.30);
    --rs-grid-style-cell-font-size: 11.2px;
}
[data-bs-theme=light]
.rs-grid-style-table {
--rs-grid-style-header-bgcolor: #f0f0f0;
    --rs-grid-style-header-fontcolor: rgb(30, 31, 33);
}
[data-bs-theme=dark]
.rs-grid-style-table {
--rs-grid-style-header-bgcolor: #000;
    --rs-grid-style-header-fontcolor: rgba(var(--bs-text-dark),1);
}
.rxgrid {
height: 700px;
    width: 100%;
    font-family: var(--ww-font-ibm-sans-kr);
    font-weight: 400;
    border-left: solid 1px var(--rs-grid-style-th-bdcolor);
    border-top: solid 1px var(--rs-grid-style-th-bdcolor);
    border-bottom: solid 1px var(--rs-grid-style-th-bdcolor);
    border-right: solid 1px var(--rs-grid-style-th-bdcolor);
    overflow: hidden;
    border-radius: var(--rs-grid-style-outer-bdradius);
    font-size: 12px;
    color: var(--bs-text-dark);
}
.rxgrid .grid-container {
display: flex;
        flex-flow: column;
        height: 100%;
        position: relative;
        overflow: hidden;
}
.rxgrid .rx-table {
table-layout: fixed;
        white-space: nowrap;
        border-collapse: separate;
        border-spacing: 0;
}
.rxgrid .grid-container .header-container {
flex: 0 0 auto;
        overflow: hidden;
        padding-right: calc(100vw - 100%);
        color: var(--rs-grid-style-header-fontcolor);
        background-color: var(--rs-grid-style-header-bgcolor);
        border-bottom: solid 1px var(--rs-grid-style-th-bdcolor);
}
.rxgrid .grid-container .header-container .rw-column-row {
height: 34px;
            overflow: hidden !important;
            white-space: nowrap;
}
.rxgrid .grid-container .header-container .rw-column-row .rx-header-cell {
background-color: var(--rs-grid-style-header-bgcolor);
                border-left: solid 0px var(--rs-grid-style-th-bdcolor);
                border-top: solid 0px var(--rs-grid-style-th-bdcolor);
                border-bottom: solid 0px var(--rs-grid-style-th-bdcolor);
                border-right: solid 1px var(--rs-grid-style-th-bdcolor);
}
.rxgrid .grid-container .header-container .rw-column-row .rx-header-cell-fix {
position: sticky;
                left: 0px;
}
.rxgrid .grid-container .header-container .rx-grid-cell-fix {
position: sticky;
}
.rxgrid .grid-container .header-container .rx-column-content {
height: 100%;
            width: 100%;
            padding: 5px;
            /*display: inline-flex;*/
            font-weight: 600;
            overflow: hidden;
            text-overflow: ellipsis;
            text-align: center;
            /*display:inline-block;*/
            /*align-items: center;*/
}
.rxgrid .grid-container .header-container .rx-row:last-child > th.rx-grid-cell-fix:last-child {
background-color: red;
}
.rxgrid .grid-container .content-container {
flex: 1 1 auto;
        overflow: hidden;
        height: 100%;
        position: relative;
        overflow: auto;
        outline: none !important;
        border: none;
        box-sizing: initial !important;
}
.rxgrid .grid-container .content-container .rx-row {
background-color: var(--rs-grid-style-td-bgcolor);
}
.rxgrid .grid-container .content-container .rx-grid-cell {
/*overflow: hidden;*/
            white-space: nowrap;
            word-wrap: break-word;
            text-overflow: ellipsis;
            /*background-color: var(--rs-grid-style-td-bgcolor);*/
            /*background-color: inherit;*/
            border-right: 1px solid var(--rs-grid-style-table-td-right-border-color);
            border-top: 1px solid var(--rs-grid-style-table-td-top-border-color);
            border-left: 1px solid transparent;
            border-bottom: 1px solid transparent;
            outline: none !important;
            box-sizing: initial !important;
            height: 1px; /* Style Hack */

            color: inherit;
            font-size: inherit;
}
.rxgrid .grid-container .content-container .rx-grid-cell-fix {
position: sticky;
            background-color: inherit;
            z-index: 1;
}
.rxgrid .grid-container .content-container .rx-row-group {
background-color: rgba(var(--bs-gray-100-rgb),0.50);
            overflow: initial;
}
.rxgrid .grid-container .content-container .rx-row-group:first-child .rx-row-group-cell {
border-top: 0px solid var(--rs-grid-style-table-td-right-border-color);
}
.rxgrid .grid-container .content-container .rx-row-group .rx-row-group-cell {
border-right: 1px solid var(--rs-grid-style-table-td-right-border-color);
                border-top: 1px solid var(--rs-grid-style-table-td-right-border-color);
}
.rxgrid .grid-container .content-container .rx-row-group .rx-row-group-cell-content {
font-weight: bold;
                position: sticky;
                left: 0px;
                width: auto;
                display: inline-block;
                padding-left: 5px;
}
.rxgrid .grid-container .content-container tr.rx-row-focus {
background-color: var(--bs-gray-200);
}
.rxgrid .grid-container .content-container .rx-row-selected .rx-grid-cell {
background-color: var(--rs-grid-style-data-selected-bgcolor);
}
.rxgrid[data-use-cursor="True"] .grid-container .content-container .rx-grid-cell-focus:focus {
border: 1px solid var(--bs-primary) !important;
}
.rxgrid .grid-container .content-container .rx-row-subsum .rx-grid-cell {
background-color: var(--rs-grid-style-table-subrow-bgcolor);
}
.rxgrid .grid-container .content-container .rx-row-totsum .rx-grid-cell {
background-color: var(--rs-grid-style-table-totrow-bgcolor);
}
.rxgrid .grid-container .content-container .rx-grid-cell .rx-grid-cell-content {
height: 100%;
        width: 100%;
        line-height: 20px;
        padding: 2px 5px 0 5px;
        display: flex;
        align-items: center;
        position: relative;
        /*overflow:hidden;*/
        text-overflow: ellipsis;
}
.rxgrid .grid-container .content-container .rx-grid-cell .rx-grid-cell-content .rx-grid-cell-editor {
background-color: beige;
            position: absolute;
            width: 100%;
            height: 100%;
            left: 0;
            top: 0;
            padding: 2px 5px 0 5px;
            font-size: inherit;
            border: 2px solid var(--bs-gray-900) !important;
}
.rxgrid .grid-container .content-container .rx-grid-cell .rx-grid-cell-content .rx-grid-cell-editor .text-control {
font-size: var(--rs-grid-style-cell-font-size) !important;
                color: inherit;
                padding: 0;
                height: 100%;
}
.rxgrid .grid-container .content-container .rx-row:first-child .rx-grid-cell {
border-top-color: transparent;
}
.rxgrid .grid-container .content-container .rx-row:last-child .rx-grid-cell {
border-bottom-color: var(--rs-grid-style-table-td-top-border-color);
}
.rxgrid .grid-container .content-container .rx-row .rx-grid-cell:last-child {
border-right: 0;
}
.rxgrid .grid-container .header-container .rw-column-row .rx-column:last-child {
border-right: 0;
}

/* ==== 40-components/rx-components.b.css ==== */
/* css/v2 — 직접 수정하는 원본. 순서는 bundle-order.txt. (원래 WaveWorks.RxComponents/wwwroot/css/common.css에서 이전됨) */
.rx-text-transparent {
color: transparent;
}

/* ==== 40-components/cds-filter-fit.css ==== */
/* css/v2 — 필터 줄(cds-filter-container)이 부모 폭을 넘지 않게 한다.

   문제: .cds-filter-wrap 은 flex: none 이라 줄어들지 않는다. 필터가 많은 화면이나 목록+상세 분할 화면에서
   필터 줄이 컨테이너보다 넓어져 조회 버튼이 화면/패널 밖으로 밀리고, 부모 패널에 가로 스크롤이 생겼다
   (예: /shared/mes/bs0051_01 패널 289px 에 필터 855px, 키팅리스트 불출 관리 1440px 에서 61px 초과).

   해결: 입력/콤보가 든 필터 칸만 줄어들 수 있게 하고, 넘치는 부분은 필터 칸 안에서만 가로 스크롤한다.
   조회 버튼 칸(dock-right)은 줄어들지 않아 항상 보인다. 줄바꿈(flex-wrap)은 쓰지 않는다 — 날짜 입력처럼
   폭 100% 인 항목이 한 줄을 차지해 넓은 화면 배치가 깨진다(생산시작 관리에서 확인).
   "Filter by:" 글자만 든 칸은 :has() 조건에 걸리지 않아 그대로다.

   검증(2026-09-20): ANAM 메뉴 142화면 중 필터 줄이 있는 47화면 — 40화면 배치 불변,
   7화면(원래 10~131px 넘치던 화면)만 달라지고 넘침 0. 드롭다운/달력은 body 로 포털되어 overflow 에 잘리지 않는다. */
@media (min-width: 1024px) {
    .cds-filter-container > .dock-left.cds-filter-wrap:has(input, .rw-combobox-container, .autocomplete-container) {
        flex: 0 1 auto;
        min-width: 0;
        overflow-x: auto;
        overflow-y: hidden;
        scrollbar-width: thin;
    }

    .cds-filter-container > .dock-right {
        flex: 0 0 auto;
    }
}

/* 좁은 패널(목록+상세 분할 등, 필터 줄의 부모 폭 640px 미만)에서는 가로 스크롤 대신 두 줄로 쌓는다.
   1줄: 날짜 + 조회 버튼, 2줄: 필터 입력(Filter by ...). dock-mm-* 는 창 폭(1024px 미만) 기준이라
   창은 넓고 패널만 좁은 경우를 못 잡는다 → 필터 줄의 부모를 컨테이너로 삼아 패널 폭 기준으로 판단한다.
   640px 은 표준 구성(날짜 228 + 콤보 2개 285 + 조회 140 = 653px, cds-dd-w-680px 패널)이 한 줄에 들어가는 경계.
   검증(2026-09-21): 필터 줄이 있는 46화면 중 부모 640px 이상 38화면은 배치 불변, 좁은 패널 화면만 두 줄로 바뀜
   (sd1020_02, pp0952_01, pp6040_01, ecp/page008). 640px 이상에서 넘치는 경우는 위의 가로 스크롤 규칙이 그대로 처리한다. */
/* 창 폭 1024px 미만은 기존 모바일 규칙(세로 쌓기)이 맡는다 — order 가 모바일 배치를 바꾸지 않게 데스크톱 폭으로 한정. */
@media (min-width: 1024px) {
    :has(> .dock-wpanel.cds-filter-container) {
        container: ww-filter-host / inline-size;
    }

    @container ww-filter-host (max-width: 639.98px) {
        .dock-wpanel.cds-filter-container {
            flex-wrap: wrap;
            height: auto;
        }

        .cds-filter-container > .dock-left.cds-filter-wrap:has(input, .rw-combobox-container, .autocomplete-container) {
            order: 9;
            flex: 1 1 100%;
            border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0);
        }
    }
}

/* 모바일(창 폭 1024px 미만) 선택 유틸리티 — 강제가 아니라 화면이 골라 쓴다.
   기본은 필터 항목을 세로로 쌓는다(90-compat/order-fixes.css). 필터 칸(.cds-filter-wrap)에 cds-mm-row-wrap 을 붙이면
   가로로 흐르며 줄바꿈하므로, 항목에 cds-mm-w-50 / cds-mm-w-100 을 붙여 한 줄에 2개 또는 1개로 배치할 수 있다.
   예) <div class="dock-left d-flex flex-row cds-filter-wrap cds-mm-row-wrap"> <div class="min-w-150px cds-mm-w-50">…</div> … */
@media (max-width: 1023px) {
    .cds-filter-container > .dock-left.cds-filter-wrap.cds-mm-row-wrap {
        flex-direction: row !important;
        flex-wrap: wrap;
    }

    /* 항목의 좌우 여백(me-2 등)이 있으면 50% + 50% 가 한 줄에 못 들어가므로 2열 배치에서는 없앤다. */
    .cds-filter-container > .dock-left.cds-filter-wrap.cds-mm-row-wrap > * {
        margin-left: 0 !important;
        margin-right: 0 !important;
        min-width: 0;
    }

    /* 조회 버튼: RsButton 은 <div><button> 구조라, d-flex 인 dock-right 안에서는 감싸는 div 가 내용 폭으로 줄어
       버튼의 cds-mm-w-100/50(% 폭)이 계산되지 않는다. 감싸는 div 들이 줄을 나눠 갖고 버튼이 그 안을 채운다. */
    .cds-filter-container > .dock-right > div:has(> .cds-toolbar-btn[class*="cds-mm-w-"]) {
        flex: 1 1 0;
        min-width: 0;
    }

    .cds-filter-container > .dock-right > div > .cds-toolbar-btn[class*="cds-mm-w-"] {
        width: 100% !important;
    }
}

/* ==== 40-components/cds-dropdown-shared.css ==== */
/* RwComboBox / RwAutocomplete Carbon defaults (task-19).
   Lists carry their own classes because JS moves them into body portal hosts. */
.rw-combobox-container.rw-combobox-carbon {
    display: flex;
    align-items: stretch;
    height: 40px;
    min-width: 0;
    background: var(--cds-rw-ctrl-bg, var(--cds-field-01, #f4f4f4)); /* 앱 컨트롤 배경(cds-bg-ctrl 과 같음) */
    color: var(--cds-text-primary, #161616);
    border: 0;
    border-bottom: 1px solid var(--cds-border-strong-01, #8d8d8d);
    border-radius: 0;
    font: inherit;
}
.rw-combobox-carbon.cds-combobox { height: 32px; }
.rw-combobox-carbon.noborder { border-bottom: 0; }
.rw-combobox-carbon .rw-combobox-field { width: 100%; height: 100%; min-width: 0; }
.rw-combobox-carbon .rw-combobox-content { position: relative; overflow: hidden; min-width: 0; }
.rw-combobox-carbon .rw-combobox-input-wrap { position: relative; height: 100%; }
.rw-combobox-carbon .rw-textbox.rw-combobox-input,
.rw-combobox-carbon .template-cotainer {
    box-sizing: border-box;
    height: 100%;
    min-height: 0;
    padding: 0 16px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font: inherit;
}
.rw-combobox-carbon .rw-combobox-content:has(.rw-combobox-clear) .rw-combobox-input { padding-right: 40px; }
.rw-combobox-carbon:not(.disabled):focus-within,
.autocomplete-container:focus-within {
    outline: 2px solid var(--cds-focus, #0f62fe);
    outline-offset: -2px;
}
.rw-combobox-carbon .rw-combobox-clear,
.rw-combobox-carbon .rx-combo-toggle.rw-combobox-toggle,
.autocomplete-container .rx-autocomplete-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    align-self: center;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--cds-icon-primary, #161616);
    cursor: pointer;
}
.rw-combobox-carbon .rw-combobox-clear { position: absolute; right: 0; top: 50%; transform: translateY(-50%); }
.rw-combobox-clear:hover, .rw-combobox-toggle:hover, .rx-autocomplete-toggle:hover { background: var(--cds-layer-hover-01, #e8e8e8); }
.rw-combobox-placeholder { color: var(--cds-text-helper, #6f6f6f); }
.rw-combobox-shortcut { position: absolute; top: 4px; right: 32px; padding: 0 4px; font-size: 12px; color: var(--cds-text-secondary, #525252); background: var(--cds-layer-01, #f4f4f4); pointer-events: none; }
.rw-combo-filter-host { display: contents; }
.rw-combobox-container .options-container.rw-combobox-options,
.autocomplete-list {
    --cds-rw-ctrl-bg: var(--cds-layer-01, #f4f4f4);
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: var(--cds-layer-01, #f4f4f4);
    color: var(--cds-text-primary, #161616);
    box-shadow: 0 2px 6px var(--cds-shadow, rgba(0, 0, 0, .3));
    font: inherit;
}
.rw-combobox-container .rw-combobox-options .option-item,
.autocomplete-list > li {
    --cds-rw-ctrl-bg: var(--cds-layer-01, #f4f4f4);
    box-sizing: border-box;
    display: flex;
    align-items: center;
    min-height: 40px;
    height: 40px;
    padding: 8px 16px;
    margin: 0;
    border: 0;
    border-left: 2px solid transparent;
    border-radius: 0;
    outline: 0;
    background: var(--cds-layer-01, #f4f4f4);
    color: var(--cds-text-primary, #161616);
    font: inherit;
    cursor: pointer;
}
.rw-combobox-container .rw-combobox-options .option-item.option-template-item,
.autocomplete-list > li.rx-autocomplete-template { height: auto; }
.rw-combobox-container .rw-combobox-options .option-item:hover,
.rw-combobox-container .rw-combobox-options .option-item.highlighted,
.autocomplete-list > li:hover,
.autocomplete-list > li.highlighted {
    --cds-rw-ctrl-bg: var(--cds-layer-hover-01, #e8e8e8);
    background: var(--cds-layer-hover-01, #e8e8e8);
    font-weight: inherit;
}
.rw-combobox-container .rw-combobox-options .option-item.selected,
.autocomplete-list > li.selected {
    --cds-rw-ctrl-bg: var(--cds-highlight, #d0e2ff);
    --cds-layer-selected: var(--cds-highlight, #d0e2ff);
    background: var(--cds-highlight, #d0e2ff);
    border-left: 2px solid var(--cds-button-primary, #0f62fe);
    margin: 0;
    outline: 0;
    font-weight: inherit;
}
.rw-combobox-container .rw-combobox-options .option-item.selected.highlighted { background: var(--cds-layer-hover-01, #e8e8e8); }
.rw-combobox-container .rw-combobox-options .load-more {
    justify-content: center;
    width: 100%;
    border-left: 0;
    border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0);
    color: var(--cds-link-primary, #0f62fe);
}
.autocomplete-list > li.no-results { color: var(--cds-text-helper, #6f6f6f); cursor: default; }
.autocomplete-container.autocomplete-tagify,
.autocomplete-container.autocomplete-selector,
.autocomplete-container {
    border-radius: 0;
    border: 0;
    border-bottom: 1px solid var(--cds-border-strong-01, #8d8d8d);
    background: var(--cds-rw-ctrl-bg, var(--cds-field-01, #f4f4f4)); /* 앱 컨트롤 배경(cds-bg-ctrl 과 같음) */
    min-height: 40px;
    padding: 0;
    gap: 8px;
    font: inherit;
}
.autocomplete-container.rx-autocomplete-tagify { flex-direction: row; align-items: center; }
.autocomplete-container .rx-autocomplete-input-grow { flex: 1 1 100px; min-width: 0; }
.autocomplete-container .autocomplete-input,
.autocomplete-container.autocomplete-selector .autocomplete-input {
    height: 40px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--cds-text-primary, #161616);
    padding: 0 16px;
    font: inherit;
}
.autocomplete-container .autocomplete-input::placeholder { font: inherit; color: var(--cds-text-helper, #6f6f6f); }
.autocomplete-container .tag,
.autocomplete-container.autocomplete-selector .tag {
    display: inline-flex;
    align-items: center;
    flex: 0 1 auto;
    gap: 4px;
    height: 24px;
    padding: 0 2px 0 8px;
    border-radius: 999px;
    background: var(--cds-tag-background-blue, #d0e2ff);
    color: var(--cds-tag-color-blue, #0043ce);
    font: inherit;
}
.autocomplete-container .tag .tag-text { font-family: inherit; color: var(--cds-tag-color-blue, #0043ce); }
.autocomplete-container .tag button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--cds-tag-color-blue, #0043ce);
}
.autocomplete-container .tag button:hover { background: rgba(0, 0, 0, .12); }
.autocomplete-container .tag button:focus-visible { outline: 2px solid var(--cds-focus, #0f62fe); outline-offset: -2px; }
/* 선택기(selector) 모드: 선택값은 알약 태그가 아니라 입력칸 값처럼 — 한 줄 40px, 필드 배경, 오른쪽 32px 지우기 버튼(목업 4번 메모). 알약은 tagify 모드에만. */
.autocomplete-container.autocomplete-selector .tag {
    display: flex;
    flex: 1 1 100%;
    width: 100%;
    height: 40px;
    gap: 8px;
    padding: 0 0 0 16px;
    border-radius: 0;
    background: transparent;
    color: var(--cds-text-primary, #161616);
}
.autocomplete-container.autocomplete-selector .tag .tag-text { color: var(--cds-text-primary, #161616); flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.autocomplete-container.autocomplete-selector .tag button {
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    border-radius: 0;
    color: var(--cds-icon-primary, #161616);
}
.autocomplete-container.autocomplete-selector .tag button:hover { background: var(--cds-layer-hover-01, #e8e8e8); }
.autocomplete-container.autocomplete-multi-selector .tag + .tag { border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0); }
/* 선택기 모드는 세로(flex-direction: column)라 위의 flex-basis 100px 이 높이가 된다 → 입력 줄은 내용 높이만. 포커스 링과 밑줄도 입력 줄에만. */
.autocomplete-container.autocomplete-selector .rx-autocomplete-input-grow { flex: 0 0 auto; }
.autocomplete-container.autocomplete-selector:focus-within { outline: none; }
.autocomplete-container.autocomplete-selector { border-bottom: 0; }
.autocomplete-container.autocomplete-selector .input-container { border-bottom: 1px solid var(--cds-border-strong-01, #8d8d8d); }
.autocomplete-container.autocomplete-selector .input-container:focus-within { outline: 2px solid var(--cds-focus, #0f62fe); outline-offset: -2px; }
/* 단일 선택기: 값이 선택되면 입력 줄이 숨고 태그가 필드 자리를 대신한다 → 태그에 밑줄. */
.autocomplete-container.autocomplete-single-selector .tag { border-bottom: 1px solid var(--cds-border-strong-01, #8d8d8d); }
.rw-combobox-carbon.disabled, .autocomplete-container.disabled { color: var(--cds-text-disabled, #c6c6c6); }
.rw-combobox-inline-editor-action.carbon-icon::before { content: none; }

.rw-combobox-filter { padding: 16px; gap: 8px; font: inherit; }
.rw-combobox-filter-heading, .rw-combobox-filter-selected, .rw-combobox-filter-footer { border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0); }
.rw-combobox-filter-search, .rw-combobox-filter-results, .rw-combobox-filter-selected { border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0); }
.rw-combobox-filter-input { height: 40px; font: inherit; }
.rw-combobox-filter-results { background: var(--cds-layer-01, #f4f4f4); }
.rw-combobox-filter-caption, .rw-combobox-filter-footer { padding-top: 8px; }
.rw-combobox-filter-label { display: flex; align-items: center; min-height: 32px; padding: 0 16px; color: var(--cds-text-secondary, #525252); }
.rw-combobox-filter-selected { min-height: 100px; }
.rw-combobox-filter-selected-row { background: var(--cds-highlight, #d0e2ff); }
.rw-combobox-filter-actions { display: flex; justify-content: flex-end; }
.rw-combobox-filter-apply, .rw-combobox-filter-idle { min-height: 32px; padding: 8px 16px; border: 0; border-radius: 0; font: inherit; }
.rw-combobox-filter-apply { background: var(--cds-button-primary, #0f62fe); color: var(--cds-text-on-color, #ffffff); }
.rw-combobox-filter-idle { background: var(--cds-button-disabled, #c6c6c6); color: var(--cds-text-disabled, #8d8d8d); }
.rw-combobox-filter-apply:focus-visible { outline: 2px solid var(--cds-focus, #0f62fe); outline-offset: 2px; }

.rx-autocomplete-filter { padding: 16px; gap: 8px; font: inherit; }
.rx-autocomplete-filter-heading, .rx-autocomplete-filter-selected, .rx-autocomplete-filter-footer { border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0); }
.rx-autocomplete-filter-search, .rx-autocomplete-filter-results, .rx-autocomplete-filter-selected { border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0); }
.rx-autocomplete-filter-input { height: 40px; font: inherit; }
.rx-autocomplete-filter-results { background: var(--cds-layer-01, #f4f4f4); }
.rx-autocomplete-filter-caption, .rx-autocomplete-filter-footer { padding-top: 8px; }
.rx-autocomplete-filter-label { display: flex; align-items: center; min-height: 32px; padding: 0 16px; color: var(--cds-text-secondary, #525252); }
.rx-autocomplete-filter-selected { min-height: 100px; }
.rx-autocomplete-filter-selected-row { background: var(--cds-highlight, #d0e2ff); }
.rx-autocomplete-filter-actions { display: flex; justify-content: flex-end; }
.rx-autocomplete-filter-apply, .rx-autocomplete-filter-idle { min-height: 32px; padding: 8px 16px; border: 0; border-radius: 0; font: inherit; }
.rx-autocomplete-filter-apply { background: var(--cds-button-primary, #0f62fe); color: var(--cds-text-on-color, #ffffff); }
.rx-autocomplete-filter-idle { background: var(--cds-button-disabled, #c6c6c6); color: var(--cds-text-disabled, #8d8d8d); }
.rx-autocomplete-filter-apply:focus-visible { outline: 2px solid var(--cds-focus, #0f62fe); outline-offset: 2px; }

/* ==== 40-components/rw-optionlist.css ==== */
/* RwOptionList Carbon markup (task-19). Toggle is a CSS opt-in on an ancestor. */
.rw-option-list.rw-optionlist-root { display: flex; flex-direction: column; gap: 8px; max-height: 300px; font: inherit; }
.rw-optionlist-root .rw-optionlist-row { display: flex; align-items: center; gap: 8px; min-height: 32px; margin: 0; cursor: pointer; user-select: none; } /* label 이므로 제목 클릭도 체크 */
.rw-optionlist-root .rw-optionlist-row:has(:disabled) { cursor: default; }
.rw-optionlist-root .rw-optionlist-label { color: var(--cds-text-primary, #161616); font: inherit; }
.rw-optionlist-root input.rw-optionlist-checkbox {
    appearance: none;
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    margin: 0;
    border: 1px solid var(--cds-icon-primary, #161616);
    border-radius: 0;
    background: transparent;
    position: relative;
    cursor: pointer;
}
.rw-optionlist-root input.rw-optionlist-checkbox:checked { background: var(--cds-icon-primary, #161616); }
.rw-optionlist-root input.rw-optionlist-checkbox:checked::after { content: ""; position: absolute; left: 4px; top: 1px; width: 5px; height: 9px; border: solid var(--cds-text-on-color, #ffffff); border-width: 0 2px 2px 0; transform: rotate(45deg); }
.rw-optionlist-root input.rw-optionlist-checkbox:focus-visible { outline: 2px solid var(--cds-focus, #0f62fe); outline-offset: 2px; }
.rw-optionlist-root input.rw-optionlist-checkbox:disabled { border-color: var(--cds-text-disabled, #c6c6c6); cursor: not-allowed; }
.rw-optionlist-root input.rw-optionlist-checkbox:disabled:checked { background: var(--cds-text-disabled, #c6c6c6); }
.rw-optionlist-row:has(:disabled) .rw-optionlist-label { color: var(--cds-text-disabled, #c6c6c6); }
.rw-optionlist-root .rw-optionlist-row + .rw-optionlist-row { border-top: 1px solid var(--cds-border-subtle-01, #e0e0e0); }
.rw-optionlist-toggle .rw-optionlist-root input.rw-optionlist-checkbox { flex-basis: 32px; width: 32px; height: 16px; border: 0; border-radius: 16px; background: var(--cds-icon-secondary, #525252); }
.rw-optionlist-toggle .rw-optionlist-root input.rw-optionlist-checkbox:checked { background: var(--cds-support-success, #24a148); }
.rw-optionlist-toggle .rw-optionlist-root input.rw-optionlist-checkbox::after,
.rw-optionlist-toggle .rw-optionlist-root input.rw-optionlist-checkbox:checked::after { content: ""; position: absolute; left: 2px; top: 2px; width: 12px; height: 12px; border: 0; border-radius: 50%; background: var(--cds-text-on-color, #ffffff); transform: none; }
.rw-optionlist-toggle .rw-optionlist-root input.rw-optionlist-checkbox:checked::after { left: 18px; }

/* ==== 40-components/rw-viewer-toolbar.css ==== */
/* task-20 — viewer chrome only; renderers retain their own rules. */
.rw-viewer-toolbar,
.rw-zpl .rw-zpl-toolbar.rw-viewer-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; height: auto; min-height: 40px; margin: 0; padding: 4px 8px; overflow-x: visible; background: var(--cds-layer-01, #f4f4f4); border-bottom: 1px solid var(--cds-border-subtle-01, #e0e0e0); border-radius: 0; color: var(--cds-text-primary, #161616); }
.rw-viewer-toolbar > * { flex-shrink: 0; }
.rw-zpl .rw-zpl-toolbar.rw-viewer-toolbar > label { flex-direction: row; align-items: center; gap: 8px; margin: 0; white-space: nowrap; }
.rw-zpl .rw-zpl-toolbar.rw-viewer-toolbar select { height: 32px; padding: 0 8px; border-radius: 0; background: var(--cds-rw-ctrl-bg, var(--cds-field-01, #f4f4f4)); font: inherit; font-variant-numeric: tabular-nums; }
.rw-viewer-toolbar .cds-btn { height: 32px; min-height: 32px; border-radius: 0; }
.rw-viewer-body,
.rw-zpl .rw-zpl-layout.rw-viewer-body { border: 1px solid var(--cds-border-subtle-01, #e0e0e0); border-radius: 0; }
.rw-report-viewer-body { height: 100%; overflow: hidden; }
.rw-code-viewer { height: 100%; }
.rw-code-viewer-content { padding: 16px; }
.rw-code-viewer .rw-code-editor.rw-viewer-body { overflow: hidden; }
.rw-code-viewer-toolbar { justify-content: flex-end; }

/* ==== 40-components/rw-calendar.css ==== */
/* RwCalendar Carbon theme (task-21). Keep FullCalendar contracts intact. */
.rw-calendar { font-family: inherit; }
.rw-calendar .fc {
    --fc-border-color: var(--cds-border-subtle-01, #e0e0e0);
    --fc-page-bg-color: var(--cds-background, #ffffff);
    --fc-neutral-bg-color: var(--cds-layer-01, #f4f4f4);
    --fc-neutral-text-color: var(--cds-text-secondary, #525252);
    --fc-highlight-color: var(--cds-highlight, #d0e2ff);
    --fc-today-bg-color: transparent;
    --fc-event-bg-color: var(--cds-highlight, #d0e2ff);
    --fc-event-border-color: var(--cds-button-primary, #0f62fe);
    --fc-event-text-color: var(--cds-text-primary, #161616);
    --fc-now-indicator-color: var(--cds-support-error, #da1e28);
    --fc-list-event-hover-bg-color: var(--cds-layer-hover-01, #e8e8e8);
    --fc-button-text-color: var(--cds-link-primary, #0f62fe);
    --fc-button-bg-color: transparent;
    --fc-button-border-color: transparent;
    --fc-button-hover-bg-color: var(--cds-layer-hover-01, #e8e8e8);
    --fc-button-hover-border-color: transparent;
    --fc-button-active-bg-color: var(--cds-button-primary, #0f62fe);
    --fc-button-active-border-color: var(--cds-button-primary, #0f62fe);
    font-family: inherit;
    color: var(--cds-text-primary, #161616);
}
.rw-calendar .fc .fc-button {
    background-color: var(--fc-button-bg-color);
    color: var(--fc-button-text-color);
    height: 40px;
    padding: 0 16px;
    border-radius: 0;
    font-family: inherit;
    font-size: 14px;
    font-weight: 400;
}
.rw-calendar .fc .fc-button-group .fc-button {
    /* Outline survives the vendor's border:0 !important without another important. */
    outline: 1px solid var(--cds-button-primary, #0f62fe);
    outline-offset: -1px;
}
.rw-calendar .fc .fc-button:is(.fc-prev-button, .fc-next-button, .fc-prevYear-button, .fc-nextYear-button) {
    width: 40px;
    padding: 0;
    outline: none;
}
.rw-calendar .fc .fc-button-primary:not(:disabled):is(:hover, :focus, :active),
.rw-calendar .fc .fc-button-primary:not(:disabled):is(:hover, :focus, :active) .fc-icon {
    color: var(--cds-link-primary, #0f62fe);
}
.rw-calendar .fc .fc-button-primary:not(:disabled).fc-button-active,
.rw-calendar .fc .fc-button-primary:not(:disabled).fc-button-active .fc-icon {
    background-color: var(--cds-button-primary, #0f62fe);
    color: var(--cds-text-on-color, #ffffff);
}
.rw-calendar .fc .fc-button:focus-visible {
    outline: 2px solid var(--cds-focus, #0f62fe);
    outline-offset: 2px;
}
.rw-calendar .fc .fc-toolbar-title { font-size: 20px; font-weight: 400; color: var(--cds-text-primary, #161616); }
.rw-calendar .fc .fc-col-header-cell { background: var(--cds-layer-01, #f4f4f4); }
.rw-calendar .fc .fc-col-header-cell .fc-col-header-cell-cushion { font-size: 14px; font-weight: 600; color: var(--cds-text-secondary, #525252); }
.rw-calendar .fc .fc-scrollgrid,
.rw-calendar .fc .fc-scrollgrid tr > td { border-radius: 0; }
.rw-calendar .fc .fc-daygrid-day { height: 110px; }
.rw-calendar .fc .fc-daygrid-day-number { color: var(--cds-text-primary, #161616); }
.rw-calendar .fc .fc-day-sun .fc-daygrid-day-number { color: var(--cds-support-error, #da1e28); }
.rw-calendar .fc .fc-day-sat .fc-daygrid-day-number { color: var(--cds-link-primary, #0f62fe); }
.rw-calendar .fc .fc-day-today { box-shadow: inset 0 0 0 2px var(--cds-button-primary, #0f62fe); }
.rw-calendar .fc .selected-date,
.rw-calendar .fc .fc-highlight { background-color: var(--cds-highlight, #d0e2ff); }
.rw-calendar .fc .fc-event {
    border-radius: 0;
    border-width: 0 0 0 3px;
    border-style: solid;
    border-color: var(--fc-event-border-color);
    /* Inline FullCalendar event background/text colors become a stripe + readable chip. */
    background-color: var(--cds-highlight, #d0e2ff) !important;
    color: var(--cds-text-primary, #161616) !important;
    font-size: 12px;
}
.rw-calendar .fc .fc-event .fc-event-main { color: var(--cds-text-primary, #161616); }
/* Existing eventContent puts bgColor on its direct div. Cover all but its left
   3px with a solid background image, preserving arbitrary inline colors as a stripe. */
.rw-calendar .fc .fc-daygrid-dot-event > div[style*="background-color"],
.rw-calendar .fc .fc-event-main > div[style*="background-color"] {
    background-image: linear-gradient(var(--cds-highlight, #d0e2ff), var(--cds-highlight, #d0e2ff));
    background-size: calc(100% - 3px) 100%;
    background-position: right;
    background-repeat: no-repeat;
    color: var(--cds-text-primary, #161616) !important;
    border-radius: 0 !important;
    box-sizing: border-box;
    max-width: 100%;
}
.rw-calendar .fc .fc-event:has(.fc-event-main > div[style*="background-color"], > div[style*="background-color"]) { border-left-width: 0; }
.rw-calendar .fc .fc-daygrid-dot-event > div[style*="background-color"] span,
.rw-calendar .fc .fc-event-main > div[style*="background-color"] span { color: inherit !important; }
.rw-calendar .fc .fc-daygrid-event-dot { display: none; }
.rw-calendar .fc .fc-event-mirror { outline: 1px solid var(--cds-focus, #0f62fe); }

/* RwCalendar 메뉴(날짜 클릭 드롭다운) — Carbon menu. 위치·표시는 JS/인라인(display, position, z-index)이 맡는다. */
.dropdown-menu.rw-calendar-menu { min-width: 160px; padding: 0; margin: 0; background: var(--cds-layer-01, #f4f4f4); border: 0; border-radius: 0; box-shadow: 0 2px 6px var(--cds-shadow, rgba(0, 0, 0, .3)); }
.rw-calendar-menu .rw-calendar-menu-item { display: flex; align-items: center; gap: 8px; width: 100%; min-height: 36px; padding: 8px 16px; border: 0; border-radius: 0; background: transparent; color: var(--cds-text-primary, #161616); font: inherit; font-size: 14px; text-align: left; cursor: pointer; }
.rw-calendar-menu .rw-calendar-menu-item:hover { background: var(--cds-layer-hover-01, #e8e8e8); }
.rw-calendar-menu .rw-calendar-menu-item:focus-visible { outline: 2px solid var(--cds-focus, #0f62fe); outline-offset: -2px; }

/* 달력 격자 배경: 컴포넌트가 직접 앱 컨트롤 배경(--cds-rw-ctrl-bg = cds-bg-ctrl 과 같은 값)을 깐다.
   회색 패널 위에 놓여도 칸과 테두리(#e0e0e0)가 보이게 — 화면에서 cds-bg-ctrl 을 따로 붙일 필요 없음. */
.rw-calendar .fc .fc-scrollgrid,
.rw-calendar .fc .fc-daygrid-body,
.rw-calendar .fc .fc-timegrid-body,
.rw-calendar .fc .fc-list { background: var(--cds-rw-ctrl-bg, var(--cds-background, #ffffff)); }

