        /* SHA工具主体容器 */


        .sha-container {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
            align-items: center;
        }

        @media (min-width: 768px) {
            .sha-container {
                min-width: 560px;
            }
        }

        /* 选择器+大小写按钮 同行容器 */
        .selector-switch-group {
            width: 100%;
            max-width: 800px;
            display: flex;
            align-items: center;
            gap: 1.5rem;
            flex-wrap: wrap; /* 🔥 新增：极端小屏时自动换行 */
        }

        /* SHA加密类型选择器 - 调整宽度适配同行 */
        .encrypt-type-selector {
            flex: 1;
            min-width: 180px; /* 🔥 新增：设置最小宽度，防止下拉框被挤压 */
            width: auto;
        }

        .select-wrapper {
            position: relative;
            width: 100%;
        }

        #encryptType {
            width: 100%;
            padding: 0.9rem 1.2rem;
            border: 2px solid #e0e6ed;
            border-radius: 10px;
            font-size: 1rem;
            outline: none;
            background-color: #f8fafc;
            color: #333;
            appearance: none;
            cursor: pointer;
            transition: all 0.2s ease;
        }

        #encryptType:focus {
            border-color: #3498db;
            box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.1);
            background-color: #fff;
        }

        #encryptType option {
            padding: 0.8rem;
            background-color: #fff;
            color: #333;
        }

        /* 下拉箭头样式 */
        .select-wrapper::after {
            content: "▼";
            position: absolute;
            right: 1.2rem;
            top: 50%;
            transform: translateY(-50%);
            font-size: 0.8rem;
            color: #666;
            pointer-events: none;
            transition: all 0.2s ease;
        }

        .select-wrapper:focus-within::after {
            color: #3498db;
            transform: translateY(-50%) rotate(180deg);
        }

        /* 大小写双按钮样式（匹配示例） */
        .config-group {
            display: flex;
            align-items: center;
            gap: 0.8rem;
            white-space: nowrap;
            flex-shrink: 0; /* 🔥 新增：防止容器被压缩 */
            min-width: 160px; /* 🔥 新增：设置最小宽度，保证按钮完整显示 */
        }

        .config-label {
            font-size: 15px;
            color: #666;
            flex-shrink: 0; /* 🔥 新增：防止文字被挤压 */
        }

        .sort-options {
            display: flex;
            border-radius: 8px;
            overflow: hidden;
            border: 1px solid #d35f15;
            flex-shrink: 0; /* 🔥 新增：防止按钮容器被压缩 */
        }

        .sort-option {
            padding: 0.6rem 1rem;
            font-size: 14px;
            background-color: #f8fafc;
            color: #666;
            cursor: pointer;
            transition: all 0.2s ease;
            flex-shrink: 0; /* 🔥 新增：防止按钮文字被挤压 */
            min-width: 60px; /* 🔥 新增：按钮最小宽度，保证文字不换行 */
            text-align: center; /* 🔥 新增：文字居中 */
        }

        .sort-option:hover {
            background-color: #e8f4f8;
        }

        .sort-option.active {
            background-color: #3498db;
            color: #fff;
            font-weight: 500;
        }

        /* 输入输出区域 */
        .input-output-group {
            display: flex;
            flex-direction: column;
            gap: 1.8rem;
            width: 100%;
            max-width: 800px;
        }

        @media (min-width:768px) {
            .input-output-group {
                min-width: 365px;
           }
         }

        .text-area {
            width: 100%;
            min-height: 180px;
            padding: 1.2rem;
            border: 2px solid #e0e6ed;
            border-radius: 10px;
            font-size: 1rem;
            outline: none;
            resize: vertical;
            transition: all 0.2s ease;
            line-height: 1.6;
            background-color: #f8fafc;
        }

        .text-area:focus {
            border-color: #3498db;
            box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.1);
            background-color: #fff;
        }

        /* 按钮组样式 */
        .btn-group {
            display: flex;
            gap: 1.2rem;
            width: 100%;
            justify-content: center;
            flex-wrap: wrap;
            margin-top: 0.5rem;
        }

        .action-btn {
            padding: 0.9rem 2.2rem;
            border: none;
            border-radius: 10px;
            cursor: pointer;
            font-size: 1rem;
            font-weight: 500;
            white-space: nowrap;
            transition: all 0.25s ease;
            box-shadow: 0 4px 8px rgba(0,0,0,0.08);
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.5rem;
        }

        #encryptBtn {
            background: linear-gradient(135deg, #3498db 0%, #2980b9 100%);
            color: white;
            flex: 1;
        }

        #encryptBtn:hover {
            background: linear-gradient(135deg, #2980b9 0%, #1f618d 100%);
            transform: translateY(-2px);
            box-shadow: 0 6px 12px rgba(0,0,0,0.12);
        }

        #encryptBtn:active {
            transform: translateY(0);
            box-shadow: 0 4px 8px rgba(0,0,0,0.08);
        }

        #clearBtn {
            background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%);
            color: white;
            flex: 1;
        }

        #clearBtn:hover {
            background: linear-gradient(135deg, #c0392b 0%, #a52e20 100%);
            transform: translateY(-2px);
            box-shadow: 0 6px 12px rgba(0,0,0,0.12);
        }

        #clearBtn:active {
            transform: translateY(0);
            box-shadow: 0 4px 8px rgba(0,0,0,0.08);
        }

        #copyBtn {
            background: linear-gradient(135deg, #27ae60 0%, #219653 100%);
            color: white;
            flex: 1;
        }

        #copyBtn:hover {
            background: linear-gradient(135deg, #219653 0%, #1e874b 100%);
            transform: translateY(-2px);
            box-shadow: 0 6px 12px rgba(0,0,0,0.12);
        }

        #copyBtn:active {
            transform: translateY(0);
            box-shadow: 0 4px 8px rgba(0,0,0,0.08);
        }

        /* 占位符样式优化 */
        ::placeholder {
            color: #94a3b8;
            font-size: 0.95rem;
        }

        /* SHA工具专属移动端适配 */
        @media (max-width: 768px) {


            /* 移动端同行容器换行 */
            .selector-switch-group {
                flex-direction: column;
                gap: 1rem;
                align-items: stretch;
            }

            .config-group {
                justify-content: flex-start;
                min-width: auto; /* 🔥 新增：移动端取消最小宽度，自适应 */
                width: 100%; /* 🔥 新增：移动端占满宽度 */
            }

            .sort-options {
                flex: 1; /* 🔥 新增：移动端按钮容器占满剩余宽度 */
            }

            .sort-option {
                flex: 1; /* 🔥 新增：移动端按钮均分宽度 */
                min-width: auto; /* 🔥 新增：移动端取消按钮最小宽度 */
                padding: 0.6rem 0.5rem; /* 🔥 调整：移动端减小按钮内边距 */
                font-size: 13px; /* 🔥 调整：移动端减小字体 */
            }

            .btn-group {
                flex-direction: column;
                gap: 1rem;
            }

            .action-btn {
                width: 100%;
                padding: 0.8rem 1rem;
            }

            .text-area {
                min-height: 140px;
                font-size: 0.95rem;
                padding: 1rem;
            }
        }

        /* 🔥 新增：超小屏幕适配（比如手机竖屏 < 480px） */
        @media (max-width: 480px) {
            .config-label {
                font-size: 14px; /* 进一步减小标签字体 */
            }
            .sort-option {
                padding: 0.5rem 0.3rem; /* 进一步减小按钮内边距 */
                font-size: 12px; /* 进一步减小按钮字体 */
            }
            .encrypt-type-selector {
                min-width: 100%; /* 超小屏下下拉框占满宽度 */
            }
        }
