/**
 * Design System - Detail Modal with Sidebar Tabs
 *
 * Layout de modal de detalhamento com abas laterais
 * Baseado nas especificações do Figma (detalhar_light.css e detalhar_dark.css)
 *
 * @version 1.0.0
 * @date 2025-12-11
 * @author SIDASP Design System Team
 *
 * Figma Specs:
 * - Modal: 1200px x 680px, border-radius 8px
 * - Sidebar: 272px width, background #12151F (light) / #2A2F41 (dark)
 * - Content: background #F6F6F9 (light) / #1D2333 (dark)
 * - Tab item: height 40px (active) / 48px (inactive), padding 8px 12px
 * - Tab active: background rgba(246, 246, 249, 0.1), border-radius 8px
 */

/* ==========================================================================
   MODAL CONTAINER - Layout base
   ========================================================================== */

/* Ocultar boxDetalhar quando não está dentro de um dialog */
#boxDetalhar {
    display: none;
}

/* Mostrar apenas quando está dentro de um ui-dialog jQuery */
.ui-dialog #boxDetalhar {
    display: flex !important;
    flex-direction: row !important;
    min-width: 900px;
    min-height: 500px;
    overflow: hidden;
    border-radius: 8px;
}

/* ==========================================================================
   SIDEBAR - Container lateral com abas
   ========================================================================== */

#boxDetalhar .left-detalhar,
#boxDetalhar .left {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    padding: 20px !important;
    gap: 40px !important;
    width: 272px !important;
    min-width: 272px !important;
    flex-shrink: 0 !important;
    height: 100% !important;

    /* Light mode - Figma specs */
    background: #12151F !important;
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

/* ==========================================================================
   SIDEBAR HEADER - Título e subtítulo
   ========================================================================== */

.detail-sidebar-header {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    padding: 0 !important;
    gap: 4px !important;
    width: 100% !important;
    flex-shrink: 0 !important;
    text-align: left !important;
    background: transparent !important;
}

.detail-sidebar-title,
#boxDetalhar .detail-sidebar-title {
    width: 100% !important;

    /* Tipografia/H2 - Figma */
    font-family: 'Space Grotesk', sans-serif !important;
    font-style: normal !important;
    font-weight: 500 !important;
    font-size: 20px !important;
    line-height: 30px !important;

    /* Light mode */
    color: #F6F6F9 !important;

    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    background: transparent !important;
}

.detail-sidebar-subtitle,
#boxDetalhar .detail-sidebar-subtitle {
    width: 100% !important;

    /* Tipografia/Paragraph 04 - Figma */
    font-family: 'Inter', sans-serif !important;
    font-style: normal !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    line-height: 24px !important;

    /* Light mode */
    color: #7A839F !important;

    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    background: transparent !important;
}

/* ==========================================================================
   TABS CONTAINER - Lista de abas verticais
   ========================================================================== */

.detail-tabs,
#boxDetalhar .tabsDetalhar,
.tabsDetalhar,
#boxDetalhar .mdl-tabs__tab-bar,
#boxDetalhar .mdl-tabs nav.mdl-tabs__tab-bar,
#boxDetalhar .mdl-tabs > .mdl-tabs__tab-bar {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    list-style: none !important;
    gap: 0 !important;
    flex: 1 !important;
    overflow-y: auto !important;
    border: none !important;
    border-bottom: none !important;
}

/* ==========================================================================
   TAB ITEM - Estilo base das abas
   ========================================================================== */

.detail-tabs li,
.tabsDetalhar li,
.detail-tab-item,
#boxDetalhar .mdl-tabs__tab-bar a.mdl-tabs__tab,
#boxDetalhar .mdl-tabs__tab {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    padding: 8px 12px !important;
    gap: 12px !important;
    width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;

    /* Light mode - inactive */
    background: transparent !important;
    border-radius: 8px !important;

    cursor: pointer !important;
    transition: background-color 0.15s ease !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    float: none !important;
    list-style: none !important;

    /* Reset MDL styles */
    border: none !important;
    text-transform: none !important;
}

/* Tab item hover */
.detail-tabs li:hover,
.tabsDetalhar li:hover,
.detail-tab-item:hover,
#boxDetalhar .mdl-tabs__tab:hover {
    background: rgba(246, 246, 249, 0.05) !important;
}

