@charset "UTF-8";
@import url('normalize.css');
/**
 * CSS Los Alces 2015
 */
input:not(.niceboton):not(.botonV):not(.botonR):not(.boton), textarea, select {
    border: 1px solid #cbd5e1;
    color: #1e293b;
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    border-radius: 4px;
    transition: border-color 0.15s, box-shadow 0.15s;
    background: #fff;
}
select {
    padding: 3px 6px;
    background: #fff;
}
input[type='text']:focus, input[type='email']:focus, input[type='number']:focus,
textarea:focus, select:focus {
    border-color: #d10031;
    outline: none;
    box-shadow: 0 0 0 3px rgba(209,0,49,0.12);
}
input[type='button']{
    display:inline-block;
}
fieldset, legend {
    border-radius: 6px;
    border: 1px solid #e2e8f0;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.04);
}
legend {
    background: #f1f5f9;
    color: #475569;
    padding: 3px 10px;
    font-weight: 600;
    font-size: 13px;
    border-radius: 4px;
}
input {
    padding: 4px 6px;
}
textarea {
    width:100%;
}

* { padding: 0; margin: 0; text-decoration:none;list-style: none}

fieldset{ padding:5px; }

a{text-decoration:none}

body {
    color: #1e293b;
    background: #f1f5f9;
    font: 14px/1.5 'Segoe UI', system-ui, -apple-system, sans-serif;
}
legend .ui-icon{
    margin-right: 5px;
    margin-left:25px;
    cursor:pointer;
    display:inline-block;
}

/* Contenedores */
#wrapper {
    width: 100%;
    overflow: visible;
    min-height: 100vh;
}
/* ── Header principal ────────────────────────────────────────── */
#header {
    background: #1e2a38;
    border-bottom: none;
    box-shadow: 0 2px 14px rgba(0,0,0,0.28);
    position: sticky;
    top: 0;
    z-index: 200;
    width: 100%;
}
#header-top {
    display: flex;
    align-items: center;
    padding: 0 20px;
    min-height: 60px;
    gap: 12px;
}
#header #logo {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    border-right: 1px solid rgba(255,255,255,0.12);
    padding-right: 18px;
    margin-right: 4px;
}
#header img {
    height: 44px;
    width: auto;
    padding: 2px 0;
}
#header-info {
    flex: 1;
    min-width: 0;
}
#header-user {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    position: relative;
    padding-left: 12px;
    border-left: 1px solid rgba(255,255,255,0.10);
}
#titulo {
    color: #e2e8f0;
    font-weight: 700;
    font-size: 13.5px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 2px;
}

/* ── Breadcrumb sobre header oscuro ──────────────────────────── */
#header #miga      { color: rgba(255,255,255,0.40); }
#header #miga a    { color: rgba(255,255,255,0.52); }
#header #miga a:hover { color: #fff; background: transparent; }
#header #miga .sep-icon { color: rgba(255,255,255,0.35); opacity: 1; }

/* ── Panel usuario sobre header oscuro ───────────────────────── */
#header-user #panelUsuario > li > a {
    color: #cbd5e1;
    border-color: rgba(255,255,255,0.15);
}
#header-user #panelUsuario > li:hover > a {
    background: rgba(255,255,255,0.09);
    color: #fff;
    border-color: rgba(255,255,255,0.28);
}
#header-user #panelUsuario > li:last-child > a {
    color: #fca5a5;
    border-color: rgba(239,68,68,0.30);
}
#header-user #panelUsuario > li:last-child > a:hover {
    background: rgba(239,68,68,0.18);
    color: #fecaca;
    border-color: rgba(239,68,68,0.50);
}
#header-user #panelUsuario span#nombre_sucursal {
    color: rgba(255,255,255,0.32);
    border-color: rgba(255,255,255,0.12);
}
#content {
    padding: 24px 28px;
    max-width: 100%;
}
#rightcolumn .bloque{
    margin-bottom:10px;
}
#rightcolumn .bloque .bloque_contenido{
    min-height:130px;
    border:1px solid #A6C9E2;
}
#footer {
    clear: both;color:#fff;margin:0;text-align:center;font-size:12px;
}

#bloque_info_user{
    float:right;height:40px;position:relative;top:0;}

#panel_derecho{min-width:220px;overflow:auto;}

.bloque {overflow: visible;}

