Files
Colaborando/estilos3.css
T
cheveguerra 77c86122f0 style(ui): refactorizar layout en porcentajes y ajustar escala tipografica
- Ajustar la cuadricula del tablero (.layout) a proporciones en porcentaje (18% 1fr 30%).
- Disponer botones de navegacion (.rail-btns) horizontalmente en un solo renglon.
- Reordenar el bloque de Acciones Posibles por encima de la Tabla de Activos en el Rail.
- Ajustar proporciones de Capacitaciones y Acciones a 70%/30% con botones flexibles.
- Ampliar escala tipografica en titulos, descripciones, tarjetas de departamentos y proyectos.
- Aumentar tamano del avatar de departamentos a 130px.
- Actualizar CONTEXT.md con la arquitectura y decisiones de la sesion.
2026-08-12 21:59:01 -06:00

1471 lines
36 KiB
CSS
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
:root {
--bg: #F2F3F6;
--panel: #FFFFFF;
--panel-2: #EFF1F5;
--border: #DEE1E8;
--border-soft: #E8EAEF;
--text: #171B24;
--text-dim: #545C70;
--text-faint: #8890A3;
--gold: #B9860E;
--sky: #0E86A8;
--violet: #8A38C4;
--timer-accent: #5FD8EE;
--red: #C6432B;
--green-ok: #2F9E5B;
--a-personal: #C79A16;
--a-analistas: #C97324;
--a-flujo: #2F9E5B;
--a-credito: #2F6FE0;
--a-tecnologia: #C6432B;
--a-transporte: #1F3B73;
--radius: 10px;
--font-display: 'Space Grotesk', sans-serif;
--font-mono: 'JetBrains Mono', monospace;
--font-body: 'Ubuntu', sans-serif;
}
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
body {
background: radial-gradient(1200px 700px at 15% -10%, #FFFFFF 0%, var(--bg) 55%);
color: var(--text);
font-family: var(--font-body);
padding: 16px;
min-width: 1100px;
}
.canvas {
width: 100%;
/*max-width: 1680px;*/
margin: 0 auto;
}
.layout {
display: grid;
grid-template-columns: 18% 1fr 30%;
gap: 14px;
align-items: start;
}
/* ============ COLUMNA IZQUIERDA (RAIL DE CONTROL) ============ */
.rail {
display: flex;
flex-direction: column;
gap: 11px;
background: var(--panel);
border: 1px solid var(--border);
border-radius: var(--radius);
padding: 12px;
box-shadow: 0 1px 4px rgba(23,27,36,.06);
}
.rail-block {
display: flex;
flex-direction: column;
gap: 6px;
}
.rail-block + .rail-block {
border-top: 1px solid var(--border-soft);
padding-top: 10px;
}
.rail-logo {
text-align: center;
}
.rail-logo img {
height: 26px;
max-height: 28px;
width: auto;
object-fit: contain;
}
.rail-session {
font-family: var(--font-mono);
font-size: 10px;
font-weight: 600;
color: var(--text-dim);
text-transform: uppercase;
letter-spacing: .08em;
text-align: center;
}
.rail-lbl {
font-family: var(--font-mono);
font-size: 13px;
letter-spacing: .08em;
color: var(--text-faint);
text-transform: uppercase;
font-weight: 700;
}
.rail-btns {
display: flex;
flex-direction: row;
gap: 5px;
}
.btn {
font-family: var(--font-display);
font-weight: 600;
font-size: 13px;
padding: 6px 10px;
border-radius: 6px;
border: 1px solid var(--border);
background: var(--panel-2);
color: var(--text);
white-space: nowrap;
text-align: center;
display: block;
width: 100%;
box-sizing: border-box;
text-decoration: none;
cursor: pointer;
}
.btn:hover {
background: var(--border-soft);
color: var(--text);
}
.btn-primary {
background: var(--gold);
color: #FFFDF6;
border-color: var(--gold);
}
.btn-primary:hover {
background: #a2750a;
border-color: #a2750a;
color: #FFFDF6;
}
.tq-row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 6px;
}
.trimestre-tabs {
display: flex;
gap: 3px;
margin-top: 2px;
}
.trimestre-tab {
width: 22px;
height: 22px;
border-radius: 5px;
display: flex;
align-items: center;
justify-content: center;
font-family: var(--font-mono);
font-size: 11px;
font-weight: 700;
border: 1px solid var(--border);
color: var(--text-dim);
background: var(--panel-2);
cursor: default;
}
.trimestre-tab[style*="068bc3"],
.trimestre-tab[style*="6, 139, 195"] {
background-color: var(--gold) !important;
border-color: var(--gold) !important;
color: #FFFDF6 !important;
}
.quincena-stepper {
display: flex;
align-items: center;
gap: 4px;
margin-top: 2px;
}
.step-btn {
width: 22px;
height: 22px;
border-radius: 5px;
border: 1px solid var(--border);
background: var(--panel-2);
color: var(--text);
font-family: var(--font-mono);
font-size: 12px;
font-weight: 700;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
}
.step-btn:hover {
background: var(--border);
}
.quincena-value {
font-family: var(--font-mono);
font-size: 14px;
font-weight: 700;
width: 22px;
text-align: center;
border: none;
background: transparent;
color: var(--text);
outline: none;
}
.timer-face {
font-family: var(--font-mono);
font-size: 20px;
font-weight: 700;
letter-spacing: .03em;
background: #ffffffff;
border: 1px solid var(--border);
border-radius: 6px;
/*padding: 6px 0;*/
/*color: var(--gold);*/
text-align: center;
}
.timer-sub {
font-family: var(--font-mono);
font-size: 9.5px;
color: var(--text-faint);
text-align: center;
margin-top: 3px;
}
#timeRange {
-webkit-appearance: none;
appearance: none;
accent-color: var(--gold);
height: 4px;
border-radius: 2px;
background: var(--border);
outline: none;
margin-top: 6px;
}
#timeRange::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 14px;
height: 14px;
border-radius: 50%;
background: var(--gold);
cursor: pointer;
border: none;
}
#timeRange::-moz-range-thumb {
width: 14px;
height: 14px;
border-radius: 50%;
background: var(--gold);
cursor: pointer;
border: none;
}
.resgen-block {
background: var(--panel-2);
border: 1px solid var(--border-soft);
border-radius: 8px;
padding: 8px;
text-align: center;
}
.resgen-buttons {
display: flex;
justify-content: center;
gap: 6px;
margin-bottom: 8px;
}
#RGR, #asignarRecursos {
background: var(--gold) !important;
color: #FFFDF6 !important;
border: 1px solid var(--gold) !important;
font-family: var(--font-display) !important;
font-weight: 600 !important;
font-size: 11px !important;
padding: 5px 10px !important;
border-radius: 6px !important;
cursor: pointer !important;
transition: all 0.15s ease !important;
box-shadow: 0 1px 2px rgba(0,0,0,0.05) !important;
text-shadow: none !important;
}
#RGR:hover, #asignarRecursos:hover:not(.ui-state-disabled) {
background: #a2750a !important;
border-color: #a2750a !important;
color: #FFFDF6 !important;
}
#asignarRecursos.ui-state-disabled, #asignarRecursos:disabled {
background: var(--border) !important;
border-color: var(--border) !important;
color: var(--text-faint) !important;
opacity: 0.55 !important;
cursor: not-allowed !important;
}
/* Sobrescritura del estado activo de jQuery UI (.ui-state-active) a Dorado var(--gold) */
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover,
label[for="habilidadesAcreditadas"].ui-state-active,
label[for="habilidadesAcreditadas"]:active,
label[for="habilidadesAcreditadas"]:focus {
border: 1px solid var(--gold) !important;
background: var(--gold) !important;
background-color: var(--gold) !important;
color: #FFFDF6 !important;
}
/* Checkbox y label de Capacitaciones */
#habilidadesAcreditadas {
accent-color: var(--gold);
cursor: pointer;
width: 14px;
height: 14px;
}
#habilidadesAcreditadas:checked + label,
label[for="habilidadesAcreditadas"].ui-checkboxradio-checked,
label[for="habilidadesAcreditadas"].ui-state-active {
color: #FFFDF6 !important;
font-weight: 700 !important;
background: var(--gold) !important;
background-color: var(--gold) !important;
border: 1px solid var(--gold) !important;
border-radius: 4px;
padding: 2px 6px;
}
/* Botones de Acciones Quincenales (#bAccion1, #bAccion2) */
#bAccion1, #bAccion2 {
font-family: var(--font-mono) !important;
font-weight: 700 !important;
font-size: 11px !important;
padding: 3px 8px !important;
border-radius: 5px !important;
border: 1px solid var(--border) !important;
background: var(--panel-2) !important;
color: var(--text) !important;
cursor: pointer !important;
transition: all 0.15s ease !important;
min-width: 28px !important;
height: 28px !important;
text-align: center !important;
box-shadow: 0 1px 2px rgba(0,0,0,0.04) !important;
line-height: 1 !important;
}
#bAccion1:hover, #bAccion2:hover {
border-color: var(--gold) !important;
background: var(--panel) !important;
}
/* Sobrescritura del color azul inyectado por JS a dorado */
#bAccion1[style*="068bc3"], #bAccion1[style*="6, 139, 195"],
#bAccion2[style*="068bc3"], #bAccion2[style*="6, 139, 195"] {
background-color: var(--gold) !important;
border-color: var(--gold) !important;
color: #FFFDF6 !important;
box-shadow: 0 2px 5px rgba(185,134,14,0.3) !important;
}
#recRand1, #recRand2, #recRand3, #recRand4 {
display: none;
}
#recRand1:has(img),
#recRand2:has(img),
#recRand3:has(img),
#recRand4:has(img) {
display: inline-flex;
align-items: center;
justify-content: center;
background: var(--panel);
border: 1px solid var(--border);
border-radius: 8px;
padding: 4px 6px;
box-shadow: 0 1px 3px rgba(23,27,36,.06);
transition: transform 0.15s ease, box-shadow 0.15s ease;
min-width: 38px;
min-height: 38px;
}
#recRand1:has(img):hover,
#recRand2:has(img):hover,
#recRand3:has(img):hover,
#recRand4:has(img):hover {
transform: translateY(-1px);
box-shadow: 0 2px 5px rgba(0,0,0,.1);
}
/* Reemplazo visual automático de imágenes de recursos por íconos SVG vectoriales modernos */
#recRand1 img[src*="tiempo"],
#recRand2 img[src*="tiempo"],
#recRand3 img[src*="tiempo"],
#recRand4 img[src*="tiempo"] {
content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="%23B9860E" stroke-width="2.2"><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3.2 3.2" stroke-linecap="round" stroke-linejoin="round"/></svg>') !important;
width: 28px !important;
height: 28px !important;
}
#recRand1 img[src*="personal"],
#recRand2 img[src*="personal"],
#recRand3 img[src*="personal"],
#recRand4 img[src*="personal"] {
content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="%230E86A8" stroke-width="2.2"><circle cx="12" cy="7.5" r="3.6" fill="%230E86A8"/><path d="M4.5 20c.7-4.6 4-7 7.5-7s6.8 2.4 7.5 7" stroke-linecap="round"/></svg>') !important;
width: 28px !important;
height: 28px !important;
}
#recRand1 img[src*="capital"],
#recRand2 img[src*="capital"],
#recRand3 img[src*="capital"],
#recRand4 img[src*="capital"] {
content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="%238A38C4" stroke-width="2.2"><circle cx="12" cy="12" r="9"/><text x="12" y="15.5" text-anchor="middle" font-size="11" font-family="Arial, sans-serif" font-weight="700" fill="%238A38C4">$</text></svg>') !important;
width: 28px !important;
height: 28px !important;
}
.departamentos img[src*="tiempo"] {
content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="22" height="22" fill="none" stroke="%23B9860E" stroke-width="2.2"><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3.2 3.2" stroke-linecap="round" stroke-linejoin="round"/></svg>') !important;
width: 22px !important;
height: 22px !important;
vertical-align: middle;
}
.departamentos img[src*="personal"] {
content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="22" height="22" fill="none" stroke="%230E86A8" stroke-width="2.2"><circle cx="12" cy="7.5" r="3.6" fill="%230E86A8"/><path d="M4.5 20c.7-4.6 4-7 7.5-7s6.8 2.4 7.5 7" stroke-linecap="round"/></svg>') !important;
width: 22px !important;
height: 22px !important;
vertical-align: middle;
}
.departamentos img[src*="capital"] {
content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="22" height="22" fill="none" stroke="%238A38C4" stroke-width="2.2"><circle cx="12" cy="12" r="9"/><text x="12" y="15.5" text-anchor="middle" font-size="11" font-family="Arial, sans-serif" font-weight="700" fill="%238A38C4">$</text></svg>') !important;
width: 22px !important;
height: 22px !important;
vertical-align: middle;
}
table.activos {
width: 100%;
border-collapse: collapse;
font-size: 11px;
background: var(--panel);
border: 1px solid var(--border);
border-radius: 6px;
}
table.activos th {
background: #e9e9e9;
padding: 4px;
font-size: 11px;
text-align: center;
}
table.activos td {
padding: 4px;
border-top: 1px solid var(--border-soft);
text-align: center;
}
/* Estilos de Tabla de Activos (#tablaActivos) con borde y texto en color del activo sobre fondo suave pastel */
#tablaActivos td.actPersonalCalificado {
background-color: #FFFDF4 !important;
color: var(--a-personal) !important;
border: 1.5px solid var(--a-personal) !important;
font-weight: 700 !important;
}
#tablaActivos td.actAnalistas {
background-color: #FFF9F3 !important;
color: var(--a-analistas) !important;
border: 1.5px solid var(--a-analistas) !important;
font-weight: 700 !important;
}
#tablaActivos td.actFlujoDeEfectivo {
background-color: #F3FAF5 !important;
color: var(--a-flujo) !important;
border: 1.5px solid var(--a-flujo) !important;
font-weight: 700 !important;
}
#tablaActivos td.actCreditoEInversion {
background-color: #F3F7FE !important;
color: var(--a-credito) !important;
border: 1.5px solid var(--a-credito) !important;
font-weight: 700 !important;
}
#tablaActivos td.actTecnologia {
background-color: #FDF4F2 !important;
color: var(--a-tecnologia) !important;
border: 1.5px solid var(--a-tecnologia) !important;
font-weight: 700 !important;
}
#tablaActivos td.actTransporteYMaquinaria {
background-color: #F3F5FA !important;
color: var(--a-transporte) !important;
border: 1.5px solid var(--a-transporte) !important;
font-weight: 700 !important;
}
/* Variables de Colores de Activos según la propuesta de diseño */
:root {
--a-personal: #C79A16;
--a-analistas: #C97324;
--a-flujo: #2F9E5B;
--a-credito: #2F6FE0;
--a-tecnologia: #C6432B;
--a-transporte: #1F3B73;
}
/* Clases de colores de activos */
.actNinguno { background-color: #FFFFFF; color: var(--text) !important; }
.actPersonalCalificado {
background-color: var(--a-personal) !important;
color: #FFFFFF !important;
font-weight: 600;
}
.actAnalistas {
background-color: var(--a-analistas) !important;
color: #FFFFFF !important;
font-weight: 600;
}
.actFlujoDeEfectivo {
background-color: var(--a-flujo) !important;
color: #FFFFFF !important;
font-weight: 600;
}
.actCreditoEInversion {
background-color: var(--a-credito) !important;
color: #FFFFFF !important;
font-weight: 600;
}
.actTecnologia {
background-color: var(--a-tecnologia) !important;
color: #FFFFFF !important;
font-weight: 600;
}
.actTransporteYMaquinaria {
background-color: var(--a-transporte) !important;
color: #FFFFFF !important;
font-weight: 600;
}
/* Estilo pill/chip para los activos en tarjetas de departamento chicos */
.activo-item {
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 14px !important;
padding: 0 10px !important;
height: 28px !important;
font-size: 13px !important;
font-weight: 700 !important;
cursor: pointer;
line-height: 1.2;
white-space: nowrap;
box-sizing: border-box;
}
.activo-item.actPersonalCalificado {
border: 1.5px solid var(--a-personal) !important;
background: #FFFDF4 !important;
color: var(--a-personal) !important;
}
.activo-item.actPersonalCalificado::before {
content: "Pers. ×";
margin-right: 1px;
}
.activo-item.actAnalistas {
border: 1.5px solid var(--a-analistas) !important;
background: #FFF9F3 !important;
color: var(--a-analistas) !important;
}
.activo-item.actAnalistas::before {
content: "Anali. ×";
margin-right: 1px;
}
.activo-item.actFlujoDeEfectivo {
border: 1.5px solid var(--a-flujo) !important;
background: #F3FAF5 !important;
color: var(--a-flujo) !important;
}
.activo-item.actFlujoDeEfectivo::before {
content: "Flujo ×";
margin-right: 1px;
}
.activo-item.actCreditoEInversion {
border: 1.5px solid var(--a-credito) !important;
background: #F3F7FE !important;
color: var(--a-credito) !important;
}
.activo-item.actCreditoEInversion::before {
content: "Créd. ×";
margin-right: 1px;
}
.activo-item.actTecnologia {
border: 1.5px solid var(--a-tecnologia) !important;
background: #FDF4F2 !important;
color: var(--a-tecnologia) !important;
}
.activo-item.actTecnologia::before {
content: "Tecno. ×";
margin-right: 1px;
}
.activo-item.actTransporteYMaquinaria {
border: 1.5px solid var(--a-transporte) !important;
background: #F3F5FA !important;
color: var(--a-transporte) !important;
}
.activo-item.actTransporteYMaquinaria::before {
content: "Transp. ×";
margin-right: 1px;
}
.ui-draggable-dragging {
z-index: 999999 !important;
}
.draggable, .proyectoEncabezado, #activoReqProyectoNom1, #activoReqProyectoNom2, #activoReqProyectoNom3, .departamentos, #accionGestionarProyecto, #accionComprarCapacitacion, #accionHabilidadEspecial {
cursor: pointer;
}
/* ============ PROYECTO DESTACADO / EN TURNO (GRANDE) ============ */
.proj-featured {
background: var(--panel-2);
border: 1.5px solid var(--gold);
border-radius: 10px;
padding: 14px 12px 10px 12px;
position: relative;
z-index: 1;
box-shadow: 0 0 18px -8px rgba(185,134,14,.4);
display: flex;
flex-direction: column;
gap: 8px;
}
.featured-flag {
position: absolute;
top: -9px;
left: 14px;
background: var(--gold);
color: #FFFDF6;
font-family: var(--font-mono);
font-size: 8.5px;
font-weight: 700;
letter-spacing: .06em;
padding: 2px 9px;
border-radius: 4px;
text-transform: uppercase;
}
.pf-grid {
display: grid;
grid-template-columns: 1.2fr 0.8fr;
gap: 10px;
align-items: center;
margin-top: 4px;
}
.pf-text {
display: flex;
flex-direction: column;
gap: 4px;
min-width: 0;
}
.pf-title-block {
font-family: var(--font-body);
font-size: 16px;
font-weight: 700;
line-height: 1.2;
color: var(--text);
display: flex;
flex-direction: column-reverse;
}
.pf-title-block span {
font-family: var(--font-mono);
font-size: 13px;
letter-spacing: .08em;
color: var(--text-faint);
text-transform: uppercase;
font-weight: 700;
margin-bottom: 2px;
}
.pf-desc {
font-size: 15px;
color: var(--text-dim);
line-height: 1.35;
}
.pf-image-box {
width: 100%;
height: 95px;
border-radius: 8px;
overflow: hidden;
background: #ffffff;
border: 1px solid var(--border-soft);
display: flex;
align-items: center;
justify-content: center;
padding: 2px;
}
.pf-image-box img {
max-width: 100%;
max-height: 100%;
object-fit: contain;
}
.pf-money {
display: flex;
justify-content: space-between;
align-items: center;
font-family: var(--font-mono);
font-size: 10.5px;
margin-top: 2px;
}
.pf-money .potencial {
color: var(--green-ok) !important;
font-weight: 700;
}
.pf-money .penal {
color: var(--red) !important;
font-weight: 700;
}
.pf-assets-row {
display: flex;
gap: 6px;
margin-top: 4px;
}
.pf-asset-box {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 4px 2px;
border-radius: 8px;
border: 1.5px solid var(--border);
background: var(--panel);
text-align: center;
transition: all 0.15s ease;
}
#activoReqProyectoNom1, #activoReqProyectoNom2, #activoReqProyectoNom3 {
display: block !important;
font-size: 9px !important;
color: transparent !important; /* Oculta la cadena larga original de jsCode.js */
background: transparent !important;
background-color: transparent !important;
border: none !important;
box-shadow: none !important;
padding: 0 !important;
margin: 0 !important;
line-height: 1.2;
width: 100%;
text-align: center;
position: relative;
height: 14px;
}
#activoReqProyectoNom1::before,
#activoReqProyectoNom2::before,
#activoReqProyectoNom3::before {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
display: flex;
align-items: center;
justify-content: center;
font-family: var(--font-mono);
font-size: 9px;
font-weight: 700;
letter-spacing: .04em;
text-transform: uppercase;
}
#activoReqProyectoNom1.actPersonalCalificado::before,
#activoReqProyectoNom2.actPersonalCalificado::before,
#activoReqProyectoNom3.actPersonalCalificado::before {
content: "PERS. CAL.";
color: var(--a-personal) !important;
}
#activoReqProyectoNom1.actAnalistas::before,
#activoReqProyectoNom2.actAnalistas::before,
#activoReqProyectoNom3.actAnalistas::before {
content: "ANALISTAS";
color: var(--a-analistas) !important;
}
#activoReqProyectoNom1.actFlujoDeEfectivo::before,
#activoReqProyectoNom2.actFlujoDeEfectivo::before,
#activoReqProyectoNom3.actFlujoDeEfectivo::before {
content: "FLUJO EFVO.";
color: var(--a-flujo) !important;
}
#activoReqProyectoNom1.actCreditoEInversion::before,
#activoReqProyectoNom2.actCreditoEInversion::before,
#activoReqProyectoNom3.actCreditoEInversion::before {
content: "CRÉD. E INV.";
color: var(--a-credito) !important;
}
#activoReqProyectoNom1.actTecnologia::before,
#activoReqProyectoNom2.actTecnologia::before,
#activoReqProyectoNom3.actTecnologia::before {
content: "TECNOLOGÍA";
color: var(--a-tecnologia) !important;
}
#activoReqProyectoNom1.actTransporteYMaquinaria::before,
#activoReqProyectoNom2.actTransporteYMaquinaria::before,
#activoReqProyectoNom3.actTransporteYMaquinaria::before {
content: "TRANSP./MAQ.";
color: var(--a-transporte) !important;
}
.pf-asset-val {
font-family: var(--font-mono);
font-size: 14px;
font-weight: 800;
line-height: 1.1;
margin-top: 2px;
color: var(--text);
}
/* Estilos de bordes y fondos claros de los asset boxes según el tipo de activo */
.pf-asset-box:has(.actPersonalCalificado) {
border: 1.5px solid var(--a-personal) !important;
background: #FFFDF4 !important;
}
.pf-asset-box:has(.actAnalistas) {
border: 1.5px solid var(--a-analistas) !important;
background: #FFF9F3 !important;
}
.pf-asset-box:has(.actFlujoDeEfectivo) {
border: 1.5px solid var(--a-flujo) !important;
background: #F3FAF5 !important;
}
.pf-asset-box:has(.actCreditoEInversion) {
border: 1.5px solid var(--a-credito) !important;
background: #F3F7FE !important;
}
.pf-asset-box:has(.actTecnologia) {
border: 1.5px solid var(--a-tecnologia) !important;
background: #FDF4F2 !important;
}
.pf-asset-box:has(.actTransporteYMaquinaria) {
border: 1.5px solid var(--a-transporte) !important;
background: #F3F5FA !important;
}
/* Fila de Activos Pagados / Asignados (#activosProyectoGde) */
.pf-paid-row {
display: flex;
gap: 6px;
margin-top: 4px;
}
.pf-paid-box {
flex: 1;
display: flex;
align-items: center;
justify-content: center;
padding: 3px 6px;
border-radius: 6px;
border: 1.5px solid var(--border-soft);
background: var(--panel-2);
font-family: var(--font-mono);
text-align: center;
}
#activoReqProyectoCant1,
#activoReqProyectoCant2,
#activoReqProyectoCant3 {
font-family: var(--font-mono) !important;
font-size: 14px !important;
font-weight: 800 !important;
line-height: 1.1 !important;
background: transparent !important;
background-color: transparent !important;
border: none !important;
box-shadow: none !important;
padding: 0 !important;
margin: 0 !important;
}
#activoReqProyectoCant1.actPersonalCalificado,
#activoReqProyectoCant2.actPersonalCalificado,
#activoReqProyectoCant3.actPersonalCalificado {
color: var(--a-personal) !important;
}
#activoReqProyectoCant1.actAnalistas,
#activoReqProyectoCant2.actAnalistas,
#activoReqProyectoCant3.actAnalistas {
color: var(--a-analistas) !important;
}
#activoReqProyectoCant1.actFlujoDeEfectivo,
#activoReqProyectoCant2.actFlujoDeEfectivo,
#activoReqProyectoCant3.actFlujoDeEfectivo {
color: var(--a-flujo) !important;
}
#activoReqProyectoCant1.actCreditoEInversion,
#activoReqProyectoCant2.actCreditoEInversion,
#activoReqProyectoCant3.actCreditoEInversion {
color: var(--a-credito) !important;
}
#activoReqProyectoCant1.actTecnologia,
#activoReqProyectoCant2.actTecnologia,
#activoReqProyectoCant3.actTecnologia {
color: var(--a-tecnologia) !important;
}
#activoReqProyectoCant1.actTransporteYMaquinaria,
#activoReqProyectoCant2.actTransporteYMaquinaria,
#activoReqProyectoCant3.actTransporteYMaquinaria {
color: var(--a-transporte) !important;
}
.pf-foot {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 9.5px;
color: var(--text-faint);
border-top: 1px solid var(--border-soft);
padding-top: 6px;
margin-top: 4px;
}
.manto {
font-family: var(--font-mono);
font-weight: 600;
color: var(--text-dim);
background: transparent !important;
}
.status-badge {
font-family: var(--font-mono);
font-size: 8px;
font-weight: 700;
padding: 2px 7px;
border-radius: 9px;
background: var(--panel);
border: 1px solid var(--border);
color: var(--text-dim);
}
/* ============ PROYECTOS SECUNDARIOS / ACTIVOS (PROYECTOS CHICOS 1 AL 6) ============ */
.proj-grid-sm {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 10px;
margin-top: 6px;
}
.proj-card-sm {
width: 100%;
min-width: 0;
}
.pm-card {
background: var(--panel-2);
border: 1.5px solid var(--border);
border-radius: 8px;
padding: 10px;
display: flex;
flex-direction: column;
gap: 6px;
box-shadow: 0 1px 3px rgba(0,0,0,.04);
transition: all 0.15s ease;
position: relative;
cursor: pointer;
min-height: 125px;
box-sizing: border-box;
width: 100%;
min-width: 0;
overflow: hidden;
}
.pm-card:hover {
border-color: #A0AABF;
box-shadow: 0 3px 8px rgba(0,0,0,.08);
}
.pm-header {
display: flex;
flex-direction: column;
gap: 2px;
width: 100%;
}
.pm-dept {
font-family: var(--font-mono);
font-size: 12px;
font-weight: 700;
letter-spacing: .06em;
color: var(--text-faint);
text-transform: uppercase;
}
.pm-title {
font-family: var(--font-body);
font-size: 13px;
font-weight: 700;
color: var(--text);
line-height: 1.25;
width: 100%;
word-wrap: break-word;
overflow-wrap: break-word;
}
.pm-puntos {
font-family: var(--font-mono);
font-size: 12px;
font-weight: 700;
color: var(--green-ok);
line-height: 1.2;
word-wrap: break-word;
overflow-wrap: break-word;
margin-top: 1px;
}
.pm-desc {
font-size: 12px;
color: var(--text-dim);
line-height: 1.35;
display: -webkit-box;
line-clamp: 2;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
/* Activos Requeridos Compactos en Proyectos Chicos (Inmunes a jsCode.js class wipes) */
.pm-assets-row {
display: flex;
flex-wrap: wrap;
gap: 4px;
align-items: center;
justify-content: center;
margin-top: 2px;
}
.pm-card #activoReq1,
.pm-card #activoReq2,
.pm-card #activoReq3 {
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
border-radius: 12px !important;
padding: 2px 7px !important;
font-family: var(--font-mono) !important;
font-size: 11px !important;
font-weight: 700 !important;
line-height: 1.2 !important;
white-space: nowrap !important;
margin: 1px !important;
}
.pm-card #activoReq1.actPersonalCalificado,
.pm-card #activoReq2.actPersonalCalificado,
.pm-card #activoReq3.actPersonalCalificado {
border: 1.5px solid var(--a-personal) !important;
background: #FFFDF4 !important;
color: var(--a-personal) !important;
}
.pm-card #activoReq1.actPersonalCalificado::before,
.pm-card #activoReq2.actPersonalCalificado::before,
.pm-card #activoReq3.actPersonalCalificado::before {
content: "● ";
}
.pm-card #activoReq1.actAnalistas,
.pm-card #activoReq2.actAnalistas,
.pm-card #activoReq3.actAnalistas {
border: 1.5px solid var(--a-analistas) !important;
background: #FFF9F3 !important;
color: var(--a-analistas) !important;
}
.pm-card #activoReq1.actAnalistas::before,
.pm-card #activoReq2.actAnalistas::before,
.pm-card #activoReq3.actAnalistas::before {
content: "● ";
}
.pm-card #activoReq1.actFlujoDeEfectivo,
.pm-card #activoReq2.actFlujoDeEfectivo,
.pm-card #activoReq3.actFlujoDeEfectivo {
border: 1.5px solid var(--a-flujo) !important;
background: #F3FAF5 !important;
color: var(--a-flujo) !important;
}
.pm-card #activoReq1.actFlujoDeEfectivo::before,
.pm-card #activoReq2.actFlujoDeEfectivo::before,
.pm-card #activoReq3.actFlujoDeEfectivo::before {
content: "● ";
}
.pm-card #activoReq1.actCreditoEInversion,
.pm-card #activoReq2.actCreditoEInversion,
.pm-card #activoReq3.actCreditoEInversion {
border: 1.5px solid var(--a-credito) !important;
background: #F3F7FE !important;
color: var(--a-credito) !important;
}
.pm-card #activoReq1.actCreditoEInversion::before,
.pm-card #activoReq2.actCreditoEInversion::before,
.pm-card #activoReq3.actCreditoEInversion::before {
content: "● ";
}
.pm-card #activoReq1.actTecnologia,
.pm-card #activoReq2.actTecnologia,
.pm-card #activoReq3.actTecnologia {
border: 1.5px solid var(--a-tecnologia) !important;
background: #FDF4F2 !important;
color: var(--a-tecnologia) !important;
}
.pm-card #activoReq1.actTecnologia::before,
.pm-card #activoReq2.actTecnologia::before,
.pm-card #activoReq3.actTecnologia::before {
content: "● ";
}
.pm-card #activoReq1.actTransporteYMaquinaria,
.pm-card #activoReq2.actTransporteYMaquinaria,
.pm-card #activoReq3.actTransporteYMaquinaria {
border: 1.5px solid var(--a-transporte) !important;
background: #F3F5FA !important;
color: var(--a-transporte) !important;
}
.pm-card #activoReq1.actTransporteYMaquinaria::before,
.pm-card #activoReq2.actTransporteYMaquinaria::before,
.pm-card #activoReq3.actTransporteYMaquinaria::before {
content: "● ";
}
.pm-card #activoReq1.actNinguno,
.pm-card #activoReq2.actNinguno,
.pm-card #activoReq3.actNinguno,
.pm-card #activoReq1:empty,
.pm-card #activoReq2:empty,
.pm-card #activoReq3:empty {
display: none !important;
}
/* Mantenimiento en Proyectos Chicos */
.pm-manto {
font-family: var(--font-mono);
font-size: 11px;
font-weight: 700;
color: var(--text-faint);
letter-spacing: .04em;
text-transform: uppercase;
margin-top: 2px;
background: transparent !important;
text-align: center;
}
/* Activos Pagados / Asignados en Proyectos Chicos (Inmunes a jsCode.js class wipes) */
.pm-paid-row {
display: flex;
gap: 4px;
align-items: center;
justify-content: center;
margin-top: 2px;
}
.pm-card #activoAsignado1,
.pm-card #activoAsignado2,
.pm-card #activoAsignado3 {
font-family: var(--font-mono) !important;
font-size: 12px !important;
font-weight: 800 !important;
line-height: 1 !important;
background: transparent !important;
background-color: transparent !important;
border: 1px solid #b7b7b7 !important;
border-radius: 4px !important;
padding: 2px 7px !important;
text-align: center !important;
display: inline-block !important;
margin: 1px !important;
}
.pm-card #activoAsignado1:empty,
.pm-card #activoAsignado2:empty,
.pm-card #activoAsignado3:empty {
display: none !important;
}
.pm-card #activoAsignado1.actPersonalCalificado,
.pm-card #activoAsignado2.actPersonalCalificado,
.pm-card #activoAsignado3.actPersonalCalificado {
color: var(--a-personal) !important;
}
.pm-card #activoAsignado1.actAnalistas,
.pm-card #activoAsignado2.actAnalistas,
.pm-card #activoAsignado3.actAnalistas {
color: var(--a-analistas) !important;
}
.pm-card #activoAsignado1.actFlujoDeEfectivo,
.pm-card #activoAsignado2.actFlujoDeEfectivo,
.pm-card #activoAsignado3.actFlujoDeEfectivo {
color: var(--a-flujo) !important;
}
.pm-card #activoAsignado1.actCreditoEInversion,
.pm-card #activoAsignado2.actCreditoEInversion,
.pm-card #activoAsignado3.actCreditoEInversion {
color: var(--a-credito) !important;
}
.pm-card #activoAsignado1.actTecnologia,
.pm-card #activoAsignado2.actTecnologia,
.pm-card #activoAsignado3.actTecnologia {
color: var(--a-tecnologia) !important;
}
.pm-card #activoAsignado1.actTransporteYMaquinaria,
.pm-card #activoAsignado2.actTransporteYMaquinaria,
.pm-card #activoAsignado3.actTransporteYMaquinaria {
color: var(--a-transporte) !important;
}
/* ============ COLUMNA CENTRAL (DEPARTAMENTOS) ============ */
.col-departamentos {
display: flex;
flex-direction: column;
gap: 12px;
}
.card-depto-gde {
background: var(--panel);
border: 2px solid var(--gold);
border-radius: var(--radius);
padding: 12px;
box-shadow: 0 2px 8px rgba(185,134,14,.15);
}
.dept-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 10px;
}
.dept-card-sm {
background: var(--panel);
border: 1.5px solid var(--border);
border-radius: var(--radius);
padding: 12px;
box-shadow: 0 1px 3px rgba(23,27,36,.05);
display: flex;
flex-direction: column;
gap: 10px;
transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.dept-card-sm:hover {
border-color: #A0AABF;
box-shadow: 0 3px 8px rgba(0,0,0,.08);
}
.dept-header-row {
display: flex;
align-items: center;
gap: 10px;
}
.dept-avatar-box {
width: 130px;
height: 130px;
border-radius: 10px;
background: var(--panel-2);
border: 1px solid var(--border-soft);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
overflow: hidden;
}
.dept-avatar-box img {
height: 123px;
width: auto;
object-fit: contain;
}
.dept-info-box {
display: flex;
flex-direction: column;
justify-content: center;
gap: 1px;
}
.dept-title {
font-family: var(--font-display);
font-size: 14.5px;
font-weight: 700;
color: var(--text);
line-height: 1.2;
}
.dept-members {
font-family: var(--font-body);
font-size: 10.5px;
color: var(--text-dim);
}
.dept-habilidad-row {
width: 100%;
border: 1px dashed #C3C9D6;
border-radius: 8px;
background: var(--panel-2);
padding: 6px 10px;
font-size: 15px;
color: var(--text-dim);
line-height: 1.3;
box-sizing: border-box;
}
.dept-habilidad-lbl {
font-weight: 700;
color: var(--text);
}
.dept-resources-assets-row {
width: 100%;
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 6px;
}
.dept-res-chip {
display: inline-flex;
align-items: center;
gap: 5px;
background: var(--panel-2);
border: 1px solid var(--border-soft);
border-radius: 6px;
padding: 3px 8px;
height: 28px;
box-sizing: border-box;
}
.val-tiempo {
color: #C79A16 !important;
font-family: var(--font-mono);
font-weight: 700;
font-size: 13px;
}
.val-personal {
color: #0E86A8 !important;
font-family: var(--font-mono);
font-weight: 700;
font-size: 13px;
}
.val-capital {
color: #8A38C4 !important;
font-family: var(--font-mono);
font-weight: 700;
font-size: 13px;
}
.dept-habilidades-acreditadas-list {
width: 100%;
display: flex;
flex-direction: column;
gap: 3px;
font-size: 11px;
}
.dept-hab-item {
color: var(--text);
font-size: 15px;
line-height: 1.3;
}
.dept-hab-item:empty {
display: none !important;
}
/* ============ COLUMNA DERECHA (PROYECTOS) ============ */
.col-proyectos {
display: flex;
flex-direction: column;
gap: 12px;
}
.card-proj-gde {
background: var(--panel);
border: 2px solid #007bff;
border-radius: var(--radius);
padding: 12px;
box-shadow: 0 2px 8px rgba(0,123,255,.15);
}
.proj-grid-sm {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 10px;
}
.proj-card-sm {
background: var(--panel);
border: 1.5px solid var(--border);
border-radius: var(--radius);
padding: 8px;
box-shadow: 0 1px 3px rgba(0,0,0,.04);
}
/* jQuery UI Alert Titlebar crimson theme */
.ui-dialog-titlebar {
background-color: crimson;
color: white;
}
.ui-widget.ui-widget-content {
border-color: crimson;
border-width: 5px;
}
.ui-dialog .ui-dialog-content {
font-size: 15px;
font-weight: bold;
text-align: center;
}
.ui-dialog .ui-dialog-buttonpane button {
font-size: 17px;
}