



/* PNG را روی لینک لوگو بگذار */
.title_left a {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 40px;
   
}

    .title_left a::before {
        content: "";
        position: absolute;
        left: -60px; /* یا right: 10px در RTL */
        top: 50%;
        transform: translateY(-50%);
        width: 200px; /* عرض نمایش لوگو */
        height: 32px; /* ارتفاع نمایش لوگو */
        background: url('asset-models\assets\imagesmy-logo.png') no-repeat center / contain;
    }

.logo_image {
    width: 300px;
    left: -60px;
}
/* آیکون PNG لودینگ را بچرخان */
.ov_progress .ov_progress_img {
    animation: myspin 1.2s linear infinite;
    transform-origin: 50% 50%;
    will-change: transform;
}

/* انیمیشن چرخش */
@keyframes myspin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* احترام به کاهش حرکت سیستم کاربر */
@media (prefers-reduced-motion: reduce) {
    .ov_progress .ov_progress_img {
        animation: none;
    }
}


/* 1) SVG پیش‌فرض لودینگ رو قفل کن */
.ov_progress .ov_progress_img svg {
    display: none !important;
    animation: none !important;
}

/* فقط وقتی حالت‌های سفارشی ما فعّالند اثر کن */
body.my-info-open #main_sidebar {
    width: 520px !important;
}

body.my-info-open #main_sidebar_splitter {
    display: block !important;
}

body.my-info-open #main_sidebar .ov_panel_set_content {
    display: block !important;
}

body.my-info-collapsed #main_sidebar {
    width: 38px !important;
}
/* پهنای ریل آیکن‌ها */
body.my-info-collapsed #main_sidebar_splitter {
    display: none !important;
}

body.my-info-collapsed #main_sidebar .ov_panel_set_content {
    display: none !important;
}

/* وقتی سفارشی هستیم، مطمئن شو ستون راست hide نشه */
body.my-info-open #main_right_container,
body.my-info-collapsed #main_right_container {
    display: block !important;
}

/* منو (آیکن‌ها) همیشه دیده شود */
#main_sidebar .ov_panel_set_menu {
    display: block !important;
}

/* هایلایت دکمه‌ی Info */
#my_tab_btn.selected {
    background: var(--ov_toolbar_selected_color);
    border-radius: 6px;
}




/* 2) PNG خودت رو جایگزین کن */
.ov_progress .ov_progress_img {
    width: 40px; /* با سایز دلخواهت تنظیم کن */
    height: 40px;
    margin: 5px auto 15px; /* مثل پیش‌فرض O3DV center بشه */
    background-image: url('assets/images/my-loading.png'); /* مسیر هم‌اورجین */
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}


/* حذف دکمه‌های Open در نوار ابزار بالا */
#toolbar .ov_toolbar_button:has(.icon-open),
#toolbar .ov_toolbar_button:has(.icon-open_url) {
    display: none !important;
}

/* حذف دکمه‌های Open در بخش دکمه‌های هدر */
#header_buttons .header_button:has(.icon-open),
#header_buttons .header_button:has(.icon-open_url) {
    display: none !important;
}

/* حذف گزینه‌های Open در پاپاپ‌های منو (اگر وجود داشته باشد) */
.ov_popup .ov_popup_list_item:has(.icon-open),
.ov_popup .ov_popup_list_item:has(.icon-open_url) {
    display: none !important;
}

/* حذف هر «پنل‌باتن» مرتبط با Open در سایدبار/پنل‌ها */
.ov_panel_button:has(.icon-open),
.ov_panel_button:has(.icon-open_url) {
    display: none !important;
}





<style >
/* استایل پایه برای جدول Info */
.my-info-grid {
    border-collapse: collapse;
    width: 100%;
    table-layout: fixed;
}

.my-info-grid th,
.my-info-grid td {
    border: 1px solid var(--ov_border_color);
    padding: 6px 8px;
    word-break: break-word;
    vertical-align: middle;
}

.my-info-grid th {
    background: var(--ov_toolbar_background_color);
    font-weight: 700;
    text-align: center;
}