.bloque_cuerpo {overflow: visible;height: auto;}
.bloque_subtitulo {
    display: flex;
    align-items: center;
    text-transform: uppercase;
    color: #fff;
    font-size: 12px;
    letter-spacing: 0.06em;
    padding: 9px 14px;
    font-weight: 700;
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    background: linear-gradient(90deg, #1e2a38 0%, #263347 100%);
    border-left: 3px solid #d10031;
    border-radius: 6px;
    margin-bottom: 6px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.10);
    text-align: left;
}
.bloque_subtitulo1 {
    display: flex;
    align-items: center;
    text-transform: uppercase;
    color: #fff;
    font-size: 12px;
    letter-spacing: 0.06em;
    padding: 9px 14px;
    font-weight: 700;
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    background: linear-gradient(90deg, #1e2a38 0%, #263347 100%);
    border-left: 3px solid #d10031;
    border-radius: 6px 6px 0 0;
    box-shadow: 0 1px 4px rgba(0,0,0,0.10);
    text-align: left;
}
.bloque_subtitulo2 {
    display: flex;
    align-items: center;
    text-transform: uppercase;
    color: #fff;
    font-size: 12px !important;
    letter-spacing: 0.06em;
    font-weight: 700;
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    background: #d10031;
    border-radius: 6px 6px 0 0;
    padding: 9px 14px;
    text-align: left;
}
.bloque_contenido {
    padding: 14px 16px;
    display: block;
    position: relative;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 0 0 6px 6px;
    margin-bottom: 16px;
}

/* Generales */
label.error { color:red !important;display:inline;clear:both;}
input.error,textarea.error,select.error{background-color:#b8fda6 !important;}
input.input_alert{
    background-image:url('../imagenes/icons/exclamation--frame.png');
    background-repeat: no-repeat;
    padding-left:16px;
    background-position: left center;
    background-color:#ffadad !important;
}

#content div.bloque_contenido div.dataTables_wrapper table {width:100%;}

.clr{clear:both;width:100%;}

.hr{clear:both;width:100%;margin:1px 0px;border-top:#989898 1px solid;border-bottom:#fff 1px solid;}

.hr2{clear:both;width:80%;height:10px;background:url(../imagenes/hr2.png) repeat-x left center;}

.accion, a.accion{cursor:pointer;vertical-align:middle;font-size:13px;}
.accion img{vertical-align:bottom}

.navegar_paginacion{width:100%;text-align:center;position:relative}

.oculto {display:none}

.top_leido{padding:10px;margin-top:10px;}

.parrafo{margin: 7px;vertical-align: middle;}

.allwidth{width:100%}.width90{width:90%}.width85{width:85%}.width80{width:80%}.width70{width:70%}
.width60{width:60%}

.bloque_error_fatal{
    position:fixed;z-index:999;margin:0 0;width:100%;height:100%;color:#333 !important;
    background:url('../imagenes/trasnparencia333.png') repeat;
    text-align:center;top:0px;left:0px;
}
.bloque_error_fatal div{
    margin:100px auto;font-size:2.5em;vertical-align:middle;width:1022px;
}
#load {
    font-size: 16px;
    width: 440px !important;
    background: #fff;
    padding: 28px 32px;
    border: none;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);
}
.textcenter{
    text-align:center
}

.hr333{background:url('../imagenes/hr333.png') transparent repeat-x scroll left bottom;
width:100%;height:2px;margin:2px;}


.decoratenone{
    border-collapse:collapse;
    border:none !important
}
table.decoratenone tr td, th td{
    border:none !important;
    background:#fff !important;
}

ul.tabs {
    margin: 0;
    padding: 0;
    float: left;
    list-style: none;
    height: auto;
    border-bottom: 2px solid #e2e8f0;
    width: 100%;
    background: transparent;
    display: flex;
    gap: 4px;
}
ul.tabs li {
    float: left;
    margin: 0;
    padding: 0;
    height: auto;
    line-height: 1.4;
    overflow: hidden;
    position: relative;
    background: #f1f5f9;
    border-radius: 6px 6px 0 0;
    border: 1px solid #e2e8f0;
    border-bottom: none;
}
ul.tabs li a {
    text-decoration: none;
    color: #475569;
    display: block;
    font-size: 13px;
    font-weight: 500;
    padding: 7px 14px;
    outline: none;
    transition: background 0.12s, color 0.12s;
}
ul.tabs li a:hover {
    background: #e2e8f0;
    color: #1e293b;
}
html ul.tabs li.active, html ul.tabs li.active a:hover {
    background: #fff;
    border-color: #e2e8f0;
    border-bottom-color: #fff;
}
html ul.tabs li.active a {
    color: #d10031;
    font-weight: 700;
}
.tab_container {
    border: 1px solid #e2e8f0;
    border-top: none;
    overflow: hidden;
    float: left;
    width: 100%;
    background: #fff;
    border-radius: 0 0 6px 6px;
}
.tab_content {
    padding: 20px;
    font-size: 13px;
    min-height: 215px;
}
.label_error{background:#ffe3e3;border:1px solid #ff5b5b;padding:3px 5px;
            vertical-align:middle;-moz-border-radius:5px;-webkit-border-radius:5px;}
.label_error span{vertical-align:middle;}
.lista li{
    color:#252525;
    background-position: 6px;
}
.absolute_block{
    position:fixed;z-index:999;margin:0 0;width:100%;color:#333 !important;
    text-align:center;top:0px;left:0px;display:none;min-height: 60px;
}
#mensajeSistema {
    margin: 0 auto;
    z-index: 999;
    padding: 12px 24px;
    background: #fff;
    border-left: 4px solid #d10031;
    border-right: 1px solid #e2e8f0;
    border-bottom: 1px solid #e2e8f0;
    display: inline-block;
    color: #1e293b;
    font-weight: 600;
    font-size: 14px;
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 6px 24px rgba(0,0,0,0.14);
}

