/**
 * ЭТАЛОННЫЙ КАРКАСНЫЙ ФАЙЛ СТИЛЕЙ БАЗОВОЙ ТЕМЫ (ПО УМОЛЧАНИЮ)
 * Полная поддержка левой вертикальной навигации на ширину 960px
 * Включает все цветовые схемы, фоны, границы и шрифтовую индикацию.
 * themes/default/default.css (Часть 1)
 */

/* =========================================================================
   1. ОБЩИЙ КАРКАС И ГРАФИЧЕСКИЕ ТЕНИ (МОНОЛИТ 960px)
   ========================================================================= */
.main-monolith-table {
    height: 100%; 
    border-collapse: collapse;
}

.left-shadow-cell { 
    background: url('../../images/shadowleft-bg.gif') repeat-y left top; 
    width: 4px; 
    padding: 0; 
}
.right-shadow-cell { 
    background: url('../../images/shadowright-bg.gif') repeat-y right top; 
    width: 4px; 
    padding: 0; 
}
.top-shadow-cell { 
    background: url('../../images/shadowtop-bg.gif') repeat-x center bottom; 
    height: 6px; 
    line-height: 6px; 
    padding: 0; 
}
.bottom-shadow-cell { 
    background: url('../../images/shadowbottom-bg.gif') repeat-x center top; 
    height: 6px; 
    line-height: 6px; 
    padding: 0; 
}

.crm-inner-box {
    width: 960px;
    margin: 0 auto;
    text-align: left;
}

.bottom-shadow-cell img {
    width: 100% !important;
}

.main-content-core-cell {
    background-color: #ffffff;
    padding: 0px 10px 20px 10px;
}

.crm-banner-container {
    width: 100%;
    padding: 18px 5px 12px 5px; /* Идеальные вертикальные поля */
    background-color: #ffffff;
    border-bottom: 1px solid #e5e7eb;
    box-sizing: border-box;
}

/* Флекс-строка для аккуратного разнесения логотипа и слогана */
.crm-banner-header-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.crm-banner-logo {
    display: flex;
    align-items: center;
}

/* Точные оригинальные цвета бренда с официального сайта */
.crm-logo-img .st-logo0 {
    fill: #1b65a5 !important; /* Официальный синий PAC GROUP */
}

.crm-logo-img .st-logo1 {
    fill: #f89c1e !important; /* Официальный оранжевый PAC GROUP */
}

/* Ограничение пропорций SVG-матрицы, чтобы верстка не скакала */
.crm-logo-img {
    height: 54px; /* Оптимальная высота под пропорции viewBox */
    width: auto;
    display: block;
}

/* Корпоративный подзаголовок системы */
.crm-banner-sub {
    font-size: 11px;
    color: #718096;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 600;
    text-align: right;
}

/* =========================================================================
   3. ГЛАВНОЕ ГОРИЗОНТАЛЬНОЕ МЕНЮ ПЕРВОГО УРОВНЯ (ФЛЕКСЫ)
   ========================================================================= */
.sys-menu-wrapper {
    display: flex;
    width: 100%;
    background-color: #ffffff;
    border-bottom: 1px solid #dee2e6;
    margin-bottom: 10px;
    padding-top: 5px;
}

.sys-menu-link {
    display: block;
    padding: 10px 20px;
    font-family: Tahoma, Arial, sans-serif;
    font-size: 13px;
    text-decoration: none;
    color: #4a5568;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px; 
    transition: all 0.15s ease-in-out;
}

.sys-menu-link.menu:hover {
    color: #1a202c;
    background-color: #f8f9fa;
    border-bottom-color: #cbd5e0;
}

.sys-menu-link.menu-act {
    color: #1a202c;
    font-weight: bold;
    background-color: #edf2f7;
    border-bottom: 2px solid #4a5568;
}

/* =========================================================================
   4. СТРОГАЯ ВЕРТИКАЛЬНАЯ ЛЕВАЯ НАВИГАЦИЯ (ДВУХКОЛОНОЧНЫЙ LAYOUT)
   ========================================================================= */
