.c-combo-box {
    position: relative;
    width: 220px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
    outline: none;
    align-items: center;
    height: 36px;
    line-height: 36px;
    /* 移除默认的焦点轮廓 */
}

.c-combo-box[dropdown-open] {
    z-index: 1000;
    overflow: visible;
}

/* 错误状态的外部样式 */
.c-combo-box.invalid {
    border-color: red;
}

/* 禁用状态的外部样式 */
.c-combo-box.disabled {
    opacity: 0.6;
    pointer-events: none;
}


.c-combo-box:focused {
    border-color: #1677ff !important;
}

.c-combo-box:hover {
    border-color: #4096ff !important;
}/* 微信环境下的「EXIF 会被剥离」提示条 */
.file-list-wechat-hint {
    /*display: flex;*/
    align-items: flex-start;
    gap: 6px;
    padding: 6px 10px;
    margin-bottom: 6px;
    background-color: #fffbe6;
    border: 1px solid #ffe58f;
    border-radius: 4px;
    color: #d48806;
    font-size: 12px;
    line-height: 1.5;
    text-align: left;
    display: none;
}

.file-list-wechat-hint i {
    font-size: 13px;
    margin-top: 2px;
    flex: 0 0 auto;
    text-align: left;
}

.file-list-wechat-hint span {
    flex: 1 1 auto;
    text-align: left;
}

.file-attachment-risk-badge {
    position: absolute;
    top: 2px;
    right: 2px;
    z-index: 2;
    font-size: 12px;
    line-height: 1;
    padding: 2px 4px;
    border-radius: 3px;
    cursor: help;
}

.file-item .file-attachment-risk-badge {
    position: static;
    margin-left: 6px;
}

.file-attachment-risk-warn {
    color: #d48806;
    background: #fffbe6;
}

.file-attachment-risk-unverifiable {
    color: #595959;
    background: #f5f5f5;
}

.image-list-container {
    display: flex;
    flex-wrap: wrap;
}

.image-list-container ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.image-list-container li {
    display: inline-block;
    /* 将 li 元素设置为行内块元素，支持换行 */
}

.image-list-container .image-container .image-preview {
    width: 100px;
    height: 100px;
    object-fit: cover;
    border-radius: 4px;
    display: block;
    cursor: pointer;
}

.image-list-container .image-container .video-preview {
    width: 100px;
    height: 100px;
    cursor: pointer;
    object-fit: cover;
    background-color: #000;
    border-radius: 4px;
}

.image-list-container .image-container .image-remove {
    color: red;
    position: absolute;
    top: -5px;
    right: 0px;
    cursor: pointer;
    font-size: 20px;
}

.image-list-container .add-image-btn {
    width: 100px;
    height: 100px;
    text-align: center;
    line-height: 100px;
    font-size: 50px;
    border: 1px solid #ddd;
    color: #ddd;
    cursor: pointer;
    box-sizing: border-box;
}

.image-list-container .add-image-btn:hover {
    border-color: #1677ff;
    color: #1677ff;
}



.file-list-container ul {
    list-style-type: none;
}

.file-list-container .file-items {
    /* color: blue; */
}

.file-list-container .file-item {
    padding: 2px;
    display: flex;
    align-items: center;
    margin-bottom: 5px;
}

.file-list-container .file-item .fas {
    font-size: 20px;
}

.file-list-container .file-items a {
    margin-left: 30px;
    padding: 5px;
    color: red;
    cursor: pointer;
}

.file-list-container .file-name {
    cursor: pointer;
    text-align: left;
    margin-left: 8px;
}

.file-list-container .file-item i {
    width: 20px;
    text-align: center;
    color: #666;
}

/* Office document type colors */
.file-list-container .file-item i.fa-file-word {
    color: #2b579a;
}

.file-list-container .file-item i.fa-file-excel {
    color: #217346;
}

.file-list-container .file-item i.fa-file-powerpoint {
    color: #d24726;
}

.file-list-container .file-item i.fa-file-pdf {
    color: #f40f02;
}

.file-list-container .add-file-btn {
    display: inline-block;
    padding: 10px 20px;
    background-color: #e5e5e5;
    color: white;
    border-radius: 5px;
    cursor: pointer;
}

/* Focus and validation styles */
c-file-list {
    outline: none;
}

c-file-list.focused .image-list-container,
c-file-list.focused .file-list-container {
    outline: 1px solid #1677ff !important;
    border-radius: 4px;
}

c-file-list:hover .image-list-container,
c-file-list:hover .file-list-container {
    outline: 1px solid #4096ff !important;
    border-radius: 4px;
}

c-file-list.invalid .image-list-container,
c-file-list.invalid .file-list-container {
    border: 2px solid #f44336;
    border-radius: 4px;
}

c-file-list.invalid .add-image-btn,
c-file-list.invalid .add-file-btn {
    border-color: #f44336;
    color: #f44336;
}

/* 强制覆盖全局disabled样式，保持正常外观 */
c-file-list[disabled] {
    opacity: 1 !important;
    cursor: default !important;
    background-color: transparent !important;
    border-color: initial !important;
    color: initial !important;
    /* 允许文件下载功能 */
    pointer-events: auto !important;
    user-select: auto !important;
}

/* 确保文件列表元素可以正常交互 */
c-file-list[disabled] .file-items,
c-file-list[disabled] .file-name,
c-file-list[disabled] .image-preview,
c-file-list[disabled] .file-icon-container {
    pointer-events: auto !important;
    cursor: pointer !important;
    opacity: 1 !important;
}

/* 只禁用上传和删除功能，但不改变外观 */
c-file-list[disabled] .add-file-btn,
c-file-list[disabled] .add-image-btn,
c-file-list[disabled] .image-remove,
c-file-list[disabled] .file-items a {
    pointer-events: none !important;
}
