﻿.cc-card {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
    border-radius: var(--radius-lg);
    background-color: var(--color-blueGray-50);
    padding-inline: calc(var(--spacing) * 8);
    padding-block: calc(var(--spacing) * 6);
}

.cc-img-wrap {
    position: relative;
    display: inline-block;
}

.cc-img-btn {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 20px;
    height: 20px;
    background-color: rgba(0, 0, 0, 0.7);
    border-radius: 50%;
    color: white;
    text-align: center;
    line-height: 20px;
    cursor: pointer;
    font-size: 12px;
    z-index: 10;
}

    .cc-img-btn:hover {
        background-color: rgba(0, 0, 0, 0.9);
    }

div.cc-file-wrap {
    display: inline-flex;
    align-items: stretch;    
}

    div.cc-file-wrap > div {
        display: flex;
        align-items: center;
        padding: 6px 10px;
    }

    div.cc-file-wrap > div:first-child {
        flex: 0 0 300px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        background-color: #F5F8F5;      
    }

    div.cc-file-wrap > div:last-child {
        flex: 1;
        white-space: nowrap;
        background-color: #F5F8F5;        
    }

.cc-type-box {
    width: 100%;
    display: inline-block;    
    text-align: center;
    cursor: pointer;
    margin-bottom: 15px;
}

    .cc-type-box > .icon {
        width: 100%;
        aspect-ratio: 1;
        border: 1px solid #ddd;
        border-radius: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #999;
        font-size: 80px;
    }

        .cc-type-box > .icon > img {
            width: 100%;
            aspect-ratio: 1;
        }

    .cc-type-box > .title {
        margin-top: 8px;
        font-size: 14px;
        color: #666;
        width:100%;
    }

    .cc-type-box > .spec {
        font-size:11px;
        color: #666;
        width: 100%;
    }

    .cc-type-box > .icon.selected {
        box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);        
    }

.cc-img-upload {
    width: 100%;
    min-width:160px !important;
    padding: 10px;    
}

.cc-img-upload.top {
    padding: 0 10px;
}

    .cc-img-upload .title {
        margin: 0 0 12px 0; 
        padding: 8px 0;        
    }

    .cc-img-upload.top .title {
        padding: 0;
        margin-bottom: 5px;
    }

    .cc-img-upload .icon {
        width: 100%;        
        aspect-ratio: 1;
        border: 1px solid #ccc;
        border-radius: 8px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #ccc;
        font-size: 3rem;
        cursor: pointer;
    }

        .cc-img-upload .icon:hover {
            color: #999;
            border-color: #999;
        }

    .cc-img-upload .img-box {
        width: 100%;        
        aspect-ratio: 1;
        display: flex;
        flex-direction: column;
        overflow: hidden;
    }

        .cc-img-upload .img-box > .img-area {
            flex: 1;
            background-color: #f0f0f0;
            overflow: hidden;
        }

            .cc-img-upload .img-box > .img-area > img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                border-radius: 8px;
            }

        .cc-img-upload .img-box > .button-area {
            height: 50px; 
            display: flex;
            align-items: center;            
        }

            .cc-img-upload .img-box > .button-area > .left {
                margin-right: auto; 
                padding: 0;                
            }

            .cc-img-upload .img-box > .button-area > .right {
                display: flex;
            }

    .cc-img-upload .img-simple-box {
        position: relative;
        width: 100%;
        aspect-ratio: 1;
        overflow: hidden;
    }

        .cc-img-upload .img-simple-box > img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            border-radius: 8px;
        }

        .cc-img-upload .img-simple-box > .overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.5);
            opacity: 0;
            transition: opacity 0.3s ease;
            display: flex;
            justify-content: center;
            align-items: center;
            border-radius: 8px;
        }

            .cc-img-upload .img-simple-box > .overlay > button {
                background: #fff;
                border: none;
                width: 40px;
                height: 40px;
                border-radius: 50%;
                font-size: 24px;
                color: #333;
                cursor: pointer;
                transition: transform 0.2s ease;
            }

            .cc-img-upload .img-simple-box > .overlay > button:hover {
                transform: scale(1.1);
            }

        .cc-img-upload .img-simple-box:hover .overlay {
            opacity: 1;
        }

    .cc-img-upload .alert {
        font-size: 0.8rem;
        color: #999;
        margin-top:10px;
    }

    .cc-img-upload.top .alert {
        line-height:16px;
    }

.cc-uploader .el-upload {
    width: 100%;
}

.cc-layout-icon {
    display: inline-block;
    width: 80px;
    height: 80px;
    vertical-align: middle;
    fill: currentColor;
}

.cc-form-area {
    position: relative;
}

    .cc-form-area > .overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0,0.5);
        opacity: 0;
        transition: opacity 0.3s ease;
        z-index: 10;
    }

    .cc-form-area > .btn-group {
        position: absolute;
        top: 5px;
        right: 5px;
        display: flex;
        gap: 8px;
        opacity: 0;
        transition: opacity 0.3s ease;        
        z-index: 11;
    }

    .cc-form-area:hover .overlay,
    .cc-form-area:hover .btn-group {
        opacity: 1;
    }

    .cc-form-area .block {
        width: 100%;
        height: 50px;
        line-height:50px;
        border: none;
        background-color: #93A3B8;        
        padding: 0 10px;
        color: white;
        box-sizing: border-box;
    }

.cc-disabled-row {
    opacity: 0.6;     
    cursor: not-allowed; 
    background-color: #f0f0f5; 
}

.mb-0 {
    margin-bottom: 0 !important;
}

.mt-0 {
    margin-top: 0 !important;
}

.mt--5 {
    margin-top: -5px;
}

.mt--10 {
    margin-top: -10px;
}

.mt--20 {
    margin-top: -20px;
}

.el-row-full {
    width: 100%;
    display: flex;
}

.trans {
    display:contents !important;
}