.crm-two-columns-layout {
    display: flex;
    width: 100%;
    align-items: flex-start;
    gap: 18px; 
    margin-top: 5px;
}

.sys-sub-menu-vertical-panel {
    display: flex;
    flex-direction: column;
    width: 180px;
    min-width: 180px;
    background-color: #f8f9fa;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    padding: 8px;
    box-sizing: border-box;
    gap: 4px;
}

.sys-sub-menu-link {
    display: block;
    padding: 8px 12px;
    font-family: Tahoma, Arial, sans-serif;
    font-size: 11px;
    font-weight: 500;
    text-decoration: none;
    color: #4a5568;
    border-radius: 4px;
    text-align: left;
    transition: all 0.15s ease-in-out;
}

.sys-sub-menu-link.sub-menu:hover {
    color: #1a202c;
    background-color: #edf2f7;
}

.sys-sub-menu-link.sub-menu-act {
    color: #ffffff !important;
    font-weight: 600;
    background-color: #4a5568;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.crm-main-content-area {
    flex-grow: 1;
    width: calc(100% - 198px); 
    text-align: left;
    padding: 0;
    box-sizing: border-box;
}

.crm-two-columns-layout:not(:has(.sys-sub-menu-vertical-panel)) .crm-main-content-area {
    width: 100%;
}
/**
 * themes/default/default.css (Часть 2)
 */

/* =========================================================================
   5. СТРОГИЙ СТИЛЬ ИЗОЛИРОВАННОГО ЭКРАНА ВХОДА (AUTH PANEL)
   ========================================================================= */
body.auth-body {
    background: #f7fafc; 
    padding-top: 1px;
}

.login-wrapper { 
    width: 100%; 
    max-width: 360px; 
    margin: 140px auto; 
}

.login-form { 
    padding: 30px; 
    border-radius: 8px; 
    background-color: #ffffff; 
    border: 1px solid #e2e8f0; 
    text-align: left; 
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.05); 
}

.login-form h2 { 
    margin: 0 0 20px 0; 
    font-size: 16px; 
    color: #1a202c; 
    border-bottom: 1px solid #edf2f7; 
    padding-bottom: 10px; 
    text-align: center; 
    font-weight: 700; 
}

.login-alert { 
    background-color: #fff5f5; 
    color: #c53030; 
    padding: 10px; 
    border-radius: 6px; 
    border: 1px solid #fed7d7; 
    font-size: 12px; 
    margin-bottom: 15px; 
    font-weight: 600; 
}

.form-group { 
    margin-bottom: 18px; 
}

.btn-submit { 
    width: 100%; 
    padding: 11px; 
    background-color: #4a5568; 
    color: white; 
    border: none; 
    border-radius: 6px; 
    font-weight: 700; 
    font-size: 14px; 
    cursor: pointer; 
    transition: background-color 0.15s ease-in-out;
}
.btn-submit:hover { 
    background-color: #2d3748; 
}

.crm-invisible-copyright {
    font-family: Tahoma, Arial, sans-serif;
    font-size: 10px;
    text-align: center;
    margin-top: 15px;
    margin-bottom: 10px;
    user-select: none; 
    opacity: 0.03; 
    color: #f7fafc; 
}

/* =========================================================================
   6. ИНТЕГРИРОВАННЫЙ БЛОК ЦВЕТОВЫХ СХЕМ И ИНДИКАЦИИ СТАТУСОВ АТС
   ========================================================================= */

/* Графика кнопок управления */
a.btnView { background-image: url("../../images/b_tblexport.png"); }
a.btnEdit { background-image: url("../../images/b_edit.png"); }
a.btnDelete { background-image: url("../../images/b_drop.png"); }

/* Цветовое оформление полей и легенд АТС */
fieldset.box.pbx-form-fieldset {
    background: #ffffff !important; 
    border: 1px solid #cbd5e0 !important; 
}