/* کنترل‌پنل ادمین زیر پنل Info */
.info-admin-panel {
    margin-top: 10px;
    border-top: 1px dashed var(--ov_border_color);
    padding-top: 10px;
}

.info-admin-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 8px;
}

    .info-admin-toolbar .btn {
        cursor: pointer;
        border: 1px solid var(--ov_border_color);
        border-radius: 5px;
        padding: 4px 8px;
        background: var(--ov_dialog_background_color);
    }

        .info-admin-toolbar .btn:hover {
            background: var(--ov_outline_button_hover_color);
        }

.info-admin-grid {
    border: 1px solid var(--ov_border_color);
    padding: 6px;
    overflow-x: auto;
    background: var(--ov_dialog_background_color);
}

    .info-admin-grid table {
        border-collapse: collapse;
        min-width: 100%;
    }

    .info-admin-grid td,
    .info-admin-grid th {
        border: 1px dashed var(--ov_border_color);
        padding: 4px;
    }

        .info-admin-grid td.selected-cell,
        .info-admin-grid th.selected-cell {
            outline: 2px solid var(--ov_selected_icon_color);
            outline-offset: -2px;
        }

.info-admin-row {
    display: flex;
    gap: 8px;
    margin-bottom: 8px;
    align-items: center;
}

    .info-admin-row label {
        min-width: 80px;
    }

    .info-admin-row input[type="text"],
    .info-admin-row input[type="number"],
    .info-admin-row select {
        border: 1px solid var(--ov_border_color);
        border-radius: 5px;
        padding: 4px 6px;
        width: 100%;
        max-width: 180px;
        background: var(--ov_dialog_background_color);
        color: var(--ov_dialog_foreground_color);
    }

/* کادر نمایش خطای ولیدیشن ساده */
.info-admin-error {
    color: #b00020;
    margin: 6px 0;
}

</style >
/* ==== Info Table Editor (Admin) ==== */
.my-info-grid {
    border-collapse: collapse;
    table-layout: fixed;
    width: 100%;
    --grid-border-color: #c7c7c7;
    --grid-border-width: 1px;
}

.my-info-grid.with-borders th,
.my-info-grid.with-borders td {
    border: var(--grid-border-width) solid var(--grid-border-color);
}

.my-info-grid th, .my-info-grid td {
    padding: 6px 8px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* انتخاب سلول */
.my-cell-selected {
    outline: 2px solid #3393bd;
    outline-offset: -2px;
}

/* نوار ابزار ادمین */
#info_editor_toolbar {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(12, 1fr);
    align-items: center;
    margin-bottom: 10px;
}

    #info_editor_toolbar .grp {
        grid-column: span 12;
        display: flex;
        gap: 8px;
        flex-wrap: wrap;
    }

    #info_editor_toolbar label {
        font-size: 12px;
        color: var(--ov_light_icon_color);
    }

    #info_editor_toolbar input[type="text"],
    #info_editor_toolbar input[type="number"],
    #info_editor_toolbar select {
        width: 90px;
        padding: 3px 6px;
        border: 1px solid var(--ov_border_color);
        border-radius: 4px;
        background: var(--ov_dialog_background_color);
        color: var(--ov_dialog_foreground_color);
    }

    #info_editor_toolbar input[type="color"] {
        width: 36px;
        height: 24px;
        padding: 0;
        border: 0;
    }

    /* دکمه‌ها */
    #info_editor_toolbar .btn {
        padding: 6px 10px;
        border-radius: 6px;
        cursor: pointer;
        border: 1px solid var(--ov_outline_button_color);
        background: var(--ov_outline_button_hover_color);
    }

        #info_editor_toolbar .btn.primary {
            background: var(--ov_button_color);
            color: #fff;
            border-color: var(--ov_button_color);
        }

        <style>
/* فقط تیتر داخلی ما در تب Info پنهان شود */
#my_tab_panel #myInfoPanel .my-info-title { display: none !important; }
</style>


/* اگر نمی‌خوای چیزی بچرخه، همین کافیه.
   اگر می‌خوای PNG بچرخه، این رو اضافه کن: */

/*
.ov_progress .ov_progress_img {
  animation: myspin 1.2s linear infinite;
}
@keyframes myspin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}
*/
