/* Estilos comunes para paneles web */

:root {
	--bg: #f6f7f9;
	--card: #ffffff;
	--text: #111;
	--muted: #777;
	--border: #ddd;
	--shadow: 0 1px 2px rgba(0,0,0,.05);

	--primary: #007bff;
	--primary-hover: #0056b3;
	--secondary: #6c757d;
	--secondary-hover: #545b62;
	--danger: #dc3545;
	--success: #28a745;
}

body {
	margin: 0;
	background: var(--bg);
	color: var(--text);
	font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

#contenido {
	padding: 16px;
}

.muted { color: var(--muted); }

/* Acciones superiores (volver atrás, etc.) */
.top-actions {
	display: flex;
	gap: 12px;
	margin-bottom: 16px;
	flex-wrap: wrap;
}

.btn-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	background: var(--primary);
	color: #fff;
	text-decoration: none;
	border-radius: 10px;
	font-size: 13px;
	border: 1px solid rgba(0,0,0,.05);
}
.btn-link:hover { background: var(--primary-hover); }
.btn-back { background: var(--secondary); }
.btn-back:hover { background: var(--secondary-hover); }

/* Home */
.home-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.home-card { border: 1px solid var(--border); padding: 14px; border-radius: 10px; background: var(--card); box-shadow: var(--shadow); }
.home-card h3 { margin: 0 0 10px 0; font-size: 18px; }
.home-links { display: flex; flex-wrap: wrap; gap: 10px; }
.home-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 10px;
	border: 1px solid var(--border);
	border-radius: 10px;
	background: #fafafa;
	color: var(--text);
	text-decoration: none;
}
.home-link:hover { background: #f2f2f2; }
.home-link:active { transform: translateY(1px); }
.kv { margin: 6px 0; }
.kv b { display: inline-block; min-width: 180px; }
.btn { padding: 8px 10px; border: 1px solid var(--border); border-radius: 10px; background: #fff; cursor: pointer; }
.btn:disabled { opacity: .6; cursor: not-allowed; }
.btn-solid { padding: 8px 10px; border: 1px solid var(--border); border-radius: 10px; background: #111; color: #fff; cursor: pointer; }
.btn-solid:disabled { opacity: .6; cursor: not-allowed; }
.input { padding: 8px 10px; border: 1px solid var(--border); border-radius: 10px; width: 100%; max-width: 420px; }
.quick-detail { display: flex; gap: 8px; margin-top: 12px; align-items: center; flex-wrap: wrap; }

@media (max-width: 900px) { .home-grid { grid-template-columns: 1fr; } }

/* Tablas */
.table-responsive { overflow-x: auto; }

/* Log ofertas badges */
.eval-null { color: #999; font-style: italic; }
.eval-error { color: var(--danger); font-weight: bold; cursor: help; }
.eval-badge { display: inline-block; padding: 2px 6px; border-radius: 3px; font-weight: bold; font-size: 10px; margin-bottom: 2px; }
.eval-badge.ok { background: var(--success); color: #fff; }
.eval-badge.no { background: var(--danger); color: #fff; }
.eval-diff { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace; font-size: 11px; }
.eval-diff.pos { color: var(--success); }
.eval-diff.neg { color: var(--danger); }