.pbx-form-fieldset legend {
    font-weight: bold !important;
    color: #4a5568 !important;
}

/* Стандартизация цветов лейблов */
.pbx-form-table label, .pbx-form-label {
    color: navy !important; 
}

.pbx-form-label-bold {
    font-weight: 700;
    color: #1a202c !important; 
}

.pbx-form-label-checkbox {
    font-weight: 600;
    color: #2d3748 !important;
}

/* Разделители и подпанели */
.pbx-form-hr {
    border-top: 1px solid #cbd5e0 !important; 
}

.pbx-addons-panel {
    border: 1px solid #cbd5e0 !important; 
    background-color: #f8f9fa !important;
}

.pbx-form-table code,
.pbx-cid-code {
    background: transparent !important; 
    font-weight: normal !important;
    color: #2d3748 !important;
}

/* Стилизация неактивного/устаревшего SIP-аккаунта */
.pbx-stale-phone-wrapper span {
    opacity: 0.45 !important;
    filter: grayscale(100%) !important;
}

.pbx-stale-phone-wrapper::after {
    background: #e53e3e !important;
    box-shadow: 0 0 1px #fff !important;
}

/* Компоненты модальных окон Tingle.js */
.tingle-modal-box__footer {
    background-color: #f8f9fa !important;
    border-top: 1px solid #cbd5e0 !important;
}

/* Подсветка интерактивных элементов Drag-and-Drop */
.sortable-item.drag-over {
    border: 1px dashed #3182ce !important;
    background-color: #ebf8ff !important;
}

.sortable-item.member-disabled {
    opacity: 0.5 !important;
}

/* Стили модулей IVR и маршрутизации */
.virt-form-fieldset { background: #ffffff; }

/* Цвета для CDR модуля */
.pbx-module-container { background: #ffffff; }
.pbx-form-grid { background: #f8fafc; border: 1px solid #e2e8f0; }
.pbx-field-group label { font-weight: 600; color: #4a5568; }
.pbx-input, .pbx-select { border: 1px solid #cbd5e0; background-color: #ffffff; }
.pbx-input:focus, .pbx-select:focus { border-color: #3182ce; }

.pbx-btn-primary {
    background: #3182ce;
    color: #ffffff;
    font-weight: 600;
    border-radius: 4px;
}

.pbx-btn-primary:hover { background: #2b6cb0; }

/* Стилизация таблицы вызовов (CDR) */
.pbx-table-responsive { border: 1px solid #e2e8f0; }
.pbx-table-striped .thead { background: #edf2f7; border-bottom: 2px solid #cbd5e0; }
.pbx-table-striped .tr { border-bottom: 1px solid #e2e8f0; }
.pbx-table-striped .tbody .tr:nth-child(even) { background: #f7fafc; }
.pbx-table-striped .th, .pbx-table-striped .td { color: #2d3748; }
.pbx-table-striped .th { color: #4a5568; }

/* Текстовые системные маркеры ядра */
.pbx-text-accent { color: #1b65a5 !important; }
.pbx-text-muted { color: #718096 !important; }
.pbx-text-dark-muted { color: #4a5568 !important; }
.pbx-text-light-muted { color: #a0aec0 !important; }
.pbx-text-danger { color: #e53e3e !important; }
.pbx-row-played { background-color: #ebf8ff !important; }

/* Цветовые маркеры блоков фатальных ошибок */
.pbx-fatal-error-container { border: 1px solid #feb2b2; background-color: #fff5f5; }
.pbx-fatal-error-title { color: #c53030; }
.pbx-fatal-error-descr { color: #2d3748; }
.pbx-fatal-error-log { background: #2d3748; color: #a0aec0; }
.pbx-module-error-container { border: 1px solid #feebc8; background-color: #fffaf0; }
.pbx-module-error-title { color: #dd6b20; }
.pbx-module-error-descr { color: #744210; }

.virt-status-on, .ivr-status-on {
    background-color: #ebf8ff !important;
    color: #2b6cb0 !important;
}
