/**
 * ГЛОБАЛЬНЫЙ СТИЛИСТИЧЕСКИЙ МОДУЛЬ ДОПОЛНЕНИЙ И РАСШИРЕНИЙ ИНТЕРФЕЙСА
 * Слой: Поведение, геометрия, сетки (Layout & Behavior)
 * Очищен от всех неиспользуемых классов.
 * css/add-on.css (Часть 1)
 */

/* =========================================================================
   1. ЛИНЕЙНЫЕ ИКОНКИ ДЕЙСТВИЙ В СТРОКАХ ТАБЛИЦ (ГЕОМЕТРИЯ И ИНТЕРАКТИВ)
   ========================================================================= */
a.btnView, a.btnEdit, a.btnDelete { 
    display: inline-block !important; 
    width: 16px; 
    height: 16px; 
    vertical-align: middle !important; 
    background-repeat: no-repeat;
    background-position: center;
    transition: opacity 0.15s ease-in-out;
    margin-right: 6px !important; 
    cursor: pointer !important;
}

a.btnDelete { 
    margin-right: 0 !important; 
}

/* Восстановление ячеек строго для стандартных HTML-таблиц (table) */
table.pbx-form-table tr td:last-child,
table:not(.table) tr td:last-child {
    display: table-cell !important; 
    text-align: right !important;    
    padding-right: 12px !important;  
    vertical-align: middle !important;
    white-space: nowrap !important;
}

table.pbx-form-table th:last-child,
table:not(.table) tr th:last-child {
    text-align: right !important;
    padding-right: 12px !important;
}

/* =========================================================================
   2. МОНОЛИТНАЯ ФЛЕКС-ПАНЕЛЬ УПРАВЛЕНИЯ (ФИЛЬТРЫ И ДЕЙСТВИЯ)
   ========================================================================= */
.action-bar-container {
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
    gap: 10px; 
    width: 100%; 
    margin-bottom: 15px;
    box-sizing: border-box;
}

.action-bar-left, .action-bar-right {
    display: flex;
    align-items: center;
}

.action-bar-left { gap: 15px; }
.action-bar-right { gap: 8px; }

/* =========================================================================
   3. СТРОГАЯ ГЕОМЕТРИЯ И ЭРГОНОМИКА ФОРМЫ РЕДАКТИРОВАНИЯ АБОНЕНТА АТС
   ========================================================================= */
fieldset.box.pbx-form-fieldset {
    padding: 8px 12px 12px 12px !important; 
    margin: 0 auto !important; 
    border-radius: 4px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
}

fieldset.box.pbx-form-fieldset .pbx-form-table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse !important; 
    font-family: Tahoma, Arial, sans-serif !important; 
    font-size: 12px !important; 
    margin-top: 2px !important;
    box-sizing: border-box !important;
}

.pbx-form-table td {
    padding: 2px 0 !important;
    vertical-align: middle !important;
    text-align: left !important;
}

.pbx-form-fieldset legend {
    text-align: left !important;
    font-size: 12px !important;
    font-family: Tahoma, Arial, sans-serif !important;
    padding: 0 4px !important;
    margin: 0 !important;
}

.pbx-form-table label {
    position: static !important; 
    padding: 0 !important; 
    font-family: Tahoma, Arial, sans-serif !important; 
    font-size: 12px !important;
    display: inline-block !important;
    vertical-align: middle !important;
    margin-bottom: 2px;
}

.pbx-form-hr {
    border: none !important; 
    margin: 0 !important;
    width: 100% !important;
}

.pbx-form-table input.bootstrap {
    height: 22px !important; 
    padding: 2px 4px !important; 
    box-sizing: border-box !important;
    font-size: 12px !important;
}

.pbx-addons-panel {
    border-radius: 4px !important; 
    padding: 4px 8px !important; 
    box-sizing: border-box !important;
}

.pbx-form-table code,
.pbx-cid-code {
    padding: 0 !important;
    border-radius: 0 !important;
    font-family: monospace !important;
    font-size: 13px !important;
    display: inline !important;
}

/* === EXTEN SOFTPHONE STALE (ГЕОМЕТРИЯ ПЕРЕЧЕРКИВАНИЯ) === */
.pbx-stale-phone-wrapper {
    position: relative !important;
    display: inline-block !important;
}

.pbx-stale-phone-wrapper::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 10% !important;
    width: 80% !important;
    height: 2px !important;
    transform: rotate(-35deg) !important;
    pointer-events: none !important;
}
/**
 * css/add-on.css (Часть 2)
 */

/* =========================================================================
   4. СЛУЖЕБНЫЕ КЛАССЫ ОГРАНИЧЕНИЯ ШИРИНЫ И СВОЙСТВ ШРИФТОВ
   ========================================================================= */
.w-short  { width: 60px !important; min-width: 60px !important; }
.w-medium { width: 140px !important; min-width: 140px !important; }

/* =========================================================================
   5. ГЕОМЕТРИЯ ДИНАМИЧЕСКОГО ПОДВАЛА МОДАЛЬНОГО ОКНА TINGLE.JS
   ========================================================================= */
.tingle-modal-box__footer {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 8px 15px !important;
}

.tingle-modal-box__footer .bootstrap + .bootstrap {
    margin-left: 10px !important;
}

.tingle-modal-box__footer-buttons {
    display: flex !important;
    gap: 10px !important;
    margin-left: auto !important;
}

#qrprov {
    display: flex !important;
    align-items: center !important;
}

.hidden, .pbx-hidden { display: none !important; }

/* =========================================================================
   6. СПЕЦИФИЧЕСКИЙ КОНТУР МОДУЛЯ ГРУПП ВЫЗОВОВ
   ========================================================================= */
