﻿/* Global */
html, body { height:100%; margin:0; padding:0; overflow:auto; }
body { font-family:'Century Gothic',sans-serif; margin-bottom:60px; overflow-y:auto; background-image:url('../../images/FondoAplicacion.png'); -moz-user-select:none; -ms-user-select:none; -webkit-user-select:none; user-select:none; }
/* Layout wrapper */
#wrapper { min-height:100vh; min-height:100dvh; height:100%; display:flex; overflow:hidden; }
#wrapper.toggled #sidebar-wrapper { margin-left:-250px; }
/* Scrollbars (WebKit) */
#sidebar-wrapper::-webkit-scrollbar { width:10px; background:#1B5A74; }
#sidebar-wrapper::-webkit-scrollbar-thumb { background:#409bc2; border-radius:6px; }
#sidebar-wrapper::-webkit-scrollbar-thumb:hover { background:#f56738; }
/* Scrollbars (Firefox) */
#sidebar-wrapper { scrollbar-width:thin; scrollbar-color:#409bc2 #1B5A74; }
/* Page content */
#page-content-wrapper { flex:1; min-height:100vh; min-height:100dvh; display:flex; flex-direction:column; overflow-y:auto; }
/* Sidebar base */
.sidebar-custom { background-color:#1B5A74; color:#fff; border-color:#336B87 !important; box-shadow:0 4px 8px rgba(33,41,52,0.85); position:relative; width:250px; transition:width .3s; display:flex; flex-direction:column; min-height:100vh; max-height:100vh; overflow:hidden; }
/* Heading/logo área fija */
.sidebar-custom .sidebar-heading { flex:0 0 auto; border-bottom:none !important; }
/* Lista (nav) ocupa el resto y hace scroll */
.sidebar-custom .list-group { flex:1 1 auto; overflow-y:auto; overflow-x:hidden; padding-bottom:1rem; -webkit-overflow-scrolling:touch; }
/* Ítems base */
.sidebar-custom .list-group-item { background-color:transparent; color:#fff; border-bottom:none !important; border-radius:0; display:flex; align-items:center; }
.sidebar-custom .list-group-item:hover, .sidebar-custom .list-group-item.dropdown-toggle:hover { background-color:#1B5A74; color:#f56738; }
/* Iconos alineados */
.sidebar-custom .list-group-item i { display:inline-block; width:40px; text-align:center; flex-shrink:0; opacity:.8; }
/* Botón toggle */
#menu-toggle { margin-top:5px; margin-left:210px; }
.sidebar-custom.sidebar-compact #menu-toggle { height:30px; padding:0; margin-top:5px; margin-left:40px; width:35px; }
/* Estado compacto */
.sidebar-custom.sidebar-compact { width:80px !important; overflow-x:hidden !important; }
.sidebar-custom.sidebar-compact .list-group { overflow-y:auto; }
.sidebar-custom.sidebar-compact .list-group-item { white-space:nowrap; text-overflow:ellipsis; overflow:hidden; }
.sidebar-custom.sidebar-compact .list-group-item span, .sidebar-custom.sidebar-compact .list-group-item .sidebar-text { display:none !important; }
/* Dropdown caret */
a.dropdown-toggle::after { display:inline-block; margin-left:.5em; vertical-align:middle; content:""; border-top:.3em solid; border-right:.3em solid transparent; border-bottom:0; border-left:.3em solid transparent; transition:transform .8s; }
a.dropdown-toggle:not(.collapsed)::after { transform:rotate(180deg); transition:transform .8s; }
a { color:#6ed3ff; text-decoration:none; }
a:hover { color:#f56738; }
main.container-fluid { margin-top:-10px !important; flex:1 1 auto; overflow-y:auto; }
.me-4 { opacity:.5; }
/* Panel / títulos */
.panel-title { margin-top:25px !important; margin-bottom:10px !important; background-color:#409bc2; color:#fff; font-size:24px; font-weight:bold; text-align:center; border-radius:4px; box-shadow:0 3px 5px rgba(33,41,52,.75); box-sizing:content-box; }
.title { background-color:#409bc2; color:#fff; font-size:18px; font-weight:bold; margin:0; }
::placeholder { opacity:.5 !important; }
.container-fluid { margin-left:0; margin-right:0; text-align:left; }
h1 { margin-left:0; text-align:center; color:#fff; }
#textMenu { font-weight:bold; color:#fff; background:#409bc2; cursor:default; }
.dropdown-menu { background:#1B5A75; }
.dropdown-menu a { color:#fff; }
.dateTextBoxFor, .dateTextBoxForBold { border-style:none; background-color:transparent; }
.dateTextBoxForBold { font-weight:bold; }
/* texto ayuda */
.help{ margin-left:10px;}
/* Botones */
.btn-default, .btn-default:hover { 
    background:#f1f4f4; /* gris claro */
    border-color:#6c757d; /* gris oscuro */
    color:#8e9397; /* gris intermedio */
    text-align:center; 
}
.btn-default { margin:0 0 0 5px; border-radius:4px; box-shadow:0 3px 5px rgba(33,41,52,.75); box-sizing:content-box; }
.div-button { 
    display:flex; 
    background-color:#ffffff; /* blanco */
    margin-top:10px; 
    float:left; }
.btn-outline-secondary, .btn-primary { transition:transform .15s; }
.btn-outline-secondary, .btn-primary { 
    background-color:#409bc2; /* azul */
    color:#ffffff; /* blanco */
    border-radius:4px; 
    box-shadow:0 3px 5px rgba(33,41,52,.75); 
    box-sizing:content-box; 
}
/*.btn-outline-secondary:hover, .btn-primary:hover { transform:scale3d(1.2,1.2,1.2); background-color:#f56738 !important; border-color:#f56738 !important; color:#fff !important; box-shadow:0 4px 8px rgba(33,41,52,0.85); }*/
.btn-outline-secondary:hover, .btn-primary:hover { 
    transform:scale3d(1.2,1.2,1.2); 
    background-color:#409bc2; /* azul */
    border-color:#409bc2; /* azul */
    /*border-color:#f56738 !important;*/ /* naranja */
    color:#ffffff; /* blanco */
    box-shadow:0 4px 8px rgba(33,41,52,0.85); 
}
/* SweetAlert2 */
.swal2-popup { background-color:#e8f3f6; border-radius:4px; box-shadow:0 3px 5px rgba(33,41,52,.75); }
.swal2-popup .swal2-actions .swal2-styled { color:#fff; border-radius:4px; box-shadow:0 3px 5px rgba(33,41,52,.75); padding:10px 20px; font-size:16px; cursor:pointer; margin:4px 2px; }
.swal2-popup .swal2-actions .swal2-cancel { background-color:#f56738; }
.swal2-popup .swal2-actions .swal2-confirm, .swal2-popup .swal2-actions .swal2-deny { background-color:#409bc2; }
/* SweetAlert2 pdf dialog */
.swal2-html-container .swal2-label { display:block; margin:10px 0 4px 5px; font-weight:bold; text-align:left; }
.swal2-html-container .swal2-label + .swal2-input,
.swal2-html-container .swal2-label + .swal2-textarea {margin-top:0;}
.swal2-html-container .swal2-flex-container { display:flex; justify-content:space-between; gap:8px; }
.swal2-html-container .swal2-flex-item { flex:1; }
.swal2-html-container .swal2-common-style { width:calc(100% - 10px); margin:0 5px; }
.swal2-html-container .swal2-textarea { width:calc(100% - 10px); height:100px; margin:0 5px; }
.swal2-inline-flex { display:flex; align-items:center; margin-top:10px; }
.swal2-inline-flex label { margin-left:5px; }
/* Tablas / DataGrid */
.e-grid, .table { background:#fff; width:100%; margin:0 auto; border-radius:6px; box-shadow:0 3px 5px rgba(33,41,52,.75); box-sizing:content-box; }
table > thead > tr, table > tbody { border-radius:6px; box-shadow:0 3px 5px rgba(33,41,52,.75); }
.e-grid .e-headercelldiv, table > thead > tr > th { background-color:#d0e2ea !important; color:#1B5A75 !important; text-align:center !important; vertical-align:middle !important; }
.e-grid .e-headercelldiv, .e-grid tbody tr td, table>tbody>tr>td, table>thead>tr>th { font-size:14px; font-family:Arial; }
table tr:hover>td, .e-grid.e-gridhover .e-row:not(.e-disable-gridhover):not(.e-editedrow):not(.e-detailrow):hover .e-rowcell:not(.e-cellselectionbackground):not(.e-active):not(.e-updatedtd):not(.e-indentcell) { background-color:#c8eff6; color:#000; }
.e-grid .e-rowcell.e-selectionbackground, .row_selected td { background:#1B5A74 !important; color:#fff !important; }
/* DataTables */
.dataTables_wrapper div.top { background:#f4f4f4; height:55px; }
.dataTables_wrapper div.top .dataTables_filter, div.top .dt-buttons { background:#f4f4f4; margin-top:0; }
div.top input[type="search"] { padding:5px; background:#fff; border:1px solid gray; border-radius:4px; width:250px; }
.dataTables_filter input::placeholder { font-size:14px; font-style:italic; opacity:.5; }
.dataTables_wrapper .dataTables_paginate .paginate_button.current { background:#fff; border:0; border-bottom:3px solid #69a3e2; }
.dataTables_wrapper .dataTables_paginate .paginate_button:hover { background:#ecf8f8; color:#000 !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button:active { border-left:3px solid #69a3e2 !important; border-top:3px solid #69a3e2 !important; border-bottom:3px solid #69a3e2 !important; border-right:0 !important; }
.dataTables_paginate { float:left !important; margin-top:10px !important; }
.dataTables_length { font-weight:bold; margin-top:12px !important; color:#000 !important; }
.dataTables_info { font-weight:bold; float:right !important; margin-top:12px !important; }
.btn-paging { opacity:.2 !important; width:5px !important; margin:0 !important; padding:0 !important; }
.btn-table { opacity:.5 !important; }
.btn-table:hover { background:#e6e6e6; }
table { margin:0 auto !important; margin-top:-10px !important; }
/* Descriptive list */
.col > dt { color:#44b4c4; }
/* Responsive */
@media only screen and (max-width:1023px) and (orientation:portrait), only screen and (max-width:1023px) and (orientation:landscape) { body { padding:0; } }
/* >= 1024 */
@media only screen and (min-width:1024px) { h1 { margin-left:45px; } }