/* ==========================================================================
   TAB ITEM ACTIVE - Aba selecionada
   ========================================================================== */

.detail-tabs li.active,
.detail-tabs li.ativa,
.tabsDetalhar li.active,
.tabsDetalhar li.ativa,
.detail-tab-item.active,
.detail-tab-item.ativa,
.tabsDetalhar .ativa,
#boxDetalhar .mdl-tabs__tab.is-active,
#boxDetalhar .mdl-tabs__tab-bar a.is-active {
    height: 40px !important;
    min-height: 40px !important;

    /* Light mode - active (Figma) */
    background: rgba(246, 246, 249, 0.1) !important;
    border-radius: 8px !important;
}

/* ==========================================================================
   TAB LABEL - Texto das abas
   ========================================================================== */

.detail-tabs li a,
.detail-tabs li span,
.tabsDetalhar li a,
.tabsDetalhar li span,
.detail-tab-label,
#boxDetalhar .mdl-tabs__tab {
    flex: 1 !important;

    /* Tipografia/Paragraph 03 - Figma */
    font-family: 'Inter', sans-serif !important;
    font-style: normal !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    line-height: 24px !important;

    /* Light mode - inactive */
    color: #7A839F !important;

    text-decoration: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    cursor: pointer !important;
}

/* Tab label active */
.detail-tabs li.active a,
.detail-tabs li.active span,
.detail-tabs li.ativa a,
.detail-tabs li.ativa span,
.tabsDetalhar li.active a,
.tabsDetalhar li.active span,
.tabsDetalhar li.ativa a,
.tabsDetalhar li.ativa span,
.tabsDetalhar .ativa span,
.detail-tab-label.active,
#boxDetalhar .mdl-tabs__tab.is-active,
#boxDetalhar .mdl-tabs__tab-bar a.is-active {
    /* Light mode - active */
    color: #F6F6F9 !important;
}

/* ==========================================================================
   TAB ARROW ICON - Seta do item ativo
   ========================================================================== */

.detail-tab-arrow,
.detail-tabs li::after,
.tabsDetalhar li.ativa::after,
.tabsDetalhar li.active::after {
    content: '󰅂' !important; /* MDI chevron-right ou usar > */
    font-family: 'Material Design Icons' !important;
    width: 20px !important;
    height: 20px !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    color: #F6F6F9 !important;
    font-size: 20px !important;
    flex-shrink: 0 !important;
}

/* Show arrow only on active tab */
.detail-tabs li.active::after,
.detail-tabs li.ativa::after,
.tabsDetalhar li.ativa::after,
.tabsDetalhar li.active::after {
    display: flex !important;
}

/* Fallback: usar material-icons se disponível */
.detail-tab-arrow-icon {
    width: 20px;
    height: 20px;
    display: none;
    color: #F6F6F9;
}

.detail-tabs li.active .detail-tab-arrow-icon,
.detail-tabs li.ativa .detail-tab-arrow-icon,
.tabsDetalhar li.ativa .detail-tab-arrow-icon {
    display: flex;
}

/* ==========================================================================
   CONTENT AREA - Área de conteúdo à direita
   ========================================================================== */

#boxDetalhar .right {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 20px !important;
    overflow: auto !important;

    /* Light mode - Figma */
    background: #F6F6F9 !important;

    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}

/* ==========================================================================
   CLOSE BUTTON - Botão de fechar
   ========================================================================== */

.detail-close,
#boxDetalhar .detail-close {
    position: absolute !important;
    top: 20px !important;
    right: 20px !important;
    width: 16px !important;
    height: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    z-index: 10010 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

.detail-close i,
.detail-close .material-icons,
.detail-close .mdi {
    font-size: 16px !important;
    color: #7A839F !important;
    transition: color 0.15s ease !important;
}

.detail-close:hover i,
.detail-close:hover .material-icons,
.detail-close:hover .mdi {
    color: #12151F !important;
}

/* ==========================================================================
   DARK MODE
   ========================================================================== */

/* Sidebar - Dark mode */
html.dark #boxDetalhar .left-detalhar,
html.dark #boxDetalhar .left,
html.dark-mode #boxDetalhar .left-detalhar,
html.dark-mode #boxDetalhar .left,
[data-theme="dark"] #boxDetalhar .left-detalhar,
[data-theme="dark"] #boxDetalhar .left {
    background: #2A2F41 !important;
}