.sortable-item.drag-over {
    transition: transform 0.15s ease;
}

.sortable-item.member-disabled {
    text-decoration: line-through !important;
}

.group-meta-form-table .tr { display: table-row !important; }
.group-meta-form-table .td { padding: 1px 0 !important; vertical-align: middle !important; }
.group-meta-form-table select.bootstrap,
.group-meta-form-table input.bootstrap { margin: 1px 0 !important; }

.group-meta-form-table .td.gstep input.bootstrap,
.group-meta-form-table .td.gnext input.bootstrap {
    width: 55px !important;
    min-width: 55px !important;
    max-width: 55px !important;
    display: inline-block !important;
    text-align: center !important;
    padding: 4px 0 !important;
}

/* =========================================================================
   7. СПЕЦИФИЧЕСКИЙ КОНТУР МОДУЛЯ IVR И ВХОДЯЩЕЙ МАРШРУТИЗАЦИИ
   ========================================================================= */
.tingle-modal { z-index: 2000 !important; }
.edit-mode-only { margin-top: 8px; }
.virt-form-fieldset { padding: 5px 12px !important; }

/* =========================================================================
   8. УНИФИКАЦИЯ ВЫСОТЫ ЭЛЕМЕНТОВ, ЧЕКБОКСОВ И УПЛОТНЕНИЕ СТРОК
   ========================================================================= */
.pbx-form-fieldset input[type="text"],
.pbx-form-fieldset input[type="password"],
.pbx-form-fieldset input[type="number"],
.pbx-form-fieldset input.bootstrap {
    height: 26px !important;
    line-height: 26px !important;
    box-sizing: border-box !important;
    font-family: Tahoma, Arial, sans-serif !important;
    font-size: 12px !important;
    padding: 0 6px !important;
    vertical-align: middle !important;
    margin: 0 !important;
}

.pbx-form-fieldset select {
    height: 26px !important;
    box-sizing: border-box !important;
    font-family: Tahoma, Arial, sans-serif !important;
    font-size: 12px !important;
    vertical-align: middle !important;
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 6px !important;
    padding-right: 20px !important;
    line-height: normal !important; 
}

.pbx-form-fieldset input[type="checkbox"] {
    width: 14px !important;
    height: 14px !important;
    padding: 0 !important;
    margin: 0 4px 0 0 !important;
    vertical-align: middle !important;
    position: relative;
    top: -1px;
}

.pbx-form-fieldset label {
    font-family: Tahoma, Arial, sans-serif !important;
    font-size: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    vertical-align: middle !important;
    margin-right: 14px !important;
}

.pbx-form-table b, 
.pbx-form-table strong {
    margin-right: 10px !important;
    display: inline-block !important;
    vertical-align: middle !important;
}


/* ЕДИНАЯ СТИЛИСТИКА ЛЕЙБЛОВ */
.pbx-form-label, .pbx-form-label-bold, .pbx-form-label-checkbox {
    display: inline-block;
    position: static !important;
    padding: 0 !important;
    margin: 0;
    font-family: Tahoma, Arial, sans-serif;
    font-size: 12px;
    line-height: normal;
    text-align: left;
}

.pbx-form-label-checkbox {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

.pbx-player-btn { 
    margin-right: 5px; 
    text-decoration: none; 
    display: inline-block; 
    font-size: 16px; 
}

/* КАРКАСЫ АВАРИЙНЫХ СБОЕВ И ИЗОЛЯЦИИ КОНТЕНТА */
.pbx-fatal-error-container {
    width: 100%;
    margin-top: 20px;
    border-radius: 4px;
    padding: 20px;
    box-sizing: border-box;
    display: block;
}

.pbx-fatal-error-title {
    font-family: Tahoma, Arial, sans-serif;
    margin-top: 0;
}

.pbx-fatal-error-descr {
    font-size: 13px;
    line-height: 1.5;
    font-family: -apple-system, BlinkMacSystemFont, sans-serif;
}

.pbx-fatal-error-log {
    margin-top: 15px;
    padding: 10px;
    font-family: monospace;
    font-size: 12px;
    border-radius: 4px;
    overflow-x: auto;
}

.pbx-module-error-container {
    padding: 15px;
    border-radius: 4px;
    margin-top: 15px;
    font-family: -apple-system, BlinkMacSystemFont, sans-serif;
}

.pbx-module-error-title {
    font-weight: bold;
}

.pbx-module-error-descr {
    font-size: 13px;
    margin: 5px 0 0 0;
}

.virt-status-on, .ivr-status-on {
    display: inline-block !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
    font-size: 11px !important;
    line-height: normal !important;
    vertical-align: middle !important;
    margin: 0 !important;
}

/* =========================================================================
   ФИКС ГЕОМЕТРИИ КАРТОЧКИ: АОН И ТОЛЩИНА ШРИФТОВ ЧЕКБОКСОВ
   ========================================================================= */

/* 1. Исправление наложения АОН на Подразделение: распределяем ширину по сетке */
.pbx-form-table {
    table-layout: fixed !important; /* Гарантирует строгое соблюдение ширины колонок */
    width: 100% !important;
}

/* Назначаем комбобоксам АОН и Подразделения автоматический расчет внутри ячеек */
.pbx-form-table select {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* 2. Ослабляем толщину шрифта для чекбоксов опций DVO, убирая жирный контур */
.pbx-form-fieldset label,
.pbx-form-table label,
.pbx-form-label-checkbox {
    font-weight: 500 !important; /* Возвращаем аккуратный стандартный шрифт */
    font-family: Tahoma, Arial, sans-serif !important;
    font-size: 12px !important;
}
