/* vorpc-suite-core/css/admin-dashboard.css */
:root {
--vorpc-primary: #002b42;
--vorpc-secondary: #004d73;
--vorpc-accent: #0073aa;
--vorpc-bg-card: #ffffff;
--vorpc-radius: 12px;
--vorpc-azul-corp: #00273f;
--vorpc-azul-claro: #d3d7dc;
--vorpc-azul-oscuro: #2f465c;
--vorpc-verde-corp: #25b791;
--vorpc-verde-claro: #e0f3ec;
--vorpc-verde-oscuro: #40ab8b;
--vorpc-naranja-corp: #fc724c;
--vorpc-naranja-claro: #ffe8e0;
--vorpc-naranja-oscuro: #ce5f40;
--vorpc-gris-corp: #ededed;
--vorpc-gris-claro: #f6f6f6;
--vorpc-gris-oscuro: #c1c1c1;
/* Textos */
--vorpc-text-main: #64748b;
--vorpc-text-dark: #535d6c;
--vorpc-text-light: #e4e6eb;
/* Colores de Categorización (No confundibles con estados) */
--vorpc-regla-1: #8b5cf6; /* Púrpura (Creatividad/Tech) */
--vorpc-regla-2: #0ea5e9; /* Cian/Azul Cielo (Sistemas) */
--vorpc-regla-3: #6366f1; /* Índigo (Hardware) */
--vorpc-regla-4: #94a3b8; /* Slate (Accesorios) */
}
.vorpc-dashboard {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
max-width: 1300px;
margin: 20px auto;
}
/* Cabecera */
.vorpc-header {
background: linear-gradient(135deg, var(--vorpc-primary) 0%, var(--vorpc-secondary) 70%, #005a87 100%);
color: #fff;
padding: 30px 40px;
border-radius: var(--vorpc-radius);
margin-bottom: 25px;
box-shadow: 0 4px 15px rgba(0,0,0,0.1);
position: relative;
overflow: hidden;
}
.vorpc-header h1 {
color: #fff;
margin: 0;
font-size: 1.8rem;
}
.vorpc-header p {
font-size: 1rem;
opacity: 0.8;
margin: 5px 0 0 0;
}
.vorpc-header h1 span {
display: inline-block;
animation: flight 3s ease-in-out infinite;
}
@keyframes flight {
0%, 100% { transform: translateY(0) rotate(0); }
50% { transform: translateY(-5px) rotate(5deg); }
}
/* Panel de Filtros */
.vorpc-info-panel {
background: #ffffff;
border-radius: 16px;
padding: 25px;
margin-bottom: 30px;
border: 1px solid var(--vorpc-gris-corp);
box-shadow: 0 4px 15px rgba(0,0,0,0.05); /* Sombra suave para profundidad */
}
.info-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
border-bottom: 1px solid var(--vorpc-gris-corp);
padding-bottom: 15px;
}
.info-header h3 {
margin: 0;
color: var(--vorpc-azul-corp);
font-size: 16px;
font-weight: 800;
}
.info-columns {
display: flex;
gap: 15px;
grid-template-columns: repeat(3, 1fr);
}
.info-col {
flex: 1;
padding: 15px 20px;
border-radius: 12px;
background: var(--vorpc-gris-claro);
border: 1px solid var(--vorpc-gris-corp);
transition: all 0.3s ease;
cursor: pointer;
}
.info-col.active {
transform: translateY(-2px);
z-index: 2;
}
/* Selección para Productos (Verde) */
.info-col[data-target="productos"]:hover,
.info-col[data-target="productos"].active {
background: var(--vorpc-verde-claro);
border-color: var(--vorpc-verde-corp);
transform: translateY(-3px);
box-shadow: 0 6px 12px rgba(37, 183, 145, 0.15);
border: 2px solid var(--vorpc-verde-corp) !important;
border-bottom: 3px solid var(--vorpc-verde-corp) !important;
transition: all 0.3s ease;
}
.info-col[data-target="productos"]:hover strong {
color: var(--vorpc-verde-oscuro);
}
.info-col[data-target="productos"]:hover span.dashicons {
color: #2ecc71;
transform: scale(1.1);
transition: transform 0.3s ease;
}
/* Selección para Pedidos (Naranja) */
.info-col[data-target="pedidos"]:hover,
.info-col[data-target="pedidos"].active {
background: var(--vorpc-naranja-claro);
border-color: var(--vorpc-naranja-corp);
transform: translateY(-3px);
box-shadow: 0 6px 12px rgba(252, 114, 76, 0.15);
border: 2px solid var(--vorpc-naranja-corp) !important;
border-bottom: 3px solid var(--vorpc-naranja-corp) !important;
transition: all 0.3s ease;
}
.info-col[data-target="pedidos"]:hover strong {
color: var(--vorpc-naranja-oscuro);
}
.info-col[data-target="pedidos"]:hover span.dashicons {
color: var(--vorpc-naranja-corp);
transform: scale(1.1);
transition: transform 0.3s ease;
}
/* Selección para Web General (Azul) */
.info-col[data-target="general"]:hover,
.info-col[data-target="general"].active {
background: var(--vorpc-azul-claro);
border-color: var(--vorpc-azul-corp);
transform: translateY(-3px);
box-shadow: 0 6px 12px rgba(0, 39, 63, 0.15);
border: 2px solid var(--vorpc-azul-corp) !important;
border-bottom: 3px solid border-bottom: 3px solid #00273f !important; !important;
transition: all 0.3s ease;
}
.info-col[data-target="general"]:hover strong { color: var(--vorpc-azul-corp); }
.info-col[data-target="general"]:hover span.dashicons {
color: var(--vorpc-azul-oscuro);
transform: scale(1.1);
transition: transform 0.3s ease;
}
.info-col.active strong span.dashicons {
transform: scale(1.2);
color: inherit; /* Mantiene el color del borde en el icono */
transition: transform 0.3s ease;
}
.info-col strong {
display: block;
font-size: 14px;
color: var(--vorpc-azul-oscuro);
margin-bottom: 4px;
transition: color 0.3s ease;
}
.info-col p {
margin: 0;
font-size: 11px;
color: var(--vorpc-text-main);
font-weight: 500;
}
.filter-trigger p {
font-size: 0.8rem;
opacity: 0.7;
}
/* Grid de Tarjetas */
.vorpc-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
gap: 20px;
align-items: stretch; /* Esto hace que todas las cajas de una fila midan lo mismo */
}
/* El contenedor que usan los otros plugins */
.vorpc-card-item {
display: flex; /* Importante para que el hijo ocupe el 100% de altura */
}
/* Estilo de Tarjeta */
.vorpc-card {
position: relative;
display: flex;
flex-direction: column;
width: 100%;
padding: 25px;
height: 100%;
min-height: 450px;
background: var(--vorpc-bg-card);
border: 1px solid rgba(0,0,0,0.05);
border-radius: var(--vorpc-radius);
overflow: hidden;
transition: all 0.3s ease;
box-sizing: border-box;
transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}
/* Badge (Etiqueta pequeña en la esquina) */
.vorpc-card-type {
position: absolute;
top: 15px;
right: 15px;
font-size: 9px;
font-weight: 800;
text-transform: uppercase;
color: var(--cat-color);
background: var(--cat-bg);
padding: 2px 8px;
border-radius: 20px;
letter-spacing: 0.5px;
}
.vorpc-card:hover {
transform: translateY(-4px);
background: #fff;
}
.vorpc-card-icon {
font-size: 32px;
margin-bottom: 15px;
text-align: center;
}
.vorpc-card h2 {
margin: 0 0 12px 0;
font-size: 1.2rem;
text-align: center;
color: var(--vorpc-primary);
}
/* Status Pills */
.vorpc-status {
display: flex;
gap: 6px;
margin-bottom: 15px;
justify-content: center;
flex-wrap: wrap;
}
.vorpc-status span {
padding: 3px 10px;
border-radius: 20px;
font-size: 10px;
font-weight: 800;
text-transform: uppercase;
letter-spacing: 0.5px;
border: 1px solid rgba(0,0,0,0.05);
}
/* Colores de estado */
.vorpc-status .on {
background: #dcfce7;
color: #166534;
} /* Verde suave */
.vorpc-status .off {
background: #fee2e2;
color: #991b1b;
} /* Rojo suave */
.vorpc-status .neutral {
background: #f3f4f6;
color: #374151;
} /* Gris */
/* Estado vacío */
.vorpc-empty-state {
grid-column: 1 / -1; /* Ocupa todo el ancho */
text-align: center;
color: #94a3b8;
padding: 60px 40px;
border: 2px dashed #e2e8f0;
border-radius: var(--vorpc-radius);
background: rgba(249, 250, 251, 0.5);
}
.vorpc-empty-state p {
font-size: 1.1rem;
margin: 0;
}
/* --- Mejoras para la tarjeta de Diseño de Ficha --- */
/* Contenedor de la lista de características */
.vorpc-features {
list-style: none;
padding: 0;
margin: 15px 0;
display: flex;
flex-direction: column;
gap: 8px;
}
.vorpc-features li {
color: var(--vorpc-text-dark);
font-weight: 600;
transition: all 0.2s ease;
}
.vorpc-features li:hover {
transform: translateX(5px);
color: var(--vorpc-azul-corp);
}
/* Círculos de colores (Dots) estilizados */
.vorpc-features li span {
width: 10px;
height: 10px;
border-radius: 3px; /* Forma cuadrada redondeada para diferenciar de estados circulares */
display: inline-block;
}
.vorpc-card-footer {
margin-top: auto;
display: flex;
gap: 10px;
padding: 15px 0 0 0;
justify-content: center; /* Centra los botones para que sigan la estética de los títulos */
width: 100%;
background: #fff;
z-index: 10;
}
.vorpc-card-footer .button,
.vorpc-card-footer .button-primary {
background: var(--vorpc-accent) !important; /* */
border: none !important; /* */
border-radius: 8px !important; /* Más redondeado para hacer juego con la tarjeta */
padding: 8px 16px !important; /* */
height: auto !important;
line-height: 1.4 !important;
font-weight: 600 !important;
transition: all 0.3s ease !important; /* */
box-shadow: 0 4px 10px rgba(0, 115, 170, 0.2) !important; /* */
}
.vorpc-card-footer .button:hover,
.vorpc-card-footer .button-primary:hover {
background: var(--vorpc-secondary) !important; /* */
transform: translateY(-2px); /* */
box-shadow: 0 6px 15px rgba(0, 115, 170, 0.3) !important; /* */
}
/* Colores dinámicos usando los de tu imagen original */
.vorpc-features li.f-orange span {
background: #f97316;
box-shadow: 0 0 5px rgba(249, 115, 22, 0.5);
}
.vorpc-features li.f-blue span {
background: #3b82f6;
box-shadow: 0 0 5px rgba(59, 130, 246, 0.5);
}
.vorpc-features li.f-frost-blue span {
background: #0369a1;
box-shadow: 0 0 5px rgba(240, 249, 255, 0.5);
}
.vorpc-features li.f-purple span {
background: #8b5cf6;
box-shadow: 0 0 8px rgba(139, 92, 246, 0.4);
}
.vorpc-features li.f-green span {
background: #0ea5e9;
box-shadow: 0 0 8px rgba(14, 165, 233, 0.4);
}
.vorpc-features li.f-red span {
background: #6366f1;
box-shadow: 0 0 8px rgba(99, 102, 241, 0.4);
}
.vorpc-features li.f-yellow span {
background: #94a3b8;
box-shadow: 0 0 8px rgba(148, 163, 184, 0.4);
}
.vorpc-features li.f-blue-corp span {
background: var(--vorpc-azul-corp);
box-shadow: 0 4px 10px rgba(0, 39, 63, 0.08);
}
.vorpc-features li.f-blue-claro span {
background: var(--vorpc-azul-claro);
box-shadow: 0 4px 10px rgba(211, 215, 220, 0.08);
}
.vorpc-card-item {
transition: opacity 0.4s ease, transform 0.4s ease;
}
.hidden {
display: none !important;
opacity: 0;
transform: scale(0.95);
}
.filter-badge {
font-size: 10px;
background: #eee;
padding: 2px 8px;
border-radius: 10px;
text-transform: uppercase;
margin-top: 5px;
display: inline-block;
}
/* Estilos para el Icono tipo App */
.vorpc-icon-wrapper {
width: 60px;
height: 60px;
background: #f0f4f8;
border-radius: 16px;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 20px;
transition: all 0.3s ease;
}
.vorpc-card:hover .vorpc-icon-wrapper {
transform: scale(1.1) rotate(-5deg);
}
/* Colores por Categoría (Barras superiores y badges) */
.cat-productos .vorpc-card-type {
border-bottom: 3px solid var(--vorpc-verde-corp);
box-shadow: 0 4px 10px rgba(37, 183, 145, 0.08);
color: var(--vorpc-verde-corp);
}
.cat-productos .vorpc-icon-wrapper span {
color: var(--vorpc-verde-corp);
}
.cat-productos .vorpc-card {
border: 1px solid var(--vorpc-verde-claro); /* Borde suave verde */
border-bottom: 4px solid var(--vorpc-verde-corp);
box-shadow: 0 4px 10px rgba(37, 183, 145, 0.08);
}
.cat-productos .vorpc-card:hover {
border-color: var(--vorpc-verde-corp);
box-shadow: 0 15px 30px rgba(37, 183, 145, 0.18);
transform: translateY(-5px);
}
.cat-pedidos .vorpc-card-type {
color: var(--vorpc-naranja-corp);
border-bottom: 3px solid var(--vorpc-naranja-corp);
box-shadow: 0 4px 10px rgba(252, 114, 76, 0.08);
}
.cat-pedidos .vorpc-icon-wrapper span {
color: var(--vorpc-naranja-corp);
}
.cat-pedidos .vorpc-card {
border: 1px solid var(--vorpc-naranja-claro); /* Borde suave naranja */
border-bottom: 4px solid var(--vorpc-naranja-corp);
box-shadow: 0 4px 10px rgba(252, 114, 76, 0.08);
}
.cat-pedidos .vorpc-card:hover {
border-color: var(--vorpc-naranja-corp);
box-shadow: 0 15px 30px rgba(252, 114, 76, 0.18);
transform: translateY(-5px);
}
.cat-general .vorpc-card {
border: 1px solid var(--vorpc-azul-claro); /* Borde suave azul */
border-bottom: 4px solid var(--vorpc-azul-corp); /* Acento fuerte abajo */
box-shadow: 0 4px 10px rgba(0, 39, 63, 0.08);
}
.cat-general .vorpc-card:hover {
border-color: var(--vorpc-azul-corp);
box-shadow: 0 15px 30px rgba(0, 39, 63, 0.15);
transform: translateY(-5px);
}
.cat-general .vorpc-card-type {
border-bottom: 3px solid var(--vorpc-azul-corp);
box-shadow: 0 4px 6px -1px rgba(0, 39, 63, 0.1);
}
.cat-general .vorpc-icon-wrapper span {
color: var(--vorpc-azul-corp);
}
.vorpc-card[style*="--cat-color: #2ecc71"]:hover,
.vorpc-card[style*="--cat-color:#2ecc71"]:hover {
border-color: #2ecc71 !important;
box-shadow: 0 15px 35px rgba(46, 204, 113, 0.15); /* Glow verde */
}
.vorpc-card[style*="--cat-color: #3498db"]:hover,
.vorpc-card[style*="--cat-color:#3498db"]:hover {
border-color: #3498db !important;
box-shadow: 0 15px 35px rgba(52, 152, 219, 0.15); /* Glow azul */
}
.vorpc-card[style*="--cat-color: #f39c12"]:hover,
.vorpc-card[style*="--cat-color:#f39c12"]:hover {
border-color: #f39c12 !important;
box-shadow: 0 15px 35px rgba(243, 156, 18, 0.15); /* Glow naranja */
}
.vorpc-card:hover .vorpc-card-icon {
background-color: #fff;
box-shadow: 0 0 15px var(--cat-color);
transform: scale(1.05);
}
@media (max-width: 768px) {
.info-columns {
grid-template-columns: 1fr;
}
.vorpc-header {
padding: 20px;
text-align: center;
}
}
/* Indicadores de Estado en Tarjetas */
.status-dot {
width: 10px;
height: 10px;
border-radius: 50%;
display: inline-block;
margin-right: 5px;
}
.dot-info {
background-color: #94a3b8;
box-shadow: 0 0 8px #94a3b8;
} /* Gris (Pendiente/Info) */
.dot-success {
background-color: #2ecc71;
box-shadow: 0 0 8px #2ecc71;
} /* Verde */
.dot-skipped {
background-color: #3498db;
box-shadow: 0 0 8px #3498db;
} /* Azul (Saltado) */
.dot-warning {
background-color: #f39c12;
box-shadow: 0 0 8px #f39c12;
} /* Naranja */
.dot-error {
background-color: #e74c3c;
box-shadow: 0 0 8px #e74c3c;
} /* Rojo */
.status-text {
font-size: 11px;
text-transform: uppercase;
font-weight: bold;
color: var(--vorpc-text-light);
}
.vorpc-status-bar-container {
display: flex;
align-items: center;
background: #ffffff;
padding: 12px 25px;
border-radius: 12px;
margin-bottom: 30px;
border: 1px solid var(--vorpc-gris-corp);
/* Recuperamos la sombra que se había perdido */
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.07), 0 2px 4px -1px rgba(0, 0, 0, 0.04);
gap: 20px;
}
.status-bar-label {
font-size: 11px;
font-weight: 800;
text-transform: uppercase;
color: var(--vorpc-azul-corp); /* Usando tu Azul Corporativo */
border-right: 2px solid var(--vorpc-gris-corp);
padding-right: 20px;
letter-spacing: 0.5px;
}
.status-bar-items {
display: flex;
gap: 12px;
}
.s-item {
display: flex;
align-items: center;
gap: 8px;
font-size: 12px;
padding: 6px 14px;
border-radius: 8px;
font-weight: 600;
transition: all 0.2s ease;
border: 1px solid transparent;
cursor: pointer;
background: var(--vorpc-gris-claro);
color: var(--vorpc-text-main);
}
.s-item:hover {
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(0,0,0,0.08);
background: #fff;
border-color: var(--vorpc-azul-claro);
}
/* Ajuste para que los puntos sean proporcionales a la línea única */
.s-item .status-dot {
width: 8px;
height: 8px;
border-radius: 50%; /* Sin brillo aquí para que sea sobrio */
}
.legend-badge-success {
background: #f0fdf4;
color: #16a34a;
border-color: #bbf7d0;
}
.legend-badge-skipped {
background: #f0f9ff;
color: #0284c7;
border-color: #bae6fd;
}
.legend-badge-warning {
background: #fffbeb;
color: #d97706;
border-color: #fef3c7;
}
.legend-badge-error {
background: #fef2f2;
color: #dc2626;
border-color: #fecaca;
}
.legend-badge-info {
background: #f8fafc;
color: #64748b;
border-color: #e2e8f0;
}
#reset-filter {
border-radius: 8px;
font-weight: 700;
text-transform: uppercase;
font-size: 10px;
background: var(--vorpc-gris-claro);
color: var(--vorpc-azul-corp);
border: 1px solid var(--vorpc-gris-oscuro);
}
/*span de las caracteristicas*/
span.f-orange,span.f-blue, span.f-frost-blue,span.f-purple,span.f-green,span.f-red,span.f-yellow,span.f-blue-corp,span.f-blue-claro {
display: inline-block;
width: 12px;
height: 12px;
border-radius: 3px;
margin-right: 8px;
vertical-align: middle;
}
span.f-orange {
background: #f97316;
box-shadow: 0 0 5px rgba(249, 115, 22, 0.5);
}
span.f-blue {
background: #3b82f6;
box-shadow: 0 0 5px rgba(59, 130, 246, 0.5);
}
span.f-frost-blue {
background: #0369a1;
box-shadow: 0 0 5px rgba(240, 249, 255, 0.5);
}
span.f-purple {
background: #8b5cf6;
box-shadow: 0 0 8px rgba(139, 92, 246, 0.4);
}
span.f-green {
background: #0ea5e9;
box-shadow: 0 0 8px rgba(14, 165, 233, 0.4);
}
span.f-red {
background: #6366f1;
box-shadow: 0 0 8px rgba(99, 102, 241, 0.4);
}
span.f-yellow {
background: #94a3b8;
box-shadow: 0 0 8px rgba(148, 163, 184, 0.4);
}
span.f-blue-corp {
background: var(--vorpc-azul-corp);
box-shadow: 0 4px 10px rgba(0, 39, 63, 0.08);
}
span.f-blue-claro {
background: var(--vorpc-azul-claro);
box-shadow: 0 4px 10px rgba(211, 215, 220, 0.08);
}
/* Pildorita Compacta para Tablas */
.vorpc-pill {
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
padding: 2px 6px !important;
border-radius: 4px !important;
font-size: 9px !important; /* Más pequeña para que no empuje */
font-weight: 700 !important;
line-height: 1 !important;
margin-left: 10px !important;
vertical-align: middle !important; /* Alinea con el centro del texto */
border: 1px solid !important;
white-space: nowrap !important; /* Evita que el ON/OFF se baje */
height: 16px !important;
text-decoration: none !important;
}
.pill-dot {
width: 6px !important;
height: 6px !important;
min-width: 6px !important;
border-radius: 50% !important;
margin-right: 4px !important;
display: inline-block !important;
}
/* Colores */
.pill-active { background: #e0f3ec !important; color: #25b791 !important; border-color: #25b791 !important; }
.pill-active .pill-dot { background: #25b791 !important; }
.pill-disabled { background: #f1f5f9 !important; color: #64748b !important; border-color: #cbd5e1 !important; }
.pill-disabled .pill-dot { background: #94a3b8 !important; }
/* La fecha muy pequeña al lado */
.pill-date {
font-size: 9px !important;
color: #94a3b8;
margin-left: 4px;
border-left: 1px solid #cbd5e1;
padding-left: 4px;
}
.pill-error {
background: #fef2f2 !important; /* Un rojo/naranja muy clarito de fondo */
color: #fc724c !important;
border-color: #fdba74 !important;
}
.pill-error .pill-dot { background: #fc724c !important; }
Warning: Cannot modify header information - headers already sent by (output started at /home/vorpcportugal/web/vorpcportugal.pt/public_html/wp-content/plugins/vorpc-suite-core/vorpc-suite-core.php:1) in /home/vorpcportugal/web/vorpcportugal.pt/public_html/wp-includes/pluggable.php on line 1531
Warning: Cannot modify header information - headers already sent by (output started at /home/vorpcportugal/web/vorpcportugal.pt/public_html/wp-content/plugins/vorpc-suite-core/vorpc-suite-core.php:1) in /home/vorpcportugal/web/vorpcportugal.pt/public_html/wp-includes/pluggable.php on line 1534