/* Title - Dark mode */
html.dark .detail-sidebar-title,
html.dark #boxDetalhar .detail-sidebar-title,
html.dark-mode .detail-sidebar-title,
[data-theme="dark"] .detail-sidebar-title {
    color: #E0E2EB !important;
}

/* Subtitle - Dark mode */
html.dark .detail-sidebar-subtitle,
html.dark #boxDetalhar .detail-sidebar-subtitle,
html.dark-mode .detail-sidebar-subtitle,
[data-theme="dark"] .detail-sidebar-subtitle {
    color: #A2A8B9 !important;
}

/* Tab label inactive - Dark mode */
html.dark .detail-tabs li a,
html.dark .detail-tabs li span,
html.dark .tabsDetalhar li a,
html.dark .tabsDetalhar li span,
html.dark-mode .tabsDetalhar li a,
html.dark-mode .tabsDetalhar li span,
[data-theme="dark"] .tabsDetalhar li a,
[data-theme="dark"] .tabsDetalhar li span {
    color: #A2A8B9 !important;
}

/* Tab label active - Dark mode */
html.dark .detail-tabs li.active a,
html.dark .detail-tabs li.active span,
html.dark .detail-tabs li.ativa a,
html.dark .detail-tabs li.ativa span,
html.dark .tabsDetalhar li.ativa a,
html.dark .tabsDetalhar li.ativa span,
html.dark .tabsDetalhar .ativa span,
html.dark-mode .tabsDetalhar li.ativa span,
html.dark-mode .tabsDetalhar .ativa span,
[data-theme="dark"] .tabsDetalhar li.ativa span,
[data-theme="dark"] .tabsDetalhar .ativa span {
    color: #E0E2EB !important;
}

/* Tab arrow - Dark mode */
html.dark .detail-tabs li.ativa::after,
html.dark .tabsDetalhar li.ativa::after,
html.dark-mode .tabsDetalhar li.ativa::after,
[data-theme="dark"] .tabsDetalhar li.ativa::after {
    color: #E0E2EB !important;
}

/* Content area - Dark mode */
html.dark #boxDetalhar .right,
html.dark-mode #boxDetalhar .right,
[data-theme="dark"] #boxDetalhar .right {
    background: #1D2333 !important;
}

/* Close button - Dark mode */
html.dark .detail-close i,
html.dark .detail-close .material-icons,
html.dark-mode .detail-close i,
[data-theme="dark"] .detail-close i {
    color: #A2A8B9 !important;
}

html.dark .detail-close:hover i,
html.dark .detail-close:hover .material-icons,
html.dark-mode .detail-close:hover i,
[data-theme="dark"] .detail-close:hover i {
    color: #E0E2EB !important;
}

/* ==========================================================================
   LEGACY COMPATIBILITY - Estilos antigos das abas
   ========================================================================== */

/* Reset estilos antigos de abas horizontais */
.tabsDetalhar {
    flex-wrap: nowrap !important;
    border-bottom: none !important;
}

/* Esconder abas antigas de formato horizontal */
#boxDetalhar .ContentControl .abas,
#boxDetalhar .ContentControl #header {
    display: none !important;
}

/* Estilos antigos .aba e .ativa - sobrescrever */
.tabsDetalhar .aba,
.tabsDetalhar .ativa {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    background: transparent !important;
    text-align: left !important;
    padding: 8px 12px !important;
}

.tabsDetalhar .ativa {
    background: rgba(246, 246, 249, 0.1) !important;
}

/* ==========================================================================
   FLOWBITE MODAL INTEGRATION
   ========================================================================== */

div[id^="flowbite-dialog-"]:has(#boxDetalhar) {
    /* Modal container adjustments */
}

div[id^="flowbite-dialog-"]:has(#boxDetalhar) .ds-fk-modal-content {
    overflow: hidden !important;
    border-radius: 8px !important;
}

div[id^="flowbite-dialog-"]:has(#boxDetalhar) #boxDetalhar {
    border-radius: 8px !important;
}

div[id^="flowbite-dialog-"]:has(#boxDetalhar) #boxDetalhar .left-detalhar,
div[id^="flowbite-dialog-"]:has(#boxDetalhar) #boxDetalhar .left {
    width: 272px !important;
    min-width: 272px !important;
}
