.popup-content:has(.mcp-tools-content) {
    overflow-y: auto;
}

.mcp-tools-content {
    padding: calc(var(--mainFontSize));
    max-width: 600px;
    margin: 0 auto;
    font-family: var(--mainFontFamily);

    .mcp-tools-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: calc(var(--mainFontSize) * 1.3);
        padding-bottom: calc(var(--mainFontSize) * 0.7);
        border-bottom: 1px solid var(--SmartThemeBorderColor);

        h3 {
            margin: 0;
            color: var(--SmartThemeBodyColor);
        }

        .header-buttons {
            display: flex;
            gap: calc(var(--mainFontSize) * 0.7);

            button {
                display: flex;
                align-items: center;
                gap: calc(var(--mainFontSize) * 0.4);
                padding: calc(var(--mainFontSize) * 0.4) calc(var(--mainFontSize) * 0.8);
                border-radius: 4px;
                background: var(--black30a);
                color: var(--SmartThemeBodyColor);
                transition: background-color var(--animation-duration) ease;
                font-size: calc(var(--mainFontSize) * 0.9);

                &:hover {
                    background: var(--black50a);
                }

                &:disabled {
                    opacity: 0.7;
                    cursor: not-allowed;
                }

                i {
                    font-size: 0.9em;
                }
            }
        }
    }

    .mcp-tools-list {
        margin-top: calc(var(--mainFontSize));
    }

    .server-tools-section {
        margin-bottom: calc(var(--mainFontSize) * 1.3);
        background: var(--black50a);
        border-radius: 5px;
        padding: calc(var(--mainFontSize) * 0.7);

        &.disabled {
            opacity: 0.6;
        }

        .server-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: calc(var(--mainFontSize) * 0.7);

            &.clickable {
                cursor: pointer;
                user-select: none;
                padding: calc(var(--mainFontSize) * 0.3);
                margin: calc(var(--mainFontSize) * -0.3);
                border-radius: 3px;
                transition: background-color var(--animation-duration) ease;

                &:hover {
                    background: var(--black30a);
                }
            }

            .header-content {
                display: flex;
                align-items: center;
                gap: calc(var(--mainFontSize) * 0.5);

                i {
                    transition: transform var(--animation-duration-slow) ease;
                    font-size: 0.8em;
                    color: var(--SmartThemeEmColor);
                }
            }

            h4 {
                margin: 0;
                color: var(--SmartThemeEmColor);
                font-size: calc(var(--mainFontSize) * 1.1);
            }

            .delete-server {
                padding: calc(var(--mainFontSize) * 0.3);
                color: var(--warning);
                background: var(--black30a);
                border-radius: 4px;
                transition: all 0.2s ease;

                &:hover {
                    background: var(--warning);
                    color: white;
                    transform: scale(1.1);
                }
            }

            .checkbox_label {
                margin: 0;
            }
        }

        .tools-list {
            max-height: none;
            opacity: 1;
            transform-origin: top;
            transform: scaleY(1);
            transition: all var(--animation-duration-slow) ease-out;
            will-change: transform, opacity, max-height;
            overflow-y: auto;

            &.collapsed {
                max-height: 0;
                opacity: 0;
                transform: scaleY(0);

                & + .server-header i {
                    transform: rotate(-90deg);
                }
            }
        }
    }

    .tool-item {
        padding: calc(var(--mainFontSize) * 0.7);
        margin-bottom: calc(var(--mainFontSize) * 0.5);
        background: var(--black30a);
        border-radius: 3px;
    }

    .tool-header {
        margin-bottom: calc(var(--mainFontSize) * 0.3);
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .tool-name {
        font-weight: bold;
        color: var(--SmartThemeBodyColor);
    }

    .tool-description {
        font-size: calc(var(--mainFontSize) * 0.9);
        color: var(--SmartThemeEmColor);
    }

    .no-servers {
        text-align: center;
        padding: calc(var(--mainFontSize) * 1.3);
        color: var(--SmartThemeEmColor);
    }

    .add-server-form {
        background: var(--black30a);
        border-radius: 5px;
        padding: calc(var(--mainFontSize) * 1.3);
        margin-bottom: calc(var(--mainFontSize) * 1.3);

        h4 {
            margin: 0 0 calc(var(--mainFontSize)) 0;
            color: var(--SmartThemeEmColor);
        }

        .form-group {
            margin-bottom: calc(var(--mainFontSize));

            label {
                display: block;
                margin-bottom: calc(var(--mainFontSize) * 0.5);
                color: var(--SmartThemeBodyColor);
            }

            textarea {
                width: 100%;
                min-height: calc(var(--mainFontSize) * 10);
                background: var(--black30a);
                border: 1px solid var(--SmartThemeBorderColor);
                border-radius: 4px;
                color: var(--SmartThemeBodyColor);
                font-family: var(--monospace);
                font-size: calc(var(--mainFontSize) * 0.9);
                padding: calc(var(--mainFontSize) * 0.7);
                resize: vertical;

                &::placeholder {
                    color: var(--SmartThemeEmColor);
                    opacity: 0.6;
                }
            }
        }

        .form-actions {
            display: flex;
            gap: calc(var(--mainFontSize) * 0.7);
            justify-content: flex-end;

            button {
                display: flex;
                align-items: center;
                gap: calc(var(--mainFontSize) * 0.4);
                padding: calc(var(--mainFontSize) * 0.4) calc(var(--mainFontSize) * 0.8);
                border-radius: 4px;
                background: var(--black30a);
                color: var(--SmartThemeBodyColor);
                transition: background-color var(--animation-duration) ease;
                font-size: calc(var(--mainFontSize) * 0.9);

                &:hover {
                    background: var(--black50a);
                }

                i {
                    font-size: 0.9em;
                }
            }
        }
    }
}
