﻿.cmf-modal-content {
    background-color: #f2f2f2 !important;
    border: none;
    border-radius: var(--radius-lg, 18px);
    font-family: 'Vazirmatn', sans-serif;
    direction: rtl;
    box-shadow: var(--shadow-lg);
}

.cmf-modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid var(--border, #E4E9F0);
    color: var(--navy-800, #0D1B2A);
    font-size: 15px;
    font-weight: 700;
}

.cmf-notice {
    background: var(--amber-050, #FDF3E4);
    border: 1px solid #F1DDB4;
    border-radius: var(--radius-sm, 8px);
    padding: 10px 12px;
    margin-bottom: 16px;
    color: #ad5508;
    font-size: 14.5px;
    font-weight: 600;
    line-height: 1.8;
}

.cmf-label {
    color: var(--muted, #647087);
    font-size: 12.5px;
    font-weight: 600;
    display: block;
    margin-bottom: 6px;
}

.cmf-input, .cmf-form select, .cmf-form textarea {
    width: 100%;
    background: #dce4f5;
    color: var(--ink, #16202C);
    border: 1px solid var(--border, #E4E9F0);
    border-radius: var(--radius-sm, 8px);
    padding: 10px 12px;
    font-size: 13.5px;
    margin-bottom: 14px;
    font-family: inherit;
}

    .cmf-input:focus, .cmf-form select:focus, .cmf-form textarea:focus {
        outline: none;
        border-color: var(--amber-400, #E2932C);
        background: #fff;
    }

.cmf-source-list, .cmf-drop-zone {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    border-radius: var(--radius-sm, 8px);
    padding: 10px;
    margin-bottom: 14px;
    min-height: 44px;
}

.cmf-source-list {
    background: #fff;
    border: 1.5px dashed #C9D6E6;
}

.cmf-drop-zone {
    background: #fff;
    border: 1.5px solid #E4E9F0;
}

.cmf-chip {
    cursor: grab;
    background: #fff;
    color: var(--ink, #16202C);
    border: 1px solid var(--border, #E4E9F0);
    border-radius: 20px;
    padding: 6px 12px;
    font-size: 12px;
    transition: border-color .15s ease, color .15s ease, transform .15s ease, box-shadow .15s ease;
}

    .cmf-chip:hover {
        border-color: var(--amber-400, #E2932C);
        color: #C8811A;
        transform: translateY(-1px);
        box-shadow: 0 4px 10px -4px rgba(226,147,44,.4);
    }

.cmf-chip-selected {
    background: linear-gradient(135deg, var(--amber-400, #E2932C), var(--amber-500, #C8811A));
    color: #fff;
    border: none;
    border-radius: 20px;
    padding: 7px 12px;
    font-size: 12.5px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 7px;
    box-shadow: 0 4px 10px -3px rgba(200,129,26,.5);
}

    .cmf-chip-selected i {
        cursor: pointer;
        opacity: .85;
    }

        .cmf-chip-selected i:hover {
            opacity: 1;
        }

.cmf-empty-hint {
    color: #9AA6B5;
    font-size: 12px;
}

.cmf-error {
    color: var(--danger, #D64545);
    font-size: 11.5px;
    margin: -8px 0 12px;
}

.cmf-btn-primary {
    width: 100%;
    background: linear-gradient(135deg, var(--amber-400, #E2932C), var(--amber-500, #C8811A));
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    padding: 12px;
    border: none;
    border-radius: var(--radius-md, 12px);
    cursor: pointer;
    box-shadow: 0 8px 18px -6px rgba(200,129,26,.45);
    transition: transform .15s ease, box-shadow .15s ease;
}

    .cmf-btn-primary:hover {
        transform: translateY(-2px);
        box-shadow: 0 14px 28px -8px rgba(200,129,26,.65);
    }

.cmf-btn-outline {
    background: #fff;
    color: var(--navy-800, #0D1B2A);
    border: 1.5px solid var(--navy-800, #0D1B2A);
    border-radius: var(--radius-md, 12px);
    padding: 11px;
    cursor: pointer;
    transition: background .15s ease, color .15s ease;
}

    .cmf-btn-outline:hover {
        background: var(--navy-800, #0D1B2A);
        color: #fff;
    }

.cmf-guest-icon {
    font-size: 30px;
    color: var(--amber-500, #C8811A);
}

.cmf-guest-text {
    color: var(--ink, #16202C);
    font-size: 14px;
    margin: 14px 0 4px;
    line-height: 1.8;
}

.cmf-guest-sub {
    color: var(--muted, #647087);
    font-size: 12px;
    margin: 0 0 18px;
}

#cmfModal .modal-dialog {
    max-width: min(65%, 900px);
    width: 65%;
}

@media (max-width: 768px) {
    #cmfModal .modal-dialog {
        max-width: 85%;
        width: 85%;
        margin: 1.75rem auto;
    }
}

.cmf-source-list {
    max-height: 140px;
    overflow-y: auto;
    align-content: flex-start;
    background:
        linear-gradient(#fff 30%, rgba(255,255,255,0)) center top,
        linear-gradient(rgba(255,255,255,0), #fff 70%) center bottom,
        radial-gradient(farthest-side at 50% 0, rgba(13,27,42,.15), rgba(13,27,42,0)) center top,
        radial-gradient(farthest-side at 50% 100%, rgba(13,27,42,.15), rgba(13,27,42,0)) center bottom;
    background-repeat: no-repeat;
    background-color: #fff;
    background-size: 100% 40px, 100% 40px, 100% 12px, 100% 12px;
    background-attachment: local, local, scroll, scroll;
}

    /* اسکرول‌بار نازک و هماهنگ با پالت، برای مرورگرهای وبکیت */
    .cmf-source-list::-webkit-scrollbar {
        width: 6px;
    }

    .cmf-source-list::-webkit-scrollbar-track {
        background: transparent;
    }

    .cmf-source-list::-webkit-scrollbar-thumb {
        background: #C9D6E6;
        border-radius: 10px;
    }

        .cmf-source-list::-webkit-scrollbar-thumb:hover {
            background: #E2932C;
        }

/* فایرفاکس */
.cmf-source-list {
    scrollbar-width: thin;
    scrollbar-color: #C9D6E6 transparent;
}