/* ¹öÀü: 202604171802 */
/* ½ÃÀÛ: ÇÏ´Ü Åø¹Ù ÇÃ·ÎÆÃ ¸Þ´º CSS ÂªÀº¼³¸í: ÇÏ´Ü Áß¾Ó¿¡ ¶°ÀÖ´Â Åø¹Ù ¸Þ´º ¹öÆ°, ±×·ì, ÅøÆÁ ¹× µå·Ó¾÷ ¸Þ´ºÀÇ ½ºÅ¸ÀÏ Á¤ÀÇ */
.center-tool-container {
    position: absolute; 
    bottom: 100%; 
    margin-bottom: 12px; 
    left: 50%;
    transform: translateX(-50%); 
    display: flex;
    gap: 12px; 
    z-index: 1001;
}

.tool-group.horizontal-group {
    background: linear-gradient(to bottom, #e2ebfa 0%, #d5e2fc 100%);
    border: 1px solid rgba(66, 133, 244, 0.3); 
    border-radius: 12px;
    height: 44px; 
    display: flex;
    flex-direction: row;
    align-items: center;
    box-shadow: 0 4px 10px rgba(66, 133, 244, 0.25), inset 0 1px 2px #ffffff;
    padding: 0 6px;
}

.tool-btn { 
    border: none; 
    background: none; 
    height: 34px; 
    width: 34px;
    margin: 0 2px;
    cursor: pointer; 
    color: #444; 
    font-size: 15px; 
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    transition: all 0.2s ease;
}

.tool-btn:hover { 
    background-color: #4285F4 !important; 
    color: #ffffff !important; 
}

/* ½ÃÀÛ: Åø¹Ù ¹öÆ° ºñÈ°¼ºÈ­ ½ºÅ¸ÀÏ ¼öÁ¤ v202604122045 ÂªÀº¼³¸í: ÅøÆÁ Åõ¸íµµ ¹®Á¦¸¦ ÇØ°áÇÏ±â À§ÇØ ºÎ¸ðÀÇ opacity¸¦ Á¦°ÅÇÏ°í ³»ºÎ ¾ÆÀÌÄÜ ¹× ¹öÆ° ¿ä¼Ò¿¡¸¸ ½Ã°¢Àû ºñÈ°¼ºÈ­(Åõ¸íµµ, Èæ¹é) Àû¿ë */
.disabled-tool-btn {
    cursor: pointer !important; 
}

div.disabled-tool-btn .tool-btn {
    filter: grayscale(1) !important;
    opacity: 0.5 !important;
    pointer-events: none !important; 
}

button.disabled-tool-btn i {
    filter: grayscale(1) !important;
    opacity: 0.5 !important;
}

button.disabled-tool-btn:hover {
    background-color: transparent !important;
    color: #444 !important;
}

.disabled-tool-btn .dropup-menu {
    display: none !important; 
}
/* ³¡: Åø¹Ù ¹öÆ° ºñÈ°¼ºÈ­ ½ºÅ¸ÀÏ ¼öÁ¤ v202604122045 ÂªÀº¼³¸í: ÅøÆÁ Åõ¸íµµ ¹®Á¦¸¦ ÇØ°áÇÏ±â À§ÇØ ºÎ¸ðÀÇ opacity¸¦ Á¦°ÅÇÏ°í ³»ºÎ ¾ÆÀÌÄÜ ¹× ¹öÆ° ¿ä¼Ò¿¡¸¸ ½Ã°¢Àû ºñÈ°¼ºÈ­(Åõ¸íµµ, Èæ¹é) Àû¿ë */

[data-tooltip] {
    position: relative;
}

[data-tooltip]::before {
    content: attr(data-tooltip);
    position: absolute;
    bottom: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    background-color: rgba(60, 64, 67, 0.95);
    color: #ffffff;
    padding: 6px 10px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
    white-space: nowrap;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    z-index: 10000;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
    transition: none;
}

[data-tooltip]::after {
    content: '';
    position: absolute;
    bottom: calc(100% + 2px);
    left: 50%;
    transform: translateX(-50%);
    border-width: 6px 6px 0 6px;
    border-style: solid;
    border-color: rgba(60, 64, 67, 0.95) transparent transparent transparent;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    z-index: 10000;
    transition: none;
}

[data-tooltip]:hover::before,
[data-tooltip]:hover::after {
    opacity: 1;
    visibility: visible;
}

.divider-vertical { 
    width: 1px; 
    height: 18px; 
    background: rgba(66, 133, 244, 0.25); 
    margin: 0 4px; 
}

.dropup {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
}

.dropup-menu {
    display: none; 
    position: absolute; 
    bottom: 50px; 
    left: 50%;
    transform: translateX(-50%); 
    background: white; 
    border: 1px solid rgba(66, 133, 244, 0.3); 
    border-radius: 10px; 
    box-shadow: 0 -4px 16px rgba(0,0,0,0.15); 
    min-width: 140px; 
    width: max-content; 
    z-index: 1002; 
    padding: 6px 0;
    white-space: nowrap; 
}

.dropup-menu::after { 
    content: ""; 
    position: absolute; 
    bottom: -15px; 
    left: 0; 
    width: 100%; 
    height: 15px; 
    background: transparent; 
}

.dropup:hover .dropup-menu { 
    display: block; 
}

.dropup-menu button { 
    width: 100%; 
    border: none; 
    background: none; 
    padding: 10px 16px; 
    text-align: left; 
    cursor: pointer; 
    font-size: 13px; 
    font-weight: 600; 
    color: #444; 
    display: flex; 
    align-items: center; 
    gap: 10px; 
    transition: all 0.2s ease;
}

.dropup-menu button i { 
    width: 16px; 
    text-align: center; 
    color: #777; 
    font-size: 14px;
    transition: color 0.2s ease; 
}

.dropup-menu button:hover { 
    background: #f0f4ff; 
    color: #4285F4; 
}

.dropup-menu button:hover i { 
    color: #4285F4; 
}

.modal-custom-btn {
    padding: 8px 24px;
    border: 1px solid #dadce0;
    border-radius: 4px;
    font-size: 13px;
    cursor: pointer;
    transition: all 0.2s;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    outline: none;
}

.modal-btn-confirm {
    background-color: #f1f3f4;
    color: #333;
    font-weight: bold;
}

.modal-btn-load {
    background-color: #fff;
    color: #333;
    font-weight: normal;
}

.modal-custom-btn:hover:not(:disabled) {
    background-color: #f0f4ff !important;
    color: #4285F4 !important;
    border-color: #c6d8ff !important;
}

.modal-custom-btn:disabled {
    background-color: #f1f3f4;
    color: #888;
    cursor: not-allowed;
    opacity: 0.5;
}

/* ½ÃÀÛ: ¸ð´Þ ³» ¹öÆ° ±×·ì Grid ·¹ÀÌ¾Æ¿ô ¾î¶² ±â´ÉÀ» ÇÏ´Â ¿ä¼ÒÀÎÁö ÂªÀº¼³¸í: ·Î±× ¿¡µðÅÍ¿Í µ¿ÀÏÇÑ Á¤·ÄÀ» À§ÇØ Grid¸¦ »ç¿ëÇÏ¿© ¿ìÃø ¶óÀÎ ÅëÀÏ ¹× ¸»ÁÙÀÓÇ¥ Ã³¸® */
.modal-btn-group {
    display: grid;
    grid-template-columns: 1fr 80px; 
    gap: 8px;
    align-items: center;
    width: 100%;
}

.modal-btn-group .modal-btn-load {
    grid-column: 1;
    justify-self: end;
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block; 
    text-align: center;
}

.modal-btn-group .modal-btn-confirm {
    grid-column: 2;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}
/* ³¡: ¸ð´Þ ³» ¹öÆ° ±×·ì Grid ·¹ÀÌ¾Æ¿ô ¾î¶² ±â´ÉÀ» ÇÏ´Â ¿ä¼ÒÀÎÁö ÂªÀº¼³¸í: ·Î±× ¿¡µðÅÍ¿Í µ¿ÀÏÇÑ Á¤·ÄÀ» À§ÇØ Grid¸¦ »ç¿ëÇÏ¿© ¿ìÃø ¶óÀÎ ÅëÀÏ ¹× ¸»ÁÙÀÓÇ¥ Ã³¸® */
/* ³¡: ÇÏ´Ü Åø¹Ù ÇÃ·ÎÆÃ ¸Þ´º CSS ÂªÀº¼³¸í: ÇÏ´Ü Áß¾Ó¿¡ ¶°ÀÖ´Â Åø¹Ù ¸Þ´º ¹öÆ°, ±×·ì, ÅøÆÁ ¹× µå·Ó¾÷ ¸Þ´ºÀÇ ½ºÅ¸ÀÏ Á¤ÀÇ */