input, select, textarea {display: inline-block; padding: 8px 12px; border: 1px solid #d9d9d9; border-radius: 4px; background: #fff; font-size: 16px;}
input, select {height: 40px;}
input::placeholder, select::placeholder, textarea::placeholder  {color: #8B8E90;}
input:focus, select:focus, textarea:focus {border: 1px solid #8B8E90;}
input:disabled, select:disabled, textarea:disabled {background: #E9E9E9; border: 1px solid #D9D9D9; color: #414344; cursor: default; border-radius: 4px; opacity: 1;}

input.search-input {min-width: 360px !important;}
input._full, textarea._full {width: 100%;}
input._half, textarea._half {width: 50%;}

.control-box:not(:last-of-type) {margin-right: 16px;}
.control-box._full {margin-right: 0; width: 100%;}
.control-box label {display: block; width: 100%; margin-bottom: 8px; font-size: 16px; font-weight: 500;}
.control-box input, .control-box select {min-width: 200px;}

.error-msg {display: block; font-size: 14px; color: #D61919; font-weight: 500; margin-top: 8px;}

/* 필수 표시 */
.required::after {content: " *";color: #fd0000; font-weight: bold;}

/* button */
button {display: inline-flex; justify-content: center; align-items: center; font-weight: 700; border-radius: 4px; transition: all 0.2s; flex-shrink: 0; padding: 0; font-size: 16px; cursor: pointer;}
button._sizeL {height: 40px; min-width: 80px; padding: 0 8px;}
button._sizeM {height: 36px; min-width: 72px; padding: 0 6px;}
button._sizeS {height: 32px; min-width: 64px; padding: 0 6px; font-size: 14px;}
button._sizeS._w40 {min-width: 40px;}
button._size100 {width: 100%;}

button._mainBg {background: #812B27; color: #fff;}
button._grayBg {background: #E9E9E9; color: #AAAAAA;}
button._mainLine {background: #fffaf5; color: #812B27; border: 1px solid #812B27;}
button._blackLine {background: #fff; color: #414344; border: 1px solid #D9D9D9;}
button._redLine {background: #FFF3F3; color: #D61919; border: 1px solid #D61919;}
button:disabled {background: #D9D9D9; color: #888; border: 1px solid #D9D9D9;}

button._iconBtn {min-width: 48px; width: 48px; padding: 0; font-size: 18px;}
button._iconBtn:hover {background: inherit; color: inherit;}

button._addIcon::before {content: '+'; display: inline-block; font-size: 130%; color: inherit; margin-right: 4px; font-weight: 400;}

button:hover {background: #570400; color: #fff;}
button._redLine:hover {background: #D61919; color: #fff; border: 1px solid #D61919;}
button._sizeL._mainLine:disabled {background: #E9E9E9; color: #AAAAAA;}
button:disabled, button:disabled:hover {background: none; border: none; color: #222; font-weight: 400; cursor: unset;}
button._sizeL.active { background-color: #570400; color: white; border-color:#570400; }
/* checkbox radio custom */
input[type="checkbox"], input[type="radio"] {position: relative; display: inline-block; appearance:none; width: 16px; height: 16px; padding: 0; border: none; margin-right: 4px;}
input[type="checkbox"]::before, input[type="checkbox"]::after, input[type="radio"]::before, input[type="radio"]::after {content: ''; display: block; position: absolute;}

input[type="checkbox"]::before {left: 0; top: 0; width: 16px; height: 16px; border: 1px solid #d9d9d9; background: #fff; border-radius: 2px;}
input[type="checkbox"]:checked::before {border: 1px solid #812B27; background: #812B27;}
/* input[type="checkbox"]:checked::after {left: 6px; top: 2px; width: 5px; height: 8px; border: 2px solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg);} */

input[type="radio"]::before {left: 0; top: 0; width: 100%; height: 100%; border: 1px solid #d9d9d9; background: #fff; border-radius: 7px;}
input[type="radio"]:checked::before {border: 1px solid #812B27;  background: #812B27;}
input[type="radio"]::after {top:5px; left: 5px; width: 6px; height: 6px; border-radius: 6px; background: #fff;}

/* radio > button */
.toBtnBox {display: flex; width: 100%; gap:12px; margin-bottom: 20px;}
.toBtnBox .dfBtn {flex: 1; max-width: 200px; cursor: pointer; position: relative; height: 40px; min-width: 80px; padding: 0 8px; margin-bottom: 0}
.toBtnBox .dfBtn input[type="radio"] + span {display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; position: absolute; top:0; left: 0; border-radius: 4px; background: #E9E9E9; color: #AAAAAA;}
.toBtnBox .dfBtn input[type="radio"]:checked + span {background: #812B27; color: #fff;}

/* button event */
.disabled {pointer-events: none; opacity: 0.6; cursor: not-allowed;}

/* dynamic */
.dynamic-content { visibility: hidden;}

/* 목표 인풋 박스 */
.chartInputSales { display: none; width: 150px; font-size: 14px; background: none; font-weight: bold;}
.editableTextSales {cursor: pointer; font-size: 14px; border: 1px solid transparent; }
.editableTextSales:hover { border: 1px solid #ddd;  background-color: #f9f9f9;}


/* hidden */
.hiddenContent {visibility: hidden}

/* 조직도 그룹 네임 수정 박스 */
.edit-input{ width: 190px;}