table.cebra {
    border-collapse: collapse;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
}
table.cebra thead tr th, .cebra thead tr td {
    padding: 10px 12px;
    font-size: 12px;
    font-family: 'Segoe UI', system-ui, sans-serif;
    background: linear-gradient(180deg, #1e2a38 0%, #263347 100%);
    color: #e2e8f0;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-bottom: 2px solid #d10031;
}
.cebra tbody tr {
    background: #fff;
}
.cebra tbody tr:nth-child(2n+1) {
    background: #f8fafc;
}
.cebra tbody tr:hover {
    background-color: #fff0f3;
    color: #1e293b;
}
.cebra tbody tr.nohever:hover {

}
.cebra tboby tr td, .cebra tr td {
    padding: 8px 12px;
    vertical-align: middle;
    border-bottom: 1px solid #e9eef4;
    font-size: 13px;
    font-family: 'Segoe UI', system-ui, sans-serif;
}

/************ TABLA PRINCIPAL ***************/

table.simpletable a:link {
    color: #2563eb;
    font-weight: 500;
    text-decoration: none;
}
table.simpletable a:visited {
    color: #7c3aed;
    font-weight: 500;
    text-decoration: none;
}
table.simpletable a:active,
table.simpletable a:hover {
    color: #d10031;
    text-decoration: underline;
}
table.simpletable {
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    color: #1e293b;
    font-size: 13px;
    background: #fff;
    width: 100%;
    border-collapse: collapse;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 6px rgba(0,0,0,0.07);
    margin: 4px 0 16px;
}
table.simpletable th {
    padding: 11px 14px;
    background: linear-gradient(180deg, #1e2a38 0%, #263347 100%);
    color: #e2e8f0;
    font-weight: 600;
    font-size: 11.5px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 2px solid #d10031;
    white-space: nowrap;
}
table.simpletable th:first-child {
    text-align: left;
    padding-left: 16px;
    border-radius: 8px 0 0 0;
}
table.simpletable th:last-child {
    border-radius: 0 8px 0 0;
}
table.simpletable tr {
    text-align: center;
    transition: background 0.12s;
}
table.simpletable td:first-child {
    text-align: left;
    padding-left: 16px;
}
table.simpletable td {
    padding: 9px 12px;
    border-bottom: 1px solid #e9eef4;
    background: #fff;
    vertical-align: middle;
}
table.simpletable tr:nth-child(even) td {
    background: #f8fafc;
}
table.simpletable tr:last-child td { border-bottom: 0; }
table.simpletable tr:last-child td:first-child  { border-radius: 0 0 0 8px; }
table.simpletable tr:last-child td:last-child   { border-radius: 0 0 8px 0; }
table.simpletable tr:hover td {
    background: #fff0f3;
    color: #1e293b;
}

/********************************/

.mensaje_advertencia {
    background: #fffbeb;
    border: 1px solid #fcd34d;
    border-left: 4px solid #f59e0b;
    border-radius: 6px;
    padding: 10px 14px;
    color: #78350f;
    font-size: 13px;
}
.mensaje_informacion {
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-left: 4px solid #3b82f6;
    border-radius: 6px;
    padding: 10px 14px;
    color: #1e40af;
    font-size: 13px;
}
.infoSession {
    float: right;
    padding: 4px 10px;
    background: #f1f5f9;
    color: #475569;
    border-radius: 6px;
    border: 1px solid #e2e8f0;
    margin-top: 5px;
    margin-right: 10px;
    font-size: 13px;
}
.load-circle{
    background:url('../imagenes/loads/loader.gif') no-repeat;
    width:31px;
    height:31px;
    display:inline-block;
}
input.inputload, input.input_load .ui-autocomplete-loading,select.input_load, select.inputload{
    background:url('../imagenes/loads/indicator.white.gif') no-repeat right center #ddd !important;
}
.close_errorConeccion{
    background:url('../imagenes/icons/x.png') no-repeat center;
    width:20px;height:20px;
    display:inline-block;
    float:right;
    margin-right: 10px;
    margin-top:5px;
    cursor:pointer;
    border-radius:3px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border:1px solid transparent;
}
.close_errorConeccion:hover{
    border:1px solid red;
}
.floatRight {
    float: right;
}
p#msg_error_server {
    color: #94a3b8;
}

/* ── DataTables row classes ──────────────────────────────────── */
table.simpletable tr.even td { background: #f8fafc; }
table.simpletable tr.odd  td { background: #fff; }
table.simpletable tr.even:hover td,
table.simpletable tr.odd:hover td  { background: #fff0f3; }

/* ── Utilidades de espaciado y layout ────────────────────────── */
.card {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
    padding: 16px 18px;
    margin-bottom: 16px;
}
.hr {
    clear: both;
    width: 100%;
    margin: 10px 0;
    border: none;
    border-top: 1px solid #e2e8f0;
}
.hr2 { clear: both; width: 80%; height: 10px; background: url(../imagenes/hr2.png) repeat-x left center; }
.hr333 { background: url('../imagenes/hr333.png') transparent repeat-x scroll left bottom; width: 100%; height: 2px; margin: 2px; }

/* ── Botones de acción inline ────────────────────────────────── */
.accion, a.accion {
    cursor: pointer;
    vertical-align: middle;
    font-size: 13px;
    color: #475569;
    transition: color 0.12s;
}
.accion:hover, a.accion:hover { color: #d10031; }
.accion img { vertical-align: bottom; }

/* ── Alertas de validación ───────────────────────────────────── */
.label_error {
    background: #fef2f2;
    border: 1px solid #fca5a5;
    color: #dc2626;
    padding: 3px 8px;
    vertical-align: middle;
    border-radius: 4px;
    font-size: 12px;
}
.label_error span { vertical-align: middle; }

/* ── Panel de usuario (header) ───────────────────────────────── */
.panelUsuario {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #475569;
    font-size: 13px;
}
.panelUsuario img.avatar {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #e2e8f0;
}

/* ── Breadcrumb ──────────────────────────────────────────────── */
#miga {
    font-size: 12px;
    padding: 2px 0 0 0;
    color: #94a3b8;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
}
#miga a { color: #64748b; text-decoration: none; transition: color 0.15s; }
#miga a:hover { color: #d10031; text-decoration: none; }
#miga .sep { color: #cbd5e1; }
#miga .sep-icon { font-size: 8px; opacity: 0.45; }

/* ── Scrollbar personalizado (Chrome/Edge) ───────────────────── */
::-webkit-scrollbar { width: 7px; height: 7px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* ── Botón hamburguesa (solo móvil) ──────────────────────────── */
#menu-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 8px;
    cursor: pointer;
    color: #e2e8f0;
    font-size: 17px;
    flex-shrink: 0;
    margin-left: auto;
    transition: background 0.15s, border-color 0.15s;
}
#menu-toggle:hover {
    background: rgba(255,255,255,0.14);
    border-color: rgba(255,255,255,0.30);
}

/* ── Responsive header ───────────────────────────────────────── */
@media (max-width: 768px) {
    #menu-toggle {
        display: flex;
    }
    #header-top {
        padding: 0 12px;
        min-height: 56px;
        gap: 8px;
        flex-wrap: nowrap;
    }
    #header img {
        height: 36px;
        padding: 0;
    }
    #header #logo {
        padding-right: 12px;
        margin-right: 0;
    }
    #header-info {
        display: none;
    }
    #header-user {
        display: none;
    }
    #content {
        padding: 14px 10px;
    }
}
