/* ==================== Fluent Forms 无圆角线框表单 ==================== */

/* ==========================================================================
   输入框公共样式
   ========================================================================== */

.fluentform .ff-el-form-control,
.ff-default .ff-el-form-control {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;

    height: 44px;
    min-height: 44px;
    margin: 0;
    padding: 8px 14px;

    font-family: inherit !important;
    font-size: 14px;
    line-height: 26px;
    color: #444;

    background-color: transparent !important;
    background-image: none;

    border: 1px solid #cfcfcf !important;
    border-radius: 0 !important;

    box-shadow: none !important;
    outline: none !important;

    transition:
        border-color 0.2s ease,
        background-color 0.2s ease,
        color 0.2s ease;
}


/* ==========================================================================
   Hover
   ========================================================================== */

.fluentform .ff-el-form-control:hover,
.ff-default .ff-el-form-control:hover {
    background-color: transparent !important;
    border-color: #999 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}


/* ==========================================================================
   Focus
   ========================================================================== */

.fluentform .ff-el-form-control:focus,
.ff-default .ff-el-form-control:focus {
    background-color: transparent !important;
    border-color: var(--fs-color-primary) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
}


/* ==========================================================================
   Placeholder
   ========================================================================== */

.fluentform .ff-el-form-control::placeholder,
.ff-default .ff-el-form-control::placeholder {
    color: #999;
    opacity: 1;
}


/* ==========================================================================
   Label
   ========================================================================== */

.ff-default .ff-el-input--label label,
.fluentform .ff-el-input--label label {
    display: inline-block;
    margin: 0 0 6px;

    font-size: 12px;
    font-weight: 500;
    line-height: 1.35;
    color: #444;
}


/* ==========================================================================
   字段间距
   ========================================================================== */

.fluentform .ff-el-group {
    margin-bottom: 18px;
}


/* ==========================================================================
   Textarea
   ========================================================================== */

.fluentform textarea.ff-el-form-control,
.ff-default textarea.ff-el-form-control {
    height: auto !important;
    min-height: 130px !important;
    padding: 11px 14px;

    line-height: 1.6 !important;
    resize: vertical;

    background-color: transparent !important;

    border: 1px solid #cfcfcf !important;
    border-radius: 0 !important;

    box-shadow: none !important;
    outline: none !important;
}

.fluentform textarea.ff-el-form-control:hover,
.ff-default textarea.ff-el-form-control:hover {
    background-color: transparent !important;
    border-color: #999 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.fluentform textarea.ff-el-form-control:focus,
.ff-default textarea.ff-el-form-control:focus {
    background-color: transparent !important;
    border-color: var(--fs-color-primary) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
}


/* ==========================================================================
   Select 下拉框
   ========================================================================== */

.fluentform select.ff-el-form-control,
.ff-default select.ff-el-form-control {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;

    height: 44px !important;
    min-height: 44px !important;
    padding: 8px 38px 8px 14px !important;

    font-family: inherit !important;
    font-size: 14px;
    line-height: 26px !important;
    color: #444;

    cursor: pointer;

    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;

    background-color: transparent !important;
    background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9L12 15L18 9' stroke='%23777777' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 14px center !important;
    background-size: 14px 14px !important;

    border: 1px solid #cfcfcf !important;
    border-radius: 0 !important;

    box-shadow: none !important;
    outline: none !important;
}

.fluentform select.ff-el-form-control:hover,
.ff-default select.ff-el-form-control:hover {
    background-color: transparent !important;
    border-color: #999 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.fluentform select.ff-el-form-control:focus,
.ff-default select.ff-el-form-control:focus {
    background-color: transparent !important;
    border-color: var(--fs-color-primary) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
}


/* ==========================================================================
   电话号码字段
   ========================================================================== */

.fluentform .iti {
    width: 100%;
}

.fluentform .iti__selected-flag {
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.fluentform .iti input.ff-el-form-control {
    padding-left: 54px !important;
    border-radius: 0 !important;
}

.fluentform .iti__country-list {
    border-radius: 0 !important;
}


/* ==========================================================================
   错误状态
   ========================================================================== */

.fluentform .ff-el-is-error .ff-el-form-control,
.fluentform .ff-el-is-error select.ff-el-form-control,
.fluentform .ff-el-is-error textarea.ff-el-form-control {
    background-color: transparent !important;
    border-color: #d63638 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.fluentform .error,
.fluentform .text-danger {
    margin-top: 5px;

    font-size: 12px;
    line-height: 1.4;
    color: #d63638;
}


/* ==========================================================================
   Checkbox / Radio
   ========================================================================== */

.fluentform input[type="checkbox"],
.fluentform input[type="radio"] {
    border-radius: 0 !important;
    box-shadow: none !important;
}


/* ==========================================================================
   成功提示
   ========================================================================== */

.ff-message-success {
    position: relative;

    margin-top: 10px;
    padding: 16px 18px;

    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
    color: #467d78;

    background: transparent;

    border: 1px solid rgba(70, 125, 120, 0.35);
    border-radius: 0 !important;

    box-shadow: none !important;
}


/* ==========================================================================
   提交按钮
   ========================================================================== */

.ff-default .ff_btn_style,
.fluentform .ff-btn-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 44px;
    padding: 9px 24px;
    margin: 0;

    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
    text-align: center;

    cursor: pointer;
    user-select: none;
    white-space: nowrap;

    color: #fff !important;

    background: var(--fs-color-primary) !important;

    border: 1px solid var(--fs-color-primary) !important;
    border-radius: 0 !important;

    box-shadow: none !important;

    transition:
        opacity 0.2s ease,
        transform 0.2s ease,
        background-color 0.2s ease,
        border-color 0.2s ease;
}

.ff-default .ff_btn_style:hover,
.fluentform .ff-btn-submit:hover {
    opacity: 0.88;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.ff-default .ff_btn_style:active,
.fluentform .ff-btn-submit:active {
    transform: translateY(1px);
    border-radius: 0 !important;
}


/* ==========================================================================
   浏览器自动填充
   ========================================================================== */

.fluentform input.ff-el-form-control:-webkit-autofill,
.fluentform input.ff-el-form-control:-webkit-autofill:hover,
.fluentform input.ff-el-form-control:-webkit-autofill:focus {
    -webkit-text-fill-color: #444 !important;

    border: 1px solid var(--fs-color-primary) !important;
    border-radius: 0 !important;

    box-shadow: none !important;

    transition:
        background-color 9999s ease-out 0s;
}


/* ==========================================================================
   强制清除表单区域内残留圆角
   ========================================================================== */

.fluentform input,
.fluentform select,
.fluentform textarea,
.fluentform button,
.fluentform .ff-btn,
.fluentform .ff_btn_style,
.fluentform .ff-message-success,
.fluentform .iti__selected-flag {
    border-radius: 0 !important;
}


/* ==========================================================================
   去除阴影
   ========================================================================== */

.from-box-none .ff-el-form-control,
.fluentform .ff-el-form-control {
    box-shadow: none !important;
}



/* ==========================================================================
   Fluent Forms 国家选择器 / Choices.js
   透明背景、无圆角、主题色交互
   ========================================================================== */

/* Choices 外层 */
.fluentform .choices {
    position: relative;
    width: 100%;
    max-width: 100%;
    margin: 0;

    font-family: inherit;
    font-size: 14px;

    z-index: 1;
}

/* 下拉打开时提高层级 */
.fluentform .choices.is-open {
    z-index: 9999;
}


/* ==========================================================================
   默认显示框
   ========================================================================== */

.fluentform .choices__inner {
    display: flex;
    align-items: center;

    width: 100%;
    min-height: 44px !important;
    height: 44px !important;
    box-sizing: border-box;

    padding: 0 38px 0 14px !important;

    color: #444;

    background: transparent !important;
    background-color: transparent !important;

    border: 1px solid #cfcfcf !important;
    border-radius: 0 !important;

    box-shadow: none !important;

    font-family: inherit;
    font-size: 14px;
    line-height: 1.4;

    transition:
        border-color 0.2s ease,
        background-color 0.2s ease;
}


/* Hover */
.fluentform .choices:hover .choices__inner {
    background: transparent !important;
    border-color: #999 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}


/* Focus / 打开 */
.fluentform .choices.is-focused .choices__inner,
.fluentform .choices.is-open .choices__inner {
    background: transparent !important;

    border-color: var(--fs-color-primary) !important;
    border-radius: 0 !important;

    box-shadow: none !important;
    outline: none !important;
}


/* ==========================================================================
   当前已选择内容
   ========================================================================== */

.fluentform .choices__list--single {
    display: flex;
    align-items: center;

    width: 100%;
    height: 100%;

    padding: 0 !important;
}


.fluentform .choices__list--single .choices__item {
    display: block;

    width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;

    color: #444;

    font-size: 14px;
    line-height: 42px;

    text-overflow: ellipsis;
    white-space: nowrap;
}


/* 占位文字 */
.fluentform
.choices__list--single
.choices__placeholder {
    color: #999 !important;
    opacity: 1 !important;
}


/* 单选国家不显示删除按钮 */
.fluentform
.choices__list--single
.choices__button {
    display: none !important;
}


/* ==========================================================================
   下拉箭头
   ========================================================================== */

.fluentform
.choices[data-type*="select-one"]::after {
    content: "";

    position: absolute;
    right: 15px;
    top: 50%;

    width: 7px;
    height: 7px;

    margin: -5px 0 0;

    border: 0 !important;
    border-right: 1.5px solid #777 !important;
    border-bottom: 1.5px solid #777 !important;

    transform: rotate(45deg);

    pointer-events: none;

    transition:
        transform 0.2s ease,
        border-color 0.2s ease;
}


/* 打开时箭头向上 */
.fluentform
.choices[data-type*="select-one"].is-open::after {
    margin-top: -1px;

    border-color: var(--fs-color-primary) !important;

    transform: rotate(225deg);
}


/* ==========================================================================
   下拉列表
   ========================================================================== */

.fluentform .choices__list--dropdown {
    position: absolute;
    left: 0;
    top: calc(100% + 4px);
    z-index: 9999;

    width: 100%;
    max-height: 300px;

    margin: 0;
    padding: 0;

    overflow: hidden;

    background: #fff !important;

    border: 1px solid #cfcfcf !important;
    border-radius: 0 !important;

    box-shadow:
        0 14px 32px rgba(0, 0, 0, 0.12) !important;
}


/* 打开状态 */
.fluentform
.choices__list--dropdown.is-active {
    visibility: visible;
}


/* 国家列表滚动区域 */
.fluentform
.choices__list--dropdown
.choices__list[role="listbox"] {
    max-height: 280px !important;

    overflow-x: hidden !important;
    overflow-y: auto !important;

    scrollbar-width: thin;
    scrollbar-color:
        var(--fs-color-primary)
        #eeeeee;
}


/* Chrome / Edge 滚动条 */
.fluentform
.choices__list--dropdown
.choices__list[role="listbox"]::-webkit-scrollbar {
    width: 6px;
}


.fluentform
.choices__list--dropdown
.choices__list[role="listbox"]::-webkit-scrollbar-track {
    background: #eeeeee;
}


.fluentform
.choices__list--dropdown
.choices__list[role="listbox"]::-webkit-scrollbar-thumb {
    background: var(--fs-color-primary);
    border-radius: 0;
}


/* ==========================================================================
   搜索输入框
   ========================================================================== */

.fluentform
.choices__list--dropdown
.choices__input--cloned {
    display: block;

    width: calc(100% - 20px) !important;
    height: 40px !important;
    min-height: 40px !important;
    box-sizing: border-box;

    margin: 10px !important;
    padding: 7px 12px !important;

    color: #444;

    background: transparent !important;
    background-color: transparent !important;

    border: 1px solid #cfcfcf !important;
    border-radius: 0 !important;

    box-shadow: none !important;
    outline: none !important;

    font-family: inherit !important;
    font-size: 14px;
    line-height: 24px;
}


/* 搜索框聚焦 */
.fluentform
.choices__list--dropdown
.choices__input--cloned:focus {
    background: transparent !important;

    border-color: var(--fs-color-primary) !important;
    border-radius: 0 !important;

    box-shadow: none !important;
    outline: none !important;
}


/* ==========================================================================
   国家选项
   ========================================================================== */

.fluentform
.choices__list--dropdown
.choices__item--choice {
    position: relative;

    padding: 10px 14px !important;

    color: #444;

    background: #fff !important;

    border: 0 !important;
    border-radius: 0 !important;

    font-size: 14px;
    line-height: 1.4;

    cursor: pointer;

    transition:
        color 0.15s ease,
        background-color 0.15s ease;
}


/* Hover / 键盘高亮 */
.fluentform
.choices__list--dropdown
.choices__item--choice.is-highlighted {
    color: #fff !important;

    background:
        var(--fs-color-primary) !important;
}


/* 已选择项目 */
.fluentform
.choices__list--dropdown
.choices__item--choice.is-selected {
    color: var(--fs-color-primary) !important;

    background: #f3f3f3 !important;

    font-weight: 500;
}


/* 已选择并处于高亮状态 */
.fluentform
.choices__list--dropdown
.choices__item--choice.is-selected.is-highlighted {
    color: #fff !important;

    background:
        var(--fs-color-primary) !important;
}


/* 下拉列表中的占位选项 */
.fluentform
.choices__list--dropdown
.choices__placeholder {
    color: #999 !important;

    background: #fff !important;

    opacity: 1 !important;
}


/* ==========================================================================
   禁用状态
   ========================================================================== */

.fluentform .choices.is-disabled {
    opacity: 0.6;

    cursor: not-allowed;
}


.fluentform
.choices.is-disabled
.choices__inner {
    background: #f5f5f5 !important;

    cursor: not-allowed;
}


/* ==========================================================================
   隐藏原生 Select
   防止现有通用 CSS 将 hidden select 强制显示
   ========================================================================== */

.fluentform
.choices
select.choices__input[hidden],
.fluentform
.choices
select.ff-el-form-control[hidden] {
    display: none !important;
}


/* ==========================================================================
   错误状态
   ========================================================================== */

.fluentform
.ff-el-is-error
.choices__inner {
    border-color: #d63638 !important;
}


/* ==========================================================================
   手机端
   ========================================================================== */

@media (max-width: 549px) {

    .fluentform .choices__inner {
        min-height: 44px !important;
        height: 44px !important;
    }

    .fluentform
    .choices__list--dropdown
    .choices__item--choice {
        padding: 11px 13px !important;

        font-size: 13px;
    }

    .fluentform
    .choices__list--dropdown {
        max-height: 280px;
    }

    .fluentform
    .choices__list--dropdown
    .choices__list[role="listbox"] {
        max-height: 250px !important;
    }
}

/* ==========================================================================
   国家选择器文字垂直居中修复
   ========================================================================== */

body .fluentform .choices[data-type="select-one"] .choices__inner {
    display: flex !important;
    align-items: center !important;

    height: 44px !important;
    min-height: 44px !important;

    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

body .fluentform .choices[data-type="select-one"] .choices__list--single {
    display: flex !important;
    align-items: center !important;

    width: 100% !important;
    height: 42px !important;

    margin: 0 !important;
    padding: 0 !important;
}

body .fluentform .choices[data-type="select-one"]
.choices__list--single
.choices__item {
    display: flex !important;
    align-items: center !important;

    width: 100% !important;
    height: 42px !important;

    margin: 0 !important;
    padding: 0 !important;

    line-height: 1.2 !important;
}

/* 占位文字同样垂直居中 */
body .fluentform .choices[data-type="select-one"]
.choices__list--single
.choices__placeholder {
    display: flex !important;
    align-items: center !important;

    height: 42px !important;

    line-height: 1.2 !important;
}

/*====================翻译插件====================*/
.trp-shortcode-switcher {
   padding: 0;
}

.trp-language-item-name {
    font-family: 'Poppins';
        line-height: 2.2;
}


.trp-shortcode-switcher__wrapper {
    position: relative;
    border: none;
    margin-top: 9px;
}

.trp-shortcode-arrow{
    width: 12px;
    height: 12px